~canonical-dx-team/ubuntu/maverick/gtk+2.0/menuproxy

« back to all changes in this revision

Viewing changes to docs/reference/gtk/xml/gtktreestore.xml

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2007-05-04 12:24:25 UTC
  • mfrom: (1.1.21 upstream)
  • Revision ID: james.westby@ubuntu.com-20070504122425-0m8midgzrp40y8w2
Tags: 2.10.12-1ubuntu1
* Sync with Debian
* New upstream version:
  Fixed bugs:
  - 379414 file chooser warnings when changing path in the entry
  - 418585 GtkFileChooserDefault sizing code is not DPI independent
  - 419568 Crash in search if start with special letter
  - 435062 build dies with icon cache validation
  - 379399 Segfault to call gtk_print_operation_run twice.
  - 387889 cups backend has problems when there are too many printers
  - 418531 invalid read to gtkicontheme.c gtk_icon_theme_lookup_icon...
  - 423916 crash in color scheme code
  - 424042 Segmentation fault while quickly pressing Alt+arrows
  - 415260 Protect against negative indices when setting values in G...
  - 419171 XGetVisualInfo() may not set nxvisuals
  - 128852 Gdk cursors don't look good on win32
  - 344657 Ctrl-H doesn't toggle "Show Hidden Files" setting
  - 345345 PrintOperation::paginate is not emitted for class handler
  - 347567 GtkPrintOperation::end-print is not emitted if it's cance...
  - 369112 gtk_ui_manager_add_ui should accept unnamed separator
  - 392015 Selected menu item invisible on Windows Vista
  - 399253 MS-Windows Theme Bottom Tab placement rendering glitches
  - 399425 gtk_input_dialog_fill_axes() adds child to gtkscrolledwin...
  - 403251 [patch] little memory leak in GtkPrintJob
  - 403267 [patch] memory leak in GtkPageSetupUnixDialog
  - 403470 MS-Windows Theme tab placement other than on top leaks a ...
  - 404506 Windows system fonts that have multi-byte font names cann...
  - 405089 Incorrect window placement for GtkEventBox private window
  - 405515 Minor leak in gtkfilesystemmodel.c
  - 405539 gdk_pixbuf_save() for PNG saver can return FALSE without ...
  - 415681 gdk_window_clear_area includes an extra line and column o...
  - 418219 GtkRecentChooser should apply filter before sorting and c...
  - 418403 Scroll to printer after selecting it from settings
  - 421985 _gtk_print_operation_platform_backend_launch_preview
  - 421990 gtk_print_job_get_surface
  - 421993 gtk_print_operation_init
  - 423064 Conditional jump or move depends on uninitialised value(s...
  - 423722 Fix printing header in gtk-demo
  - 424168 gtk_print_operation_run on async preview
  - 425655 Don't install gtk+-unix-print-2.0.pc on non-UNIX platforms
  - 425786 GDK segfaults if XineramaQueryScreens fails
  - 428665 Lpr Backend gets stuck in infinite loop during gtk_enumer...
  - 429902 GtkPrintOperation leaks cairo contextes
  - 431997 First delay of GdkPixbufAnimationIter is wrong
  - 433242 Inconsistent scroll arrow position calculations
  - 433972 Placing gtk.Expander inside a gtk.TextView() changes gtk....
  - 434261 _gtk_toolbar_elide_underscores incorrectly handles some s...
  - 383354 ctrl-L should make 'Location' entry disappear
  - 418673 gtk_recent_manager_add_item
  - 429732 gtk_accel_group_finalize accesses invalid memory
  - 435028 WM_CLIENT_LEADER is wrong on the leader_window
  - 431067 Background of the header window is not updated
  - 338843 add recent files support inside the ui manager
  - 148535 add drop shadow to menus, tooltips, etc. under Windows XP
* debian/control.in:
  - Conflicts on ubuntulooks (<= 0.9.11-1)
* debian/patches/15_default-fallback-icon-theme.patch:
  - patch from Debian, fallback on gnome icon theme

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<refentry id="GtkTreeStore">
 
2
<refmeta>
 
3
<refentrytitle role="top_of_page">GtkTreeStore</refentrytitle>
 
4
<manvolnum>3</manvolnum>
 
5
<refmiscinfo>GTK Library</refmiscinfo>
 
6
</refmeta>
 
7
 
 
8
<refnamediv>
 
9
<refname>GtkTreeStore</refname>
 
10
<refpurpose>A tree-like data structure that can be used with the <link linkend="GtkTreeView"><type>GtkTreeView</type></link></refpurpose>
 
11
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
 
12
</refnamediv>
 
13
 
 
14
<refsynopsisdiv role="synopsis">
 
15
<title role="synopsis.title">Synopsis</title>
 
16
 
 
17
<synopsis>
 
18
 
 
19
#include &lt;gtk/gtk.h&gt;
 
20
 
 
21
 
 
22
                    <link linkend="GtkTreeStore-struct">GtkTreeStore</link>;
 
23
<link linkend="GtkTreeStore">GtkTreeStore</link>*       <link linkend="gtk-tree-store-new">gtk_tree_store_new</link>                  (<link linkend="gint">gint</link> n_columns,
 
24
                                                         ...);
 
25
<link linkend="GtkTreeStore">GtkTreeStore</link>*       <link linkend="gtk-tree-store-newv">gtk_tree_store_newv</link>                 (<link linkend="gint">gint</link> n_columns,
 
26
                                                         <link linkend="GType">GType</link> *types);
 
27
<link linkend="void">void</link>                <link linkend="gtk-tree-store-set-column-types">gtk_tree_store_set_column_types</link>     (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
28
                                                         <link linkend="gint">gint</link> n_columns,
 
29
                                                         <link linkend="GType">GType</link> *types);
 
30
<link linkend="void">void</link>                <link linkend="gtk-tree-store-set-value">gtk_tree_store_set_value</link>            (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
31
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
32
                                                         <link linkend="gint">gint</link> column,
 
33
                                                         <link linkend="GValue">GValue</link> *value);
 
34
<link linkend="void">void</link>                <link linkend="gtk-tree-store-set">gtk_tree_store_set</link>                  (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
35
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
36
                                                         ...);
 
37
<link linkend="void">void</link>                <link linkend="gtk-tree-store-set-valist">gtk_tree_store_set_valist</link>           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
38
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
39
                                                         <link linkend="va-list">va_list</link> var_args);
 
