### Class

# GtkMultiSorter

#### Description [src]

    final class Gtk.MultiSorter : Gtk.Sorter
      implements Gio.ListModel, Gtk.Buildable {
      /* No available fields */
    }

`GtkMultiSorter` combines multiple sorters by trying them in turn.

If the first sorter compares two items as equal, the second is tried next, and so on.

#### Hierarchy

#### Ancestors

- GtkSorter
- GObject

#### Implements

- GListModel
- GtkBuildable

#### Constructors

###### gtk_multi_sorter_new

Creates a new multi sorter.

#### Instance methods

###### gtk_multi_sorter_append

Add `sorter` to `self` to use for sorting at the end.

###### gtk_multi_sorter_remove

Removes the sorter at the given `position` from the list of sorter used by `self`.

##### Methods inherited from GtkSorter (3)

###### gtk_sorter_changed

Notifies all users of the sorter that it has changed.

###### gtk_sorter_compare

Compares two given items according to the sort order implemented by the sorter.

###### gtk_sorter_get_order

Gets the order that `self` conforms to.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GListModel (5)

###### g_list_model_get_item

Get the item at `position`.

since: 2.44

###### g_list_model_get_item_type

Gets the type of the items in `list`.

since: 2.44

###### g_list_model_get_n_items

Gets the number of items in `list`.

since: 2.44

###### g_list_model_get_object

Get the item at `position`.

since: 2.44

###### g_list_model_items_changed

Emits the `GListModel::items-changed` signal on `list`.

since: 2.44

##### Methods inherited from GtkBuildable (1)

###### gtk_buildable_get_buildable_id

Gets the ID of the `buildable` object.

#### Properties

###### Gtk.MultiSorter:item-type

The type of items. See `g_list_model_get_item_type()`.

since: 4.8

###### Gtk.MultiSorter:n-items

The number of items. See `g_list_model_get_n_items()`.

since: 4.8

#### Signals

##### Signals inherited from GtkSorter (1)

###### GtkSorter::changed

Emitted whenever the sorter changed.

##### Signals inherited from GObject (1)

###### GObject::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)

###### GListModel::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.

since: 2.44

#### Class structure

    struct GtkMultiSorterClass {
      GtkSorterClass parent_class;

    }

No description available.

###### Class members

`parent_class: GtkSorterClass`
  No description available.