GtkMultiSorter

GtkMultiSorter — Combining multiple sorters

Types and Values

Object Hierarchy

    GObject
    ╰── GtkSorter
        ╰── GtkMultiSorter

Implemented Interfaces

GtkMultiSorter implements GListModel and GtkBuildable.

Includes

#include <gtk/gtk.h>

Description

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.

Functions

gtk_multi_sorter_new ()

GtkSorter *
gtk_multi_sorter_new (void);

Creates a new multi sorter.

This sorter compares items by trying each of the sorters in turn, until one returns non-zero. In particular, if no sorter has been added to it, it will always compare items as equal.

Returns

a new GtkSorter


gtk_multi_sorter_append ()

void
gtk_multi_sorter_append (GtkMultiSorter *self,
                         GtkSorter *sorter);

Add sorter to self to use for sorting at the end. self will consult all existing sorters before it will sort with the given sorter .

Parameters

self

a GtkMultiSorter

 

sorter

a sorter to add.

[transfer full]

gtk_multi_sorter_remove ()

void
gtk_multi_sorter_remove (GtkMultiSorter *self,
                         guint position);

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

If position is larger than the number of sorters, nothing happens.

Parameters

self

a GtkMultiSorter

 

position

position of sorter to remove

 

Types and Values

GtkMultiSorter

typedef struct _GtkMultiSorter GtkMultiSorter;