Class
GtkSortListModel
Description [src]
final class Gtk.SortListModel : GObject.Object {
/* No available fields */
}
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
gtk_sort_list_model_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.
Constructors
gtk_sort_list_model_new
Creates a new sort list model that uses the sorter
to sort model
.
Instance methods
gtk_sort_list_model_get_incremental
Returns whether incremental sorting is enabled.
gtk_sort_list_model_get_model
Gets the model currently sorted or NULL
if none.
gtk_sort_list_model_get_pending
Estimates progress of an ongoing sorting operation.
gtk_sort_list_model_get_sorter
Gets the sorter that is used to sort self
.
gtk_sort_list_model_set_incremental
Sets the sort model to do an incremental sort.
gtk_sort_list_model_set_model
Sets the model to be sorted.
gtk_sort_list_model_set_sorter
Sets a new sorter on self
.
Methods inherited from GListModel (5)
g_list_model_get_item
Get the item at position
.
Available since: 2.44
g_list_model_get_item_type
Gets the type of the items in list
.
Available since: 2.44
g_list_model_get_n_items
Gets the number of items in list
.
Available since: 2.44
g_list_model_get_object
Get the item at position
.
Available since: 2.44
g_list_model_items_changed
Emits the GListModel::items-changed
signal on list
.
Available since: 2.44
Properties
Gtk.SortListModel:incremental
If the model should sort items incrementally.
Gtk.SortListModel:item-type
The type of items. See g_list_model_get_item_type()
.
Available since: 4.8
Gtk.SortListModel:model
The model being sorted.
Gtk.SortListModel:pending
Estimate of unsorted items remaining.
Gtk.SortListModel:sorter
The sorter for this model.
Signals
Signals inherited from GObject (1)
GObject.Object::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.
Signals inherited from GListModel (1)
Gio.ListModel::items-changed
This signal is emitted whenever items were added to or removed
from list
. At position
, removed
items were removed and added
items were added in their place.
Available since: 2.44