summaryrefslogtreecommitdiff
path: root/docs/reference/gtk/tmpl/gtktreemodelfilter.sgml
blob: cda44ec3254ed7b51b7325678965562b411b3306 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
<!-- ##### SECTION Title ##### -->
GtkTreeModelFilter

<!-- ##### SECTION Short_Description ##### -->
A GtkTreeModel which hides parts of an underlying tree model

<!-- ##### SECTION Long_Description ##### -->
<para>
A #GtkTreeModelFilter is a tree model which wraps another tree model,
and can do the following things:
<itemizedlist>
<listitem><para>
Filter specific rows, based on data from a "visible column", a column
storing booleans indicating whether the row should be filtered or not,
or based on the return value of a "visible function", which gets a
model, iter and user_data and returns a boolean indicating whether the
row should be filtered or not.
</para></listitem>
<listitem><para>
Modify the "appearance" of the model, using a modify function. 
This is extremely powerful and allows for just changing
some values and also for creating a completely different model based on
the given child model. 
</para></listitem>
<listitem><para>
Set a different root node, also known as a "virtual root". You can pass in 
a #GtkTreePath indicating the root node for the filter at construction time.
</para></listitem>
</itemizedlist>
</para>

<!-- ##### SECTION See_Also ##### -->
<para>
#GtkTreeModelSort
</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### SECTION Image ##### -->


<!-- ##### STRUCT GtkTreeModelFilter ##### -->
<para>
The GtkTreeModelFilter struct contains only private fields.
</para>


<!-- ##### ARG GtkTreeModelFilter:child-model ##### -->
<para>

</para>

<!-- ##### ARG GtkTreeModelFilter:virtual-root ##### -->
<para>

</para>

<!-- ##### USER_FUNCTION GtkTreeModelFilterVisibleFunc ##### -->
<para>
A function which decides whether the row indicated by @iter is visible.
</para>

@model: the child model of the #GtkTreeModelFilter
@iter: a #GtkTreeIter pointing to the row in @model whose visibility 
   is determined
@data: user data given to gtk_tree_model_filter_set_visible_func()
@Returns: Whether the row indicated by @iter is visible.


<!-- ##### USER_FUNCTION GtkTreeModelFilterModifyFunc ##### -->
<para>
A function which calculates display values from raw values in the model.
It must fill @value with the display value for the column @column in the 
row indicated by @iter. 
</para>
<para>
Since this function is called for each data access, it's not a
particularly efficient operation.
</para>

@model: the #GtkTreeModelFilter
@iter: a #GtkTreeIter pointing to the row whose display values are determined
@value: A #GValue which is already initialized for with the correct type for 
  the column @column.
@column: the column whose display value is determined
@data: user data given to gtk_tree_model_filter_set_modify_func()


<!-- ##### FUNCTION gtk_tree_model_filter_new ##### -->
<para>

</para>

@child_model: 
@root: 
@Returns: 


<!-- ##### FUNCTION gtk_tree_model_filter_set_visible_func ##### -->
<para>

</para>

@filter: 
@func: 
@data: 
@destroy: 


<!-- ##### FUNCTION gtk_tree_model_filter_set_modify_func ##### -->
<para>

</para>

@filter: 
@n_columns: 
@types: 
@func: 
@data: 
@destroy: 


<!-- ##### FUNCTION gtk_tree_model_filter_set_visible_column ##### -->
<para>

</para>

@filter: 
@column: 


<!-- ##### FUNCTION gtk_tree_model_filter_get_model ##### -->
<para>

</para>

@filter: 
@Returns: 


<!-- ##### FUNCTION gtk_tree_model_filter_convert_child_iter_to_iter ##### -->
<para>

</para>

@filter: 
@filter_iter: 
@child_iter: 
@Returns: 


<!-- ##### FUNCTION gtk_tree_model_filter_convert_iter_to_child_iter ##### -->
<para>

</para>

@filter: 
@child_iter: 
@filter_iter: 


<!-- ##### FUNCTION gtk_tree_model_filter_convert_child_path_to_path ##### -->
<para>

</para>

@filter: 
@child_path: 
@Returns: 


<!-- ##### FUNCTION gtk_tree_model_filter_convert_path_to_child_path ##### -->
<para>

</para>

@filter: 
@filter_path: 
@Returns: 


<!-- ##### FUNCTION gtk_tree_model_filter_refilter ##### -->
<para>

</para>

@filter: 


<!-- ##### FUNCTION gtk_tree_model_filter_clear_cache ##### -->
<para>

</para>

@filter: