SortListModel
A GListModel
that sorts the elements of an underlying model according to a GtkSorter
.
The model is a stable sort. If two items compare equal according to the sorter, the one that appears first in the original model will also appear first after sorting. Note that if you change the sorter, the previous order will have no influence on the new order. If you want that, consider using a GtkMultiSorter
and appending the previous sorter to it.
The model can be set up to do incremental sorting, so that sorting long lists doesn't block the UI. See method@Gtk.SortListModel.set_incremental for details.
GtkSortListModel
is a generic model and because of that it cannot take advantage of any external knowledge when sorting. If you run into performance issues with GtkSortListModel
, it is strongly recommended that you write your own sorting list model.
GtkSortListModel
allows sorting the items into sections. It implements GtkSectionModel
and when property@Gtk.SortListModel:section-sorter is set, it will sort all items with that sorter and items comparing equal with it will be put into the same section. The property@Gtk.SortListModel:sorter will then be used to sort items inside their sections.
Skipped during bindings generation
method
item-type
: Property has no getter nor settermethod
n-items
: Property has no getter nor setter
Constructors
Properties
If the model should sort items incrementally.
The section sorter for this model, if one is set.
Functions
Emitted when the start-of-section state of some of the items in @model changes.
Returns whether incremental sorting is enabled.
Estimates progress of an ongoing sorting operation.
Gets the section sorter that is used to sort items of @self into sections.
This function emits the signal@Gtk.SectionModel::sections-changed signal to notify about changes to sections.
Sets the sort model to do an incremental sort.
Sets a new section sorter on @self.