1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 16:27:35 +00:00

LibGUI+Userland: Propagate errors in Model::column_name()

This commit is contained in:
Sam Atkins 2023-06-13 16:30:15 +01:00 committed by Andreas Kling
parent 94bcb5bea8
commit f33824d2e9
73 changed files with 140 additions and 146 deletions

View file

@ -58,7 +58,7 @@ void AbstractTableView::auto_resize_column(int column)
auto& model = *this->model();
int row_count = model.row_count();
int header_width = m_column_header->font().width(model.column_name(column));
int header_width = m_column_header->font().width(model.column_name(column).release_value_but_fixme_should_propagate_errors());
if (column == m_key_column && model.is_column_sortable(column))
header_width += HeaderView::sorting_arrow_width + HeaderView::sorting_arrow_offset;
@ -97,7 +97,7 @@ void AbstractTableView::update_column_sizes()
for (int column = 0; column < column_count; ++column) {
if (!column_header().is_section_visible(column))
continue;
int header_width = m_column_header->font().width(model.column_name(column));
int header_width = m_column_header->font().width(model.column_name(column).release_value_but_fixme_should_propagate_errors());
if (column == m_key_column && model.is_column_sortable(column))
header_width += HeaderView::sorting_arrow_width + HeaderView::sorting_arrow_offset;
int column_width = header_width;

View file

@ -92,7 +92,7 @@ public:
return Column::__Count;
}
virtual String column_name(int) const override { return {}; }
virtual ErrorOr<String> column_name(int) const override { return String {}; }
virtual ModelIndex index(int row, int column = 0, ModelIndex const& = ModelIndex()) const override
{

View file

@ -761,11 +761,11 @@ int FileSystemModel::column_count(ModelIndex const&) const
return Column::__Count;
}
String FileSystemModel::column_name(int column) const
ErrorOr<String> FileSystemModel::column_name(int column) const
{
switch (column) {
case Column::Icon:
return {};
return String {};
case Column::Name:
return "Name"_short_string;
case Column::Size:
@ -777,11 +777,11 @@ String FileSystemModel::column_name(int column) const
case Column::Permissions:
return "Mode"_short_string;
case Column::ModificationTime:
return "Modified"_string.release_value_but_fixme_should_propagate_errors();
return TRY("Modified"_string);
case Column::Inode:
return "Inode"_short_string;
case Column::SymlinkTarget:
return "Symlink target"_string.release_value_but_fixme_should_propagate_errors();
return TRY("Symlink target"_string);
}
VERIFY_NOT_REACHED();
}

View file

@ -127,7 +127,7 @@ public:
virtual int tree_column() const override { return Column::Name; }
virtual int row_count(ModelIndex const& = ModelIndex()) const override;
virtual int column_count(ModelIndex const& = ModelIndex()) const override;
virtual String column_name(int column) const override;
virtual ErrorOr<String> column_name(int) const override;
virtual Variant data(ModelIndex const&, ModelRole = ModelRole::Display) const override;
virtual ModelIndex parent_index(ModelIndex const&) const override;
virtual ModelIndex index(int row, int column = 0, ModelIndex const& parent = ModelIndex()) const override;

View file

@ -34,7 +34,7 @@ int FilteringProxyModel::column_count(ModelIndex const& index) const
return m_model->column_count(m_matching_indices[index.row()].index);
}
String FilteringProxyModel::column_name(int column) const
ErrorOr<String> FilteringProxyModel::column_name(int column) const
{
return m_model->column_name(column);
}

View file

@ -35,7 +35,7 @@ public:
virtual int row_count(ModelIndex const& = ModelIndex()) const override;
virtual int column_count(ModelIndex const& = ModelIndex()) const override;
virtual String column_name(int) const override;
virtual ErrorOr<String> column_name(int) const override;
virtual Variant data(ModelIndex const&, ModelRole = ModelRole::Display) const override;
virtual void invalidate() override;
virtual ModelIndex index(int row, int column = 0, ModelIndex const& parent = ModelIndex()) const override;

View file