40
<link linkend="gboolean">gboolean</link>            <link linkend="gtk-tree-store-remove">gtk_tree_store_remove</link>               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
41
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);
 
42
<link linkend="void">void</link>                <link linkend="gtk-tree-store-insert">gtk_tree_store_insert</link>               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
43
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
44
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
45
                                                         <link linkend="gint">gint</link> position);
 
46
<link linkend="void">void</link>                <link linkend="gtk-tree-store-insert-before">gtk_tree_store_insert_before</link>        (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
47
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
48
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
49
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *sibling);
 
50
<link linkend="void">void</link>                <link linkend="gtk-tree-store-insert-after">gtk_tree_store_insert_after</link>         (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
51
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
52
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
53
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *sibling);
 
54
<link linkend="void">void</link>                <link linkend="gtk-tree-store-insert-with-values">gtk_tree_store_insert_with_values</link>   (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
55
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
56
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
57
                                                         <link linkend="gint">gint</link> position,
 
58
                                                         ...);
 
59
<link linkend="void">void</link>                <link linkend="gtk-tree-store-insert-with-valuesv">gtk_tree_store_insert_with_valuesv</link>  (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
60
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
61
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
62
                                                         <link linkend="gint">gint</link> position,
 
63
                                                         <link linkend="gint">gint</link> *columns,
 
64
                                                         <link linkend="GValue">GValue</link> *values,
 
65
                                                         <link linkend="gint">gint</link> n_values);
 
66
<link linkend="void">void</link>                <link linkend="gtk-tree-store-prepend">gtk_tree_store_prepend</link>              (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
67
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
68
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent);
 
69
<link linkend="void">void</link>                <link linkend="gtk-tree-store-append">gtk_tree_store_append</link>               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
70
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
71
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent);
 
72
<link linkend="gboolean">gboolean</link>            <link linkend="gtk-tree-store-is-ancestor">gtk_tree_store_is_ancestor</link>          (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
73
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
74
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *descendant);
 
75
<link linkend="gint">gint</link>                <link linkend="gtk-tree-store-iter-depth">gtk_tree_store_iter_depth</link>           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
76
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);
 
77
<link linkend="void">void</link>                <link linkend="gtk-tree-store-clear">gtk_tree_store_clear</link>                (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store);
 
78
<link linkend="gboolean">gboolean</link>            <link linkend="gtk-tree-store-iter-is-valid">gtk_tree_store_iter_is_valid</link>        (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
79
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);
 
80
<link linkend="void">void</link>                <link linkend="gtk-tree-store-reorder">gtk_tree_store_reorder</link>              (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
81
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
82
                                                         <link linkend="gint">gint</link> *new_order);
 
83
<link linkend="void">void</link>                <link linkend="gtk-tree-store-swap">gtk_tree_store_swap</link>                 (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
84
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *a,
 
85
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *b);
 
86
<link linkend="void">void</link>                <link linkend="gtk-tree-store-move-before">gtk_tree_store_move_before</link>          (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
87
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
88
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *position);
 
89
<link linkend="void">void</link>                <link linkend="gtk-tree-store-move-after">gtk_tree_store_move_after</link>           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
90
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
91
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *position);
 
92
 
 
93
 
 
94
</synopsis>
 
95
</refsynopsisdiv>
 
96
 
 
97
<refsect1 role="object_hierarchy">
 
98
<title role="object_hierarchy.title">Object Hierarchy</title>
 
99
<synopsis>
 
100
 
 
101
  <link linkend="GObject">GObject</link>
 
102
   +----GtkTreeStore
 
103
</synopsis>
 
104
 
 
105
</refsect1>
 
106
 
 
107
 
 
108
 
 
109
<refsect1 role="impl_interfaces">
 
110
<title role="impl_interfaces.title">Implemented Interfaces</title>
 
111
<para>
 
112
GtkTreeStore implements
 
113
 <link linkend="GtkTreeModel">GtkTreeModel</link>,  <link linkend="GtkTreeDragSource">GtkTreeDragSource</link>,  <link linkend="GtkTreeDragDest">GtkTreeDragDest</link> and  <link linkend="GtkTreeSortable">GtkTreeSortable</link>.</para>
 
