Package org.gnome.gtk

Class SortListModel<T extends GObject>

java.lang.Object
All Implemented Interfaces:
Proxy, ListModelJavaList<T>, Iterable<T>, Collection<T>, List<T>, SequencedCollection<T>, ListModel<T>, SectionModel<T>

@Generated("io.github.jwharm.JavaGI") public class SortListModel<T extends GObject> extends GObject implements ListModel<T>, SectionModel<T>
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 setIncremental(boolean) 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 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 Gtk.SortListModel:sorter will then be used to sort items inside their sections.