GtkMultiFilter — Combining multiple filters
void | gtk_multi_filter_append () |
void | gtk_multi_filter_remove () |
GtkAnyFilter * | gtk_any_filter_new () |
GtkEveryFilter * | gtk_every_filter_new () |
GObject ╰── GtkFilter ╰── GtkMultiFilter ├── GtkAnyFilter ╰── GtkEveryFilter
GtkMultiFilter implements GListModel and GtkBuildable.
GtkAnyFilter implements GListModel and GtkBuildable.
GtkEveryFilter implements GListModel and GtkBuildable.
#include <gtk/gtk.h>
GtkMultiFilter is the base type that implements support for handling multiple filters.
GtkAnyFilter is a subclass of GtkMultiFilter that matches an item when at least one of its filters matches.
GtkEveryFilter is a subclass of GtkMultiFilter that matches an item when each of its filters matches.
void gtk_multi_filter_append (GtkMultiFilter *self
,GtkFilter *filter
);
Adds a filter
to self
to use for matching.
self | ||
filter | A new filter to use. | [transfer full] |
void gtk_multi_filter_remove (GtkMultiFilter *self
,guint position
);
Removes the filter at the given position
from the list of filters used by self
. If position
is larger than the number of filters, nothing happens and the function returns.
self | ||
position | position of filter to remove |
GtkAnyFilter *
gtk_any_filter_new (void
);
Creates a new empty "any" filter. Use gtk_multi_filter_append()
to add filters to it.
This filter matches an item if any of the filters added to it matches the item. In particular, this means that if no filter has been added to it, the filter matches no item.
a new GtkAnyFilter
GtkEveryFilter *
gtk_every_filter_new (void
);
Creates a new empty "every" filter. Use gtk_multi_filter_append()
to add filters to it.
This filter matches an item if each of the filters added to it matches the item. In particular, this means that if no filter has been added to it, the filter matches every item.
a new GtkEveryFilter
typedef struct _GtkMultiFilter GtkMultiFilter;
typedef struct _GtkAnyFilter GtkAnyFilter;
typedef struct _GtkEveryFilter GtkEveryFilter;
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk4/4.0/GtkMultiFilter.html