114
 
 
115
</refsect1>
 
116
 
 
117
 
 
118
 
 
119
 
 
120
 
 
121
<refsect1 role="desc">
 
122
<title role="desc.title">Description</title>
 
123
<para>
 
124
The <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link> object is a list model for use with a <link linkend="GtkTreeView"><type>GtkTreeView</type></link>
 
125
widget.  It implements the <link linkend="GtkTreeModel"><type>GtkTreeModel</type></link> interface, and consequentialy,
 
126
can use all of the methods available there.  It also implements the
 
127
<link linkend="GtkTreeSortable"><type>GtkTreeSortable</type></link> interface so it can be sorted by the view.  Finally,
 
128
it also implements the tree <link linkend="gtktreednd">drag and
 
129
drop</link> interfaces.
 
130
 
 
131
</para>
 
132
</refsect1>
 
133
 
 
134
<refsect1 role="details">
 
135
<title role="details.title">Details</title>
 
136
<refsect2>
 
137
<title><anchor id="GtkTreeStore-struct" role="struct"/>GtkTreeStore</title>
 
138
<indexterm><primary>GtkTreeStore</primary></indexterm><programlisting>typedef struct _GtkTreeStore GtkTreeStore;</programlisting>
 
139
<para>
 
140
 
 
141
</para></refsect2>
 
142
<refsect2>
 
143
<title><anchor id="gtk-tree-store-new" role="function"/>gtk_tree_store_new ()</title>
 
144
<indexterm><primary>gtk_tree_store_new</primary></indexterm><programlisting><link linkend="GtkTreeStore">GtkTreeStore</link>*       gtk_tree_store_new                  (<link linkend="gint">gint</link> n_columns,
 
145
                                                         ...);</programlisting>
 
146
<para>
 
147
Creates a new tree store as with <parameter>n_columns</parameter> columns each of the types passed
 
148
in.  Note that only types derived from standard GObject fundamental types 
 
149
are supported. 
 
150
</para>
 
151
<para>
 
152
As an example, <literal>gtk_tree_store_new (3, G_TYPE_INT, G_TYPE_STRING,
 
153
GDK_TYPE_PIXBUF);</literal> will create a new <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link> with three columns, of type
 
154
<type>int</type>, <type>string</type> and <link linkend="GdkPixbuf"><type>GdkPixbuf</type></link> respectively.</para>
 
155
<para>
 
156
 
 
157
</para><variablelist role="params">
 
158
<varlistentry><term><parameter>n_columns</parameter>&nbsp;:</term>
 
159
<listitem><simpara> number of columns in the tree store
 
160
</simpara></listitem></varlistentry>
 
161
<varlistentry><term><parameter>...</parameter>&nbsp;:</term>
 
162
<listitem><simpara> all <link linkend="GType"><type>GType</type></link> types for the columns, from first to last
 
163
</simpara></listitem></varlistentry>
 
164
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> a new <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
165
</simpara></listitem></varlistentry>
 
166
</variablelist></refsect2>
 
167
<refsect2>
 
168
<title><anchor id="gtk-tree-store-newv" role="function"/>gtk_tree_store_newv ()</title>
 
169
<indexterm><primary>gtk_tree_store_newv</primary></indexterm><programlisting><link linkend="GtkTreeStore">GtkTreeStore</link>*       gtk_tree_store_newv                 (<link linkend="gint">gint</link> n_columns,
 
170
                                                         <link linkend="GType">GType</link> *types);</programlisting>
 
171
<para>
 
172
Non vararg creation function.  Used primarily by language bindings.</para>
 
173
<para>
 
174
 
 
175
</para><variablelist role="params">
 
176
<varlistentry><term><parameter>n_columns</parameter>&nbsp;:</term>
 
177
<listitem><simpara> number of columns in the tree store
 
178
</simpara></listitem></varlistentry>
 
179
<varlistentry><term><parameter>types</parameter>&nbsp;:</term>
 
180
<listitem><simpara> an array of <link linkend="GType"><type>GType</type></link> types for the columns, from first to last
 
181
</simpara></listitem></varlistentry>
 
182
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> a new <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
183
</simpara></listitem></varlistentry>
 
184
</variablelist></refsect2>
 
185
<refsect2>
 
186
<title><anchor id="gtk-tree-store-set-column-types" role="function"/>gtk_tree_store_set_column_types ()</title>
 
187
<indexterm><primary>gtk_tree_store_set_column_types</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_set_column_types     (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
188
                                                         <link linkend="gint">gint</link> n_columns,
 
189
                                                         <link linkend="GType">GType</link> *types);</programlisting>
 
190
<para>
 
191
This function is meant primarily for <link linkend="GObjects"><type>GObjects</type></link> that inherit from 
 
192
<link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>, and should only be used when constructing a new 
 
193
<link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.  It will not function after a row has been added, 
 
194
or a method on the <link linkend="GtkTreeModel"><type>GtkTreeModel</type></link> interface is called.</para>
 
195
<para>
 
196
 
 
197
</para><variablelist role="params">
 
198
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
199
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
200
</simpara></listitem></varlistentry>
 
201
<varlistentry><term><parameter>n_columns</parameter>&nbsp;:</term>
 
