Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gtktreemodelfilter.h
Go to the documentation of this file.
1/* gtktreemodelfilter.h
2 * Copyright (C) 2000,2001 Red Hat, Inc., Jonathan Blandford <jrb@redhat.com>
3 * Copyright (C) 2001-2003 Kristian Rietveld <kris@gtk.org>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public
16 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#pragma once
20
21#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
22#error "Only <gtk/gtk.h> can be included directly."
23#endif
24
26
28
29#define GTK_TYPE_TREE_MODEL_FILTER (gtk_tree_model_filter_get_type ())
30#define GTK_TREE_MODEL_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TREE_MODEL_FILTER, GtkTreeModelFilter))
31#define GTK_TREE_MODEL_FILTER_CLASS(vtable) (G_TYPE_CHECK_CLASS_CAST ((vtable), GTK_TYPE_TREE_MODEL_FILTER, GtkTreeModelFilterClass))
32#define GTK_IS_TREE_MODEL_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TREE_MODEL_FILTER))
33#define GTK_IS_TREE_MODEL_FILTER_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), GTK_TYPE_TREE_MODEL_FILTER))
34#define GTK_TREE_MODEL_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TREE_MODEL_FILTER, GtkTreeModelFilterClass))
35
36/**
37 * GtkTreeModelFilterVisibleFunc:
38 * @model: the child model of the `GtkTreeModelFilter`
39 * @iter: a `GtkTreeIter` pointing to the row in @model whose visibility
40 * is determined
41 * @data: (closure): user data given to gtk_tree_model_filter_set_visible_func()
42 *
43 * A function which decides whether the row indicated by @iter is visible.
44 *
45 * Returns: Whether the row indicated by @iter is visible.
46 */
48 GtkTreeIter *iter,
49 gpointer data);
50
51/**
52 * GtkTreeModelFilterModifyFunc:
53 * @model: the `GtkTreeModelFilter`
54 * @iter: a `GtkTreeIter` pointing to the row whose display values are determined
55 * @value: (out caller-allocates): A `GValue` which is already initialized for
56 * with the correct type for the column @column.
57 * @column: the column whose display value is determined
58 * @data: (closure): user data given to gtk_tree_model_filter_set_modify_func()
59 *
60 * A function which calculates display values from raw values in the model.
61 * It must fill @value with the display value for the column @column in the
62 * row indicated by @iter.
63 *
64 * Since this function is called for each data access, it’s not a
65 * particularly efficient operation.
66 */
67
69 GtkTreeIter *iter,
71 int column,
72 gpointer data);
73
76typedef struct _GtkTreeModelFilterPrivate GtkTreeModelFilterPrivate;
77
85
87{
89
91 GtkTreeModel *child_model,
92 GtkTreeIter *iter);
93 void (* modify) (GtkTreeModelFilter *self,
94 GtkTreeModel *child_model,
95 GtkTreeIter *iter,
97 int column);
98
99 /*< private >*/
100
102};
103
104/* base */
107GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
109 GtkTreePath *root);
110GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
113 gpointer data,
114 GDestroyNotify destroy);
115GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
117 int n_columns,
118 GType *types,
120 gpointer data,
121 GDestroyNotify destroy);
122GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
124 int column);
125
126GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
128
129/* conversion */
130GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
132 GtkTreeIter *filter_iter,
133 GtkTreeIter *child_iter);
134GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
136 GtkTreeIter *child_iter,
137 GtkTreeIter *filter_iter);
138GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
140 GtkTreePath *child_path);
141GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
143 GtkTreePath *filter_path);
144
145/* extras */
146GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
148GDK_DEPRECATED_IN_4_10_FOR(GtkFilterListModel)
150
152
154
#define GDK_DEPRECATED_IN_4_10_FOR(f)
#define GDK_AVAILABLE_IN_ALL
#define G_END_DECLS
Definition gmacros.h:910
#define G_BEGIN_DECLS
Definition gmacros.h:909
#define G_GNUC_CONST
Definition gmacros.h:637
#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)
Definition gmacros.h:1400
GOBJECT_AVAILABLE_IN_ALL void g_object_unref(gpointer object)
struct _GtkTreePath GtkTreePath
struct _GtkTreeModel GtkTreeModel
GtkTreePath * gtk_tree_model_filter_convert_child_path_to_path(GtkTreeModelFilter *filter, GtkTreePath *child_path)
void gtk_tree_model_filter_clear_cache(GtkTreeModelFilter *filter)
GDK_AVAILABLE_IN_ALL GType gtk_tree_model_filter_get_type(void) G_GNUC_CONST
struct _GtkTreeModelFilterPrivate GtkTreeModelFilterPrivate
void gtk_tree_model_filter_convert_iter_to_child_iter(GtkTreeModelFilter *filter, GtkTreeIter *child_iter, GtkTreeIter *filter_iter)
void gtk_tree_model_filter_set_modify_func(GtkTreeModelFilter *filter, int n_columns, GType *types, GtkTreeModelFilterModifyFunc func, gpointer data, GDestroyNotify destroy)
GtkTreePath * gtk_tree_model_filter_convert_path_to_child_path(GtkTreeModelFilter *filter, GtkTreePath *filter_path)
void(* GtkTreeModelFilterModifyFunc)(GtkTreeModel *model, GtkTreeIter *iter, GValue *value, int column, gpointer data)
GtkTreeModel * gtk_tree_model_filter_get_model(GtkTreeModelFilter *filter)
void gtk_tree_model_filter_refilter(GtkTreeModelFilter *filter)
void gtk_tree_model_filter_set_visible_func(GtkTreeModelFilter *filter, GtkTreeModelFilterVisibleFunc func, gpointer data, GDestroyNotify destroy)
gboolean(* GtkTreeModelFilterVisibleFunc)(GtkTreeModel *model, GtkTreeIter *iter, gpointer data)
GtkTreeModel * gtk_tree_model_filter_new(GtkTreeModel *child_model, GtkTreePath *root)
gboolean gtk_tree_model_filter_convert_child_iter_to_iter(GtkTreeModelFilter *filter, GtkTreeIter *filter_iter, GtkTreeIter *child_iter)
void gtk_tree_model_filter_set_visible_column(GtkTreeModelFilter *filter, int column)
gsize GType
Definition gtype.h:427
gint gboolean
Definition gtypes.h:56
void * gpointer
Definition gtypes.h:109
void(* GDestroyNotify)(gpointer data)
Definition gtypes.h:140
int value
Definition lsqlite3.c:2155
gboolean(* visible)(GtkTreeModelFilter *self, GtkTreeModel *child_model, GtkTreeIter *iter)
void(* modify)(GtkTreeModelFilter *self, GtkTreeModel *child_model, GtkTreeIter *iter, GValue *value, int column)
GtkTreeModelFilterPrivate * priv