LibGUI: Make model sorting imperative and move order to AbstractView

Instead of SortingProxyModel having a column+order, we move that state
to AbstractView. When you click on a column header, the view tells the
model to resort the relevant column with the new order.

This is implemented in SortingProxyModel by simply walking all the
reified source/proxy mappings and resorting their row indexes.
This commit is contained in:
Andreas Kling 2020-08-16 10:44:10 +02:00
parent 370624bc37
commit e1ed71ef9e
Notes: sideshowbarker 2024-07-19 03:33:29 +09:00
15 changed files with 85 additions and 55 deletions

View file

@ -212,4 +212,11 @@ void MultiView::set_multi_select(bool multi_select)
apply_multi_select();
}
void MultiView::set_key_column_and_sort_order(int column, SortOrder sort_order)
{
for_each_view_implementation([&](auto& view) {
view.set_key_column_and_sort_order(column, sort_order);
});
}
}