202
<listitem><simpara> Number of columns for the tree store
 
203
</simpara></listitem></varlistentry>
 
204
<varlistentry><term><parameter>types</parameter>&nbsp;:</term>
 
205
<listitem><simpara> An array of <link linkend="GType"><type>GType</type></link> types, one for each column
 
206
</simpara></listitem></varlistentry>
 
207
</variablelist></refsect2>
 
208
<refsect2>
 
209
<title><anchor id="gtk-tree-store-set-value" role="function"/>gtk_tree_store_set_value ()</title>
 
210
<indexterm><primary>gtk_tree_store_set_value</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_set_value            (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
211
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
212
                                                         <link linkend="gint">gint</link> column,
 
213
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
 
214
<para>
 
215
Sets the data in the cell specified by <parameter>iter</parameter> and <parameter>column</parameter>.
 
216
The type of <parameter>value</parameter> must be convertible to the type of the
 
217
column.</para>
 
218
<para>
 
219
 
 
220
</para><variablelist role="params">
 
221
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
222
<listitem><simpara> a <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
223
</simpara></listitem></varlistentry>
 
224
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
225
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> for the row being modified
 
226
</simpara></listitem></varlistentry>
 
227
<varlistentry><term><parameter>column</parameter>&nbsp;:</term>
 
228
<listitem><simpara> column number to modify
 
229
</simpara></listitem></varlistentry>
 
230
<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
 
231
<listitem><simpara> new value for the cell
 
232
</simpara></listitem></varlistentry>
 
233
</variablelist></refsect2>
 
234
<refsect2>
 
235
<title><anchor id="gtk-tree-store-set" role="function"/>gtk_tree_store_set ()</title>
 
236
<indexterm><primary>gtk_tree_store_set</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_set                  (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
237
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
238
                                                         ...);</programlisting>
 
239
<para>
 
240
Sets the value of one or more cells in the row referenced by <parameter>iter</parameter>.
 
241
The variable argument list should contain integer column numbers,
 
242
each column number followed by the value to be set. 
 
243
The list is terminated by a -1. For example, to set column 0 with type
 
244
<link linkend="G-TYPE-STRING:CAPS"><literal>G_TYPE_STRING</literal></link> to "Foo", you would write 
 
245
<literal>gtk_tree_store_set (store, iter, 0, "Foo", -1)</literal>.</para>
 
246
<para>
 
247
 
 
248
</para><variablelist role="params">
 
249
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
250
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
251
</simpara></listitem></varlistentry>
 
252
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
253
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> for the row being modified
 
254
</simpara></listitem></varlistentry>
 
255
<varlistentry><term><parameter>...</parameter>&nbsp;:</term>
 
256
<listitem><simpara> pairs of column number and value, terminated with -1
 
257
</simpara></listitem></varlistentry>
 
258
</variablelist></refsect2>
 
259
<refsect2>
 
260
<title><anchor id="gtk-tree-store-set-valist" role="function"/>gtk_tree_store_set_valist ()</title>
 
261
<indexterm><primary>gtk_tree_store_set_valist</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_set_valist           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
262
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
263
                                                         <link linkend="va-list">va_list</link> var_args);</programlisting>
 
264
<para>
 
265
See <link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link>; this version takes a <type>va_list</type> for
 
266
use by language bindings.</para>
 
267
<para>
 
268
 
 
269
</para><variablelist role="params">
 
270
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
271
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
272
</simpara></listitem></varlistentry>
 
273
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
274
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> for the row being modified
 
275
</simpara></listitem></varlistentry>
 
276
<varlistentry><term><parameter>var_args</parameter>&nbsp;:</term>
 
277
<listitem><simpara> <type>va_list</type> of column/value pairs
 
278
</simpara></listitem></varlistentry>
 
279
</variablelist></refsect2>
 
280
<refsect2>
 
281
<title><anchor id="gtk-tree-store-remove" role="function"/>gtk_tree_store_remove ()</title>
 
282
<indexterm><primary>gtk_tree_store_remove</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            gtk_tree_store_remove               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
283
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);</programlisting>
 
284
<para>
 
285
Removes <parameter>iter</parameter> from <parameter>tree_store</parameter>.  After being removed, <parameter>iter</parameter> is set to the
 
286
next valid row at that level, or invalidated if it previously pointed to the
 
287
last one.</para>
 
288
<para>
 
289
 
 
290
</para><variablelist role="params">
 
291
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
292
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
293
</simpara></listitem></varlistentry>
 
294
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
295
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>
 
296
</simpara></listitem></varlistentry>
 
297
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>iter</parameter> is still valid, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> if not.
 
298
</simpara></listitem></varlistentry>
 
299
</variablelist></refsect2>
 
300
<refsect2>
 
301
<title><anchor id="gtk-tree-store-insert" role="function"/>gtk_tree_store_insert ()</title>
 
302
<indexterm><primary>gtk_tree_store_insert</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_insert               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
303
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
304
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
305
                                                         <link linkend="gint">gint</link> position);</programlisting>
 
306
<para>
 
307
Creates a new row at <parameter>position</parameter>.  If parent is non-<link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the row will be
 
308
made a child of <parameter>parent</parameter>.  Otherwise, the row will be created at the toplevel.
 
309
If <parameter>position</parameter> is larger than the number of rows at that level, then the new
 
310
row will be inserted to the end of the list.  <parameter>iter</parameter> will be changed to point
 
311
to this new row.  The row will be empty after this function is called.  To
 
312
fill in values, you need to call <link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link> or
 
313
<link linkend="gtk-tree-store-set-value"><function>gtk_tree_store_set_value()</function></link>.</para>
 
314
<para>
 
315
 
 
316
</para><variablelist role="params">
 
317
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
318
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
319
</simpara></listitem></varlistentry>
 
320
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
321
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set to the new row
 
322
</simpara></listitem></varlistentry>
 
323
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
324
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
325
</simpara></listitem></varlistentry>
 
326
<varlistentry><term><parameter>position</parameter>&nbsp;:</term>
 
327
<listitem><simpara> position to insert the new row
 
328
</simpara></listitem></varlistentry>
 
329
</variablelist></refsect2>
 
330
<refsect2>
 
331
<title><anchor id="gtk-tree-store-insert-before" role="function"/>gtk_tree_store_insert_before ()</title>
 
332
<indexterm><primary>gtk_tree_store_insert_before</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_insert_before        (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
333
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
334
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
335
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *sibling);</programlisting>
 
336
<para>
 
337
Inserts a new row before <parameter>sibling</parameter>.  If <parameter>sibling</parameter> is <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the row will
 
338
be appended to <parameter>parent</parameter> 's children.  If <parameter>parent</parameter> and <parameter>sibling</parameter> are <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then
 
339
the row will be appended to the toplevel.  If both <parameter>sibling</parameter> and <parameter>parent</parameter> are
 
340
set, then <parameter>parent</parameter> must be the parent of <parameter>sibling</parameter>.  When <parameter>sibling</parameter> is set,
 
341
<parameter>parent</parameter> is optional.
 
342
</para>
 
343
<para>
 
344
<parameter>iter</parameter> will be changed to point to this new row.  The row will be empty after
 
345
this function is called.  To fill in values, you need to call
 
346
<link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link> or <link linkend="gtk-tree-store-set-value"><function>gtk_tree_store_set_value()</function></link>.</para>
 
347
<para>
 
348
 
 
349
</para><variablelist role="params">
 
350
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
351
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
352
</simpara></listitem></varlistentry>
 
353
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
354
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set to the new row
 
355
</simpara></listitem></varlistentry>
 
356
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
357
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
358
</simpara></listitem></varlistentry>
 
359
<varlistentry><term><parameter>sibling</parameter>&nbsp;:</term>
 
360
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
361
</simpara></listitem></varlistentry>
 
362
</variablelist></refsect2>
 
363
<refsect2>
 
364
<title><anchor id="gtk-tree-store-insert-after" role="function"/>gtk_tree_store_insert_after ()</title>
 
365
<indexterm><primary>gtk_tree_store_insert_after</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_insert_after         (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
366
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
367
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
368
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *sibling);</programlisting>
 
369
<para>
 
370
Inserts a new row after <parameter>sibling</parameter>.  If <parameter>sibling</parameter> is <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the row will be
 
371
prepended to <parameter>parent</parameter> 's children.  If <parameter>parent</parameter> and <parameter>sibling</parameter> are <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then
 
372
the row will be prepended to the toplevel.  If both <parameter>sibling</parameter> and <parameter>parent</parameter> are
 
373
set, then <parameter>parent</parameter> must be the parent of <parameter>sibling</parameter>.  When <parameter>sibling</parameter> is set,
 
374
<parameter>parent</parameter> is optional.
 
375
</para>
 
376
<para>
 
377
<parameter>iter</parameter> will be changed to point to this new row.  The row will be empty after
 
378
this function is called.  To fill in values, you need to call
 
379
<link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link> or <link linkend="gtk-tree-store-set-value"><function>gtk_tree_store_set_value()</function></link>.</para>
 
380
<para>
 
381
 
 
382
</para><variablelist role="params">
 
383
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
384
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
385
</simpara></listitem></varlistentry>
 
386
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
387
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set to the new row
 
388
</simpara></listitem></varlistentry>
 
389
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
390
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
391
</simpara></listitem></varlistentry>
 
392
<varlistentry><term><parameter>sibling</parameter>&nbsp;:</term>
 
393
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
394
</simpara></listitem></varlistentry>
 
395
</variablelist></refsect2>
 
396
<refsect2>
 
397
<title><anchor id="gtk-tree-store-insert-with-values" role="function" condition="since:2.10"/>gtk_tree_store_insert_with_values ()</title>
 
398
<indexterm role="2.10"><primary>gtk_tree_store_insert_with_values</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_insert_with_values   (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
399
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
400
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
401
                                                         <link linkend="gint">gint</link> position,
 
402
                                                         ...);</programlisting>
 
403
<para>
 
404
Creates a new row at <parameter>position</parameter>.  <parameter>iter</parameter> will be changed to point to this
 
405
new row.  If <parameter>position</parameter> is larger than the number of rows on the list, then
 
406
the new row will be appended to the list.  The row will be filled with
 
407
the values given to this function.
 
408
</para>
 
409
<para>
 
410
Calling
 
411
<literal>gtk_tree_store_insert_with_values (tree_store, iter, position, ...)</literal>
 
412
has the same effect as calling
 