@ -265,7 +265,7 @@ void HeaderView::paint_horizontal(Painter& painter)
bool hovered = section == m_hovered_section && model()->is_column_sortable(section);
Gfx::StylePainter::paint_button(painter, cell_rect, palette(), Gfx::ButtonStyle::Normal, pressed, hovered);
auto text = model()->column_name(section);
auto text = model()->column_name(section).release_value_but_fixme_should_propagate_errors();
auto text_rect = cell_rect.shrunken(m_table_view.horizontal_padding() * 2, 0);
if (pressed)
text_rect.translate_by(1, 1);
@ -358,7 +358,7 @@ Menu& HeaderView::ensure_context_menu()
int section_count = this->section_count();
for (int section = 0; section < section_count; ++section) {
auto& column_data = this->section_data(section);
auto name = model()->column_name(section).to_deprecated_string();
auto name = model()->column_name(section).release_value_but_fixme_should_propagate_errors().to_deprecated_string();
column_data.visibility_action = Action::create_checkable(name, [this, section](auto& action) {
set_section_visible(section, action.is_checked());
});

View file

@ -71,7 +71,7 @@ public:
return 1;
}
virtual String column_name(int index) const override
virtual ErrorOr<String> column_name(int index) const override
{
if constexpr (IsTwoDimensional)
return m_column_names[index];

View file

@ -49,7 +49,7 @@ public:
virtual int row_count(ModelIndex const& = ModelIndex()) const override { return m_array.size(); }
virtual int column_count(ModelIndex const& = ModelIndex()) const override { return m_fields.size(); }
virtual String column_name(int column) const override { return m_fields[column].column_name; }
virtual ErrorOr<String> column_name(int column) const override { return m_fields[column].column_name; }
virtual Variant data(ModelIndex const&, ModelRole = ModelRole::Display) const override;
virtual void invalidate() override;
virtual void update();

View file

@ -71,7 +71,7 @@ public:
virtual int row_count(ModelIndex const& = ModelIndex()) const = 0;
virtual int column_count(ModelIndex const& = ModelIndex()) const = 0;
virtual String column_name(int) const { return {}; }
virtual ErrorOr<String> column_name(int) const { return String {}; }
virtual Variant data(ModelIndex const&, ModelRole = ModelRole::Display) const = 0;
virtual MatchResult data_matches(ModelIndex const&, Variant const&) const { return {}; }
virtual void invalidate();

View file

@ -45,11 +45,11 @@ int RunningProcessesModel::column_count(const GUI::ModelIndex&) const
return Column::__Count;
}
String RunningProcessesModel::column_name(int column_index) const
ErrorOr<String> RunningProcessesModel::column_name(int column_index) const
{
switch (column_index) {
case Column::Icon:
return {};
return String {};
case Column::PID:
return "PID"_short_string;
case Column::UID:

View file

@ -27,7 +27,7 @@ public:
virtual int row_count(const GUI::ModelIndex&) const override;
virtual int column_count(const GUI::ModelIndex&) const override;
virtual String column_name(int column_index) const override;
virtual ErrorOr<String> column_name(int column_index) const override;
virtual GUI::Variant data(const GUI::ModelIndex&, GUI::ModelRole) const override;
void update();

View file

@ -106,7 +106,7 @@ ModelIndex SortingProxyModel::map_to_proxy(ModelIndex const& source_index) const
return create_index(proxy_row, proxy_column, &mapping);
}
String SortingProxyModel::column_name(int column) const
ErrorOr<String> SortingProxyModel::column_name(int column) const
{
return source().column_name(column);
}

View file

@ -24,7 +24,7 @@ public:
virtual int tree_column() const override { return m_source->tree_column(); }
virtual int row_count(ModelIndex const& = ModelIndex()) const override;
virtual int column_count(ModelIndex const& = ModelIndex()) const override;
virtual String column_name(int) const override;
virtual ErrorOr<String> column_name(int) const override;
virtual Variant data(ModelIndex const&, ModelRole = ModelRole::Display) const override;
virtual void invalidate() override;
virtual StringView drag_data_type() const override;

View file

@ -673,7 +673,7 @@ void TreeView::auto_resize_column(int column)
auto& model = *this->model();
int header_width = column_header().font().width(model.column_name(column));
int header_width = column_header().font().width(model.column_name(column).release_value_but_fixme_should_propagate_errors());
if (column == m_key_column && model.is_column_sortable(column))
header_width += HeaderView::sorting_arrow_width + HeaderView::sorting_arrow_offset;
int column_width = header_width;
@ -718,7 +718,7 @@ void TreeView::update_column_sizes()
continue;
if (!column_header().is_section_visible(column))
continue;
int header_width = column_header().font().width(model.column_name(column));
int header_width = column_header().font().width(model.column_name(column).release_value_but_fixme_should_propagate_errors());
if (column == m_key_column && model.is_column_sortable(column))
header_width += HeaderView::sorting_arrow_width + HeaderView::sorting_arrow_offset;
int column_width = header_width;
@ -739,7 +739,7 @@ void TreeView::update_column_sizes()
set_column_width(column, max(this->column_width(column), column_width));
}
int tree_column_header_width = column_header().font().width(model.column_name(tree_column));
int tree_column_header_width = column_header().font().width(model.column_name(tree_column).release_value_but_fixme_should_propagate_errors());
if (tree_column == m_key_column && model.is_column_sortable(tree_column))
tree_column_header_width += HeaderView::sorting_arrow_width + HeaderView::sorting_arrow_offset;
int tree_column_width = tree_column_header_width;