413
<informalexample><programlisting>
 
414
gtk_tree_store_insert (tree_store, iter, position);
 
415
gtk_tree_store_set (tree_store, iter, ...);
 
416
</programlisting></informalexample>
 
417
with the different that the former will only emit a row_inserted signal,
 
418
while the latter will emit row_inserted, row_changed and if the tree store
 
419
is sorted, rows_reordered.  Since emitting the rows_reordered signal
 
420
repeatedly can affect the performance of the program,
 
421
<link linkend="gtk-tree-store-insert-with-values"><function>gtk_tree_store_insert_with_values()</function></link> should generally be preferred when
 
422
inserting rows in a sorted tree store.</para>
 
423
<para>
 
424
 
 
425
</para><variablelist role="params">
 
426
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
427
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
428
</simpara></listitem></varlistentry>
 
429
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
430
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set the new row, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
 
431
</simpara></listitem></varlistentry>
 
432
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
433
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
434
</simpara></listitem></varlistentry>
 
435
<varlistentry><term><parameter>position</parameter>&nbsp;:</term>
 
436
<listitem><simpara> position to insert the new row
 
437
</simpara></listitem></varlistentry>
 
438
<varlistentry><term><parameter>...</parameter>&nbsp;:</term>
 
439
<listitem><simpara> pairs of column number and value, terminated with -1
 
440
</simpara></listitem></varlistentry>
 
441
</variablelist><para role="since">Since  2.10
 
442
</para></refsect2>
 
443
<refsect2>
 
444
<title><anchor id="gtk-tree-store-insert-with-valuesv" role="function" condition="since:2.10"/>gtk_tree_store_insert_with_valuesv ()</title>
 
445
<indexterm role="2.10"><primary>gtk_tree_store_insert_with_valuesv</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_insert_with_valuesv  (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
446
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
447
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
448
                                                         <link linkend="gint">gint</link> position,
 
449
                                                         <link linkend="gint">gint</link> *columns,
 
450
                                                         <link linkend="GValue">GValue</link> *values,
 
451
                                                         <link linkend="gint">gint</link> n_values);</programlisting>
 
452
<para>
 
453
A variant of <link linkend="gtk-tree-store-insert-with-values"><function>gtk_tree_store_insert_with_values()</function></link> which takes
 
454
the columns and values as two arrays, instead of varargs.  This
 
455
function is mainly intended for language bindings.</para>
 
456
<para>
 
457
 
 
458
</para><variablelist role="params">
 
459
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
460
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
461
</simpara></listitem></varlistentry>
 
462
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
463
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set the new row, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
 
464
</simpara></listitem></varlistentry>
 
465
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
466
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
467
</simpara></listitem></varlistentry>
 
468
<varlistentry><term><parameter>position</parameter>&nbsp;:</term>
 
469
<listitem><simpara> position to insert the new row
 
470
</simpara></listitem></varlistentry>
 
471
<varlistentry><term><parameter>columns</parameter>&nbsp;:</term>
 
472
<listitem><simpara> an array of column numbers
 
473
</simpara></listitem></varlistentry>
 
474
<varlistentry><term><parameter>values</parameter>&nbsp;:</term>
 
475
<listitem><simpara> an array of GValues
 
476
</simpara></listitem></varlistentry>
 
477
<varlistentry><term><parameter>n_values</parameter>&nbsp;:</term>
 
478
<listitem><simpara> the length of the <parameter>columns</parameter> and <parameter>values</parameter> arrays
 
479
</simpara></listitem></varlistentry>
 
480
</variablelist><para role="since">Since  2.10
 
481
</para></refsect2>
 
482
<refsect2>
 
483
<title><anchor id="gtk-tree-store-prepend" role="function"/>gtk_tree_store_prepend ()</title>
 
484
<indexterm><primary>gtk_tree_store_prepend</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_prepend              (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
485
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
486
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent);</programlisting>
 
487
<para>
 
488
Prepends a new row to <parameter>tree_store</parameter>.  If <parameter>parent</parameter> is non-<link linkend="NULL:CAPS"><literal>NULL</literal></link>, then it will prepend
 
489
the new row before the first child of <parameter>parent</parameter>, otherwise it will prepend a row
 
490
to the top level.  <parameter>iter</parameter> will be changed to point to this new row.  The row
 
491
will be empty after this function is called.  To fill in values, you need to
 
492
call <link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link> or <link linkend="gtk-tree-store-set-value"><function>gtk_tree_store_set_value()</function></link>.</para>
 
493
<para>
 
494
 
 
495
</para><variablelist role="params">
 
496
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
497
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
498
</simpara></listitem></varlistentry>
 
499
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
500
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set to the prepended row
 
501
</simpara></listitem></varlistentry>
 
502
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
503
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
504
</simpara></listitem></varlistentry>
 
505
</variablelist></refsect2>
 
506
<refsect2>
 
507
<title><anchor id="gtk-tree-store-append" role="function"/>gtk_tree_store_append ()</title>
 
508
<indexterm><primary>gtk_tree_store_append</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_append               (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
509
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
510
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent);</programlisting>
 
511
<para>
 
512
Appends a new row to <parameter>tree_store</parameter>.  If <parameter>parent</parameter> is non-<link linkend="NULL:CAPS"><literal>NULL</literal></link>, then it will append the
 
513
new row after the last child of <parameter>parent</parameter>, otherwise it will append a row to
 
514
the top level.  <parameter>iter</parameter> will be changed to point to this new row.  The row will
 
515
be empty after this function is called.  To fill in values, you need to call
 
516
<link linkend="gtk-tree-store-set"><function>gtk_tree_store_set()</function></link> or <link linkend="gtk-tree-store-set-value"><function>gtk_tree_store_set_value()</function></link>.</para>
 
517
<para>
 
518
 
 
519
</para><variablelist role="params">
 
520
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
521
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
522
</simpara></listitem></varlistentry>
 
523
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
524
<listitem><simpara> An unset <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> to set to the appended row
 
525
</simpara></listitem></varlistentry>
 
526
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
527
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
 
528
</simpara></listitem></varlistentry>
 
529
</variablelist></refsect2>
 
530
<refsect2>
 
531
<title><anchor id="gtk-tree-store-is-ancestor" role="function"/>gtk_tree_store_is_ancestor ()</title>
 
532
<indexterm><primary>gtk_tree_store_is_ancestor</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            gtk_tree_store_is_ancestor          (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
533
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
534
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *descendant);</programlisting>
 
535
<para>
 
536
Returns <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>iter</parameter> is an ancestor of <parameter>descendant</parameter>.  That is, <parameter>iter</parameter> is the
 
537
parent (or grandparent or great-grandparent) of <parameter>descendant</parameter>.</para>
 
538
<para>
 
539
 
 
540
</para><variablelist role="params">
 
541
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
542
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
543
</simpara></listitem></varlistentry>
 
544
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
545
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>
 
546
</simpara></listitem></varlistentry>
 
547
<varlistentry><term><parameter>descendant</parameter>&nbsp;:</term>
 
548
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>
 
549
</simpara></listitem></varlistentry>
 
550
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, if <parameter>iter</parameter> is an ancestor of <parameter>descendant</parameter>
 
551
</simpara></listitem></varlistentry>
 
552
</variablelist></refsect2>
 
553
<refsect2>
 
554
<title><anchor id="gtk-tree-store-iter-depth" role="function"/>gtk_tree_store_iter_depth ()</title>
 
555
<indexterm><primary>gtk_tree_store_iter_depth</primary></indexterm><programlisting><link linkend="gint">gint</link>                gtk_tree_store_iter_depth           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
556
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);</programlisting>
 
557
<para>
 
558
Returns the depth of <parameter>iter</parameter>.  This will be 0 for anything on the root level, 1
 
559
for anything down a level, etc.</para>
 
560
<para>
 
561
 
 
562
</para><variablelist role="params">
 
563
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
564
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
565
</simpara></listitem></varlistentry>
 
566
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
567
<listitem><simpara> A valid <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>
 
568
</simpara></listitem></varlistentry>
 
569
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> The depth of <parameter>iter</parameter>
 
570
</simpara></listitem></varlistentry>
 
571
</variablelist></refsect2>
 
572
<refsect2>
 
573
<title><anchor id="gtk-tree-store-clear" role="function"/>gtk_tree_store_clear ()</title>
 
574
<indexterm><primary>gtk_tree_store_clear</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_clear                (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store);</programlisting>
 
575
<para>
 
576
Removes all rows from <parameter>tree_store</parameter></para>
 
577
<para>
 
578
 
 
579
</para><variablelist role="params">
 
580
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
581
<listitem><simpara> a <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
582
</simpara></listitem></varlistentry>
 
583
</variablelist></refsect2>
 
584
<refsect2>
 
585
<title><anchor id="gtk-tree-store-iter-is-valid" role="function" condition="since:2.2"/>gtk_tree_store_iter_is_valid ()</title>
 
586
<indexterm role="2.2"><primary>gtk_tree_store_iter_is_valid</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            gtk_tree_store_iter_is_valid        (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
587
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter);</programlisting>
 
588
<para>
 
589
WARNING: This function is slow. Only use it for debugging and/or testing
 
590
purposes.
 
591
</para>
 
592
<para>
 
593
Checks if the given iter is a valid iter for this <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.</para>
 
594
<para>
 
595
 
 
596
</para><variablelist role="params">
 
597
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
598
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.
 
599
</simpara></listitem></varlistentry>
 
600
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
601
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
602
</simpara></listitem></varlistentry>
 
603
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the iter is valid, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> if the iter is invalid.
 
604
 
 
605
</simpara></listitem></varlistentry>
 
606
</variablelist><para role="since">Since  2.2
 
607
</para></refsect2>
 
608
<refsect2>
 
609
<title><anchor id="gtk-tree-store-reorder" role="function" condition="since:2.2"/>gtk_tree_store_reorder ()</title>
 
610
<indexterm role="2.2"><primary>gtk_tree_store_reorder</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_reorder              (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
611
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *parent,
 
612
                                                         <link linkend="gint">gint</link> *new_order);</programlisting>
 
613
<para>
 
614
Reorders the children of <parameter>parent</parameter> in <parameter>tree_store</parameter> to follow the order
 
615
indicated by <parameter>new_order</parameter>. Note that this function only works with
 
616
unsorted stores.</para>
 
617
<para>
 
618
 
 
619
</para><variablelist role="params">
 
620
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
621
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.
 
622
</simpara></listitem></varlistentry>
 
623
<varlistentry><term><parameter>parent</parameter>&nbsp;:</term>
 
624
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
625
</simpara></listitem></varlistentry>
 
626
<varlistentry><term><parameter>new_order</parameter>&nbsp;:</term>
 
627
<listitem><simpara> an array of integers mapping the new position of each child
 
628
     to its old position before the re-ordering,
 
629
     i.e. <parameter>new_order</parameter><literal>[newpos] = oldpos</literal>.
 
630
</simpara></listitem></varlistentry>
 
631
</variablelist><para role="since">Since  2.2
 
632
</para></refsect2>
 
633
<refsect2>
 
634
<title><anchor id="gtk-tree-store-swap" role="function" condition="since:2.2"/>gtk_tree_store_swap ()</title>
 
635
<indexterm role="2.2"><primary>gtk_tree_store_swap</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_swap                 (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
636
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *a,
 
637
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *b);</programlisting>
 
638
<para>
 
639
Swaps <parameter>a</parameter> and <parameter>b</parameter> in the same level of <parameter>tree_store</parameter>. Note that this function
 
640
only works with unsorted stores.</para>
 
641
<para>
 
642
 
 
643
</para><variablelist role="params">
 
644
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
645
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.
 
646
</simpara></listitem></varlistentry>
 
647
<varlistentry><term><parameter>a</parameter>&nbsp;:</term>
 
648
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
649
</simpara></listitem></varlistentry>
 
650
<varlistentry><term><parameter>b</parameter>&nbsp;:</term>
 
651
<listitem><simpara> Another <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
652
</simpara></listitem></varlistentry>
 
653
</variablelist><para role="since">Since  2.2
 
654
</para></refsect2>
 
655
<refsect2>
 
656
<title><anchor id="gtk-tree-store-move-before" role="function" condition="since:2.2"/>gtk_tree_store_move_before ()</title>
 
657
<indexterm role="2.2"><primary>gtk_tree_store_move_before</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_move_before          (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
658
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
659
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *position);</programlisting>
 
660
<para>
 
661
Moves <parameter>iter</parameter> in <parameter>tree_store</parameter> to the position before <parameter>position</parameter>. <parameter>iter</parameter> and
 
662
<parameter>position</parameter> should be in the same level. Note that this function only
 
663
works with unsorted stores. If <parameter>position</parameter> is <link linkend="NULL:CAPS"><literal>NULL</literal></link>, <parameter>iter</parameter> will be
 
664
moved to the end of the level.</para>
 
665
<para>
 
666
 
 
667
</para><variablelist role="params">
 
668
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
669
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.
 
670
</simpara></listitem></varlistentry>
 
671
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
672
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
673
</simpara></listitem></varlistentry>
 
674
<varlistentry><term><parameter>position</parameter>&nbsp;:</term>
 
675
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link> or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
 
676
</simpara></listitem></varlistentry>
 
677
</variablelist><para role="since">Since  2.2
 
678
</para></refsect2>
 
679
<refsect2>
 
680
<title><anchor id="gtk-tree-store-move-after" role="function" condition="since:2.2"/>gtk_tree_store_move_after ()</title>
 
681
<indexterm role="2.2"><primary>gtk_tree_store_move_after</primary></indexterm><programlisting><link linkend="void">void</link>                gtk_tree_store_move_after           (<link linkend="GtkTreeStore">GtkTreeStore</link> *tree_store,
 
682
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *iter,
 
683
                                                         <link linkend="GtkTreeIter">GtkTreeIter</link> *position);</programlisting>
 
684
<para>
 
685
Moves <parameter>iter</parameter> in <parameter>tree_store</parameter> to the position after <parameter>position</parameter>. <parameter>iter</parameter> and
 
686
<parameter>position</parameter> should be in the same level. Note that this function only
 
687
works with unsorted stores. If <parameter>position</parameter> is <link linkend="NULL:CAPS"><literal>NULL</literal></link>, <parameter>iter</parameter> will be moved
 
688
to the start of the level.</para>
 
689
<para>
 
690
 
 
691
</para><variablelist role="params">
 
692
<varlistentry><term><parameter>tree_store</parameter>&nbsp;:</term>
 
693
<listitem><simpara> A <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>.
 
694
</simpara></listitem></varlistentry>
 
695
<varlistentry><term><parameter>iter</parameter>&nbsp;:</term>
 
696
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
697
</simpara></listitem></varlistentry>
 
698
<varlistentry><term><parameter>position</parameter>&nbsp;:</term>
 
699
<listitem><simpara> A <link linkend="GtkTreeIter"><type>GtkTreeIter</type></link>.
 
700
</simpara></listitem></varlistentry>
 
701
</variablelist><para role="since">Since  2.2
 
702
</para></refsect2>
 
703
 
 
704
</refsect1>
 
705
 
 
706
 
 
707
 
 
708
<refsect1>
 
709
<title>See Also</title>
 
710
<para>
 
711
<link linkend="GtkTreeModel"><type>GtkTreeModel</type></link>, <link linkend="GtkTreeStore"><type>GtkTreeStore</type></link>
 
712
</para>
 
713
</refsect1>
 
714
 
 
715
</refentry>