~inkscape.dev/inkscape-devlibs/devlibs-gtk3

« back to all changes in this revision

Viewing changes to share/gtk-doc/html/gtk2/GtkTreeSortable.html

  • Committer: JazzyNico
  • Date: 2013-01-21 10:11:05 UTC
  • Revision ID: nicoduf@yahoo.fr-20130121101105-i8d8slkq9ng4olx8
Adding gtk2 libraries.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
2
<html>
 
3
<head>
 
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 
5
<title>GtkTreeSortable</title>
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
 
7
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
 
8
<link rel="up" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets">
 
9
<link rel="prev" href="GtkIconView.html" title="GtkIconView">
 
10
<link rel="next" href="GtkTreeModelSort.html" title="GtkTreeModelSort">
 
11
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 
12
<link rel="stylesheet" href="style.css" type="text/css">
 
13
</head>
 
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
 
16
<tr valign="middle">
 
17
<td><a accesskey="p" href="GtkIconView.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 
18
<td><a accesskey="u" href="TreeWidgetObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 
19
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 
20
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
 
21
<td><a accesskey="n" href="GtkTreeModelSort.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 
22
</tr>
 
23
<tr><td colspan="5" class="shortcuts">
 
24
<a href="#GtkTreeSortable.synopsis" class="shortcut">Top</a>
 
25
                   | 
 
26
                  <a href="#GtkTreeSortable.description" class="shortcut">Description</a>
 
27
                   | 
 
28
                  <a href="#GtkTreeSortable.object-hierarchy" class="shortcut">Object Hierarchy</a>
 
29
                   | 
 
30
                  <a href="#GtkTreeSortable.prerequisites" class="shortcut">Prerequisites</a>
 
31
                   | 
 
32
                  <a href="#GtkTreeSortable.implementations" class="shortcut">Known Implementations</a>
 
33
                   | 
 
34
                  <a href="#GtkTreeSortable.signals" class="shortcut">Signals</a>
 
35
</td></tr>
 
36
</table>
 
37
<div class="refentry">
 
38
<a name="GtkTreeSortable"></a><div class="titlepage"></div>
 
39
<div class="refnamediv"><table width="100%"><tr>
 
40
<td valign="top">
 
41
<h2><span class="refentrytitle"><a name="GtkTreeSortable.top_of_page"></a>GtkTreeSortable</span></h2>
 
42
<p>GtkTreeSortable — The interface for sortable models used by GtkTreeView</p>
 
43
</td>
 
44
<td valign="top" align="right"></td>
 
45
</tr></table></div>
 
46
<div class="refsynopsisdiv">
 
47
<a name="GtkTreeSortable.synopsis"></a><h2>Synopsis</h2>
 
48
<pre class="synopsis">
 
49
#include &lt;gtk/gtk.h&gt;
 
50
 
 
51
                    <a class="link" href="GtkTreeSortable.html#GtkTreeSortable-struct" title="GtkTreeSortable">GtkTreeSortable</a>;
 
52
struct              <a class="link" href="GtkTreeSortable.html#GtkTreeSortableIface" title="struct GtkTreeSortableIface">GtkTreeSortableIface</a>;
 
53
<span class="returnvalue">gint</span>                (<a class="link" href="GtkTreeSortable.html#GtkTreeIterCompareFunc" title="GtkTreeIterCompareFunc ()">*GtkTreeIterCompareFunc</a>)           (<em class="parameter"><code><a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a> *model</code></em>,
 
54
                                                         <em class="parameter"><code><a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> *a</code></em>,
 
55
                                                         <em class="parameter"><code><a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> *b</code></em>,
 
56
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);
 
57
<span class="returnvalue">void</span>                <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-sort-column-changed" title="gtk_tree_sortable_sort_column_changed ()">gtk_tree_sortable_sort_column_changed</a>
 
58
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>);
 
59
<span class="returnvalue">gboolean</span>            <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-get-sort-column-id" title="gtk_tree_sortable_get_sort_column_id ()">gtk_tree_sortable_get_sort_column_id</a>
 
60
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
61
                                                         <em class="parameter"><code><span class="type">gint</span> *sort_column_id</code></em>,
 
62
                                                         <em class="parameter"><code><a class="link" href="gtk2-Standard-Enumerations.html#GtkSortType" title="enum GtkSortType"><span class="type">GtkSortType</span></a> *order</code></em>);
 
63
<span class="returnvalue">void</span>                <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-set-sort-column-id" title="gtk_tree_sortable_set_sort_column_id ()">gtk_tree_sortable_set_sort_column_id</a>
 
64
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
65
                                                         <em class="parameter"><code><span class="type">gint</span> sort_column_id</code></em>,
 
66
                                                         <em class="parameter"><code><a class="link" href="gtk2-Standard-Enumerations.html#GtkSortType" title="enum GtkSortType"><span class="type">GtkSortType</span></a> order</code></em>);
 
67
<span class="returnvalue">void</span>                <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-set-sort-func" title="gtk_tree_sortable_set_sort_func ()">gtk_tree_sortable_set_sort_func</a>     (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
68
                                                         <em class="parameter"><code><span class="type">gint</span> sort_column_id</code></em>,
 
69
                                                         <em class="parameter"><code><a class="link" href="GtkTreeSortable.html#GtkTreeIterCompareFunc" title="GtkTreeIterCompareFunc ()"><span class="type">GtkTreeIterCompareFunc</span></a> sort_func</code></em>,
 
70
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>,
 
71
                                                         <em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);
 
72
<span class="returnvalue">void</span>                <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-set-default-sort-func" title="gtk_tree_sortable_set_default_sort_func ()">gtk_tree_sortable_set_default_sort_func</a>
 
73
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
74
                                                         <em class="parameter"><code><a class="link" href="GtkTreeSortable.html#GtkTreeIterCompareFunc" title="GtkTreeIterCompareFunc ()"><span class="type">GtkTreeIterCompareFunc</span></a> sort_func</code></em>,
 
75
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>,
 
76
                                                         <em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);
 
77
<span class="returnvalue">gboolean</span>            <a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-has-default-sort-func" title="gtk_tree_sortable_has_default_sort_func ()">gtk_tree_sortable_has_default_sort_func</a>
 
78
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>);
 
79
</pre>
 
80
</div>
 
81
<div class="refsect1">
 
82
<a name="GtkTreeSortable.object-hierarchy"></a><h2>Object Hierarchy</h2>
 
83
<pre class="synopsis">
 
84
  GInterface
 
85
   +----GtkTreeSortable
 
86
</pre>
 
87
</div>
 
88
<div class="refsect1">
 
89
<a name="GtkTreeSortable.prerequisites"></a><h2>Prerequisites</h2>
 
90
<p>
 
91
GtkTreeSortable requires
 
92
 <a class="link" href="GtkTreeModel.html" title="GtkTreeModel">GtkTreeModel</a> and  GObject.</p>
 
93
</div>
 
94
<div class="refsect1">
 
95
<a name="GtkTreeSortable.implementations"></a><h2>Known Implementations</h2>
 
96
<p>
 
97
GtkTreeSortable is implemented by
 
98
 <a class="link" href="GtkListStore.html" title="GtkListStore">GtkListStore</a>,  <a class="link" href="GtkTreeModelSort.html" title="GtkTreeModelSort">GtkTreeModelSort</a> and  <a class="link" href="GtkTreeStore.html" title="GtkTreeStore">GtkTreeStore</a>.</p>
 
99
</div>
 
100
<div class="refsect1">
 
101
<a name="GtkTreeSortable.signals"></a><h2>Signals</h2>
 
102
<pre class="synopsis">
 
103
  "<a class="link" href="GtkTreeSortable.html#GtkTreeSortable-sort-column-changed" title='The "sort-column-changed" signal'>sort-column-changed</a>"                            : <code class="literal">Run Last</code>
 
104
</pre>
 
105
</div>
 
106
<div class="refsect1">
 
107
<a name="GtkTreeSortable.description"></a><h2>Description</h2>
 
108
<p>
 
109
<a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> is an interface to be implemented by tree models which
 
110
support sorting. The <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a> uses the methods provided by this interface
 
111
to sort the model.
 
112
</p>
 
113
</div>
 
114
<div class="refsect1">
 
115
<a name="GtkTreeSortable.details"></a><h2>Details</h2>
 
116
<div class="refsect2">
 
117
<a name="GtkTreeSortable-struct"></a><h3>GtkTreeSortable</h3>
 
118
<pre class="programlisting">typedef struct _GtkTreeSortable GtkTreeSortable;</pre>
 
119
<p>
 
120
</p>
 
121
</div>
 
122
<hr>
 
123
<div class="refsect2">
 
124
<a name="GtkTreeSortableIface"></a><h3>struct GtkTreeSortableIface</h3>
 
125
<pre class="programlisting">struct GtkTreeSortableIface {
 
126
  GTypeInterface g_iface;
 
127
 
 
128
  /* signals */
 
129
  void     (* sort_column_changed)   (GtkTreeSortable        *sortable);
 
130
 
 
131
  /* virtual table */
 
132
  gboolean (* get_sort_column_id)    (GtkTreeSortable        *sortable,
 
133
                                      gint                   *sort_column_id,
 
134
                                      GtkSortType            *order);
 
135
  void     (* set_sort_column_id)    (GtkTreeSortable        *sortable,
 
136
                                      gint                    sort_column_id,
 
137
                                      GtkSortType             order);
 
138
  void     (* set_sort_func)         (GtkTreeSortable        *sortable,
 
139
                                      gint                    sort_column_id,
 
140
                                      GtkTreeIterCompareFunc  func,
 
141
                                      gpointer                data,
 
142
                                      GDestroyNotify          destroy);
 
143
  void     (* set_default_sort_func) (GtkTreeSortable        *sortable,
 
144
                                      GtkTreeIterCompareFunc  func,
 
145
                                      gpointer                data,
 
146
                                      GDestroyNotify          destroy);
 
147
  gboolean (* has_default_sort_func) (GtkTreeSortable        *sortable);
 
148
};
 
149
</pre>
 
150
<p>
 
151
</p>
 
152
</div>
 
153
<hr>
 
154
<div class="refsect2">
 
155
<a name="GtkTreeIterCompareFunc"></a><h3>GtkTreeIterCompareFunc ()</h3>
 
156
<pre class="programlisting"><span class="returnvalue">gint</span>                (*GtkTreeIterCompareFunc)           (<em class="parameter"><code><a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a> *model</code></em>,
 
157
                                                         <em class="parameter"><code><a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> *a</code></em>,
 
158
                                                         <em class="parameter"><code><a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> *b</code></em>,
 
159
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
 
160
<p>
 
161
A GtkTreeIterCompareFunc should return a negative integer, zero, or a positive
 
162
integer if <em class="parameter"><code>a</code></em> sorts before <em class="parameter"><code>b</code></em>, <em class="parameter"><code>a</code></em> sorts with <em class="parameter"><code>b</code></em>, or <em class="parameter"><code>a</code></em> sorts after <em class="parameter"><code>b</code></em>
 
163
respectively. If two iters compare as equal, their order in the sorted model
 
164
is undefined. In order to ensure that the <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> behaves as
 
165
expected, the GtkTreeIterCompareFunc must define a partial order on
 
166
the model, i.e. it must be reflexive, antisymmetric and transitive.
 
167
</p>
 
168
<p>
 
169
For example, if <em class="parameter"><code>model</code></em> is a product catalogue, then a compare function
 
170
for the "price" column could be one which returns
 
171
<code class="literal">price_of(<em class="parameter"><code>a</code></em>) - price_of(<em class="parameter"><code>b</code></em>)</code>.
 
172
</p>
 
173
<div class="variablelist"><table border="0" class="variablelist">
 
174
<colgroup>
 
175
<col align="left" valign="top">
 
176
<col>
 
177
</colgroup>
 
178
<tbody>
 
179
<tr>
 
180
<td><p><span class="term"><em class="parameter"><code>model</code></em> :</span></p></td>
 
181
<td>The <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a> the comparison is within</td>
 
182
</tr>
 
183
<tr>
 
184
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
185
<td>A <a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> in <em class="parameter"><code>model</code></em>
 
186
</td>
 
187
</tr>
 
188
<tr>
 
189
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
190
<td>Another <a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a> in <em class="parameter"><code>model</code></em>
 
191
</td>
 
192
</tr>
 
193
<tr>
 
194
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
 
195
<td>Data passed when the compare func is assigned e.g. by
 
196
<a class="link" href="GtkTreeSortable.html#gtk-tree-sortable-set-sort-func" title="gtk_tree_sortable_set_sort_func ()"><code class="function">gtk_tree_sortable_set_sort_func()</code></a>
 
197
</td>
 
198
</tr>
 
199
<tr>
 
200
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
201
<td>a negative integer, zero or a positive integer depending on whether
 
202
<em class="parameter"><code>a</code></em> sorts before, with or after <em class="parameter"><code>b</code></em>
 
203
</td>
 
204
</tr>
 
205
</tbody>
 
206
</table></div>
 
207
</div>
 
208
<hr>
 
209
<div class="refsect2">
 
210
<a name="gtk-tree-sortable-sort-column-changed"></a><h3>gtk_tree_sortable_sort_column_changed ()</h3>
 
211
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_tree_sortable_sort_column_changed
 
212
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>);</pre>
 
213
<p>
 
214
Emits a <a class="link" href="GtkTreeSortable.html#GtkTreeSortable-sort-column-changed" title='The "sort-column-changed" signal'><span class="type">"sort-column-changed"</span></a> signal on <em class="parameter"><code>sortable</code></em>.
 
215
</p>
 
216
<div class="variablelist"><table border="0" class="variablelist">
 
217
<colgroup>
 
218
<col align="left" valign="top">
 
219
<col>
 
220
</colgroup>
 
221
<tbody><tr>
 
222
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
223
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
224
</td>
 
225
</tr></tbody>
 
226
</table></div>
 
227
</div>
 
228
<hr>
 
229
<div class="refsect2">
 
230
<a name="gtk-tree-sortable-get-sort-column-id"></a><h3>gtk_tree_sortable_get_sort_column_id ()</h3>
 
231
<pre class="programlisting"><span class="returnvalue">gboolean</span>            gtk_tree_sortable_get_sort_column_id
 
232
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
233
                                                         <em class="parameter"><code><span class="type">gint</span> *sort_column_id</code></em>,
 
234
                                                         <em class="parameter"><code><a class="link" href="gtk2-Standard-Enumerations.html#GtkSortType" title="enum GtkSortType"><span class="type">GtkSortType</span></a> *order</code></em>);</pre>
 
235
<p>
 
236
Fills in <em class="parameter"><code>sort_column_id</code></em> and <em class="parameter"><code>order</code></em> with the current sort column and the
 
237
order. It returns <code class="literal">TRUE</code> unless the <em class="parameter"><code>sort_column_id</code></em> is 
 
238
<code class="literal">GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID</code> or 
 
239
<code class="literal">GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID</code>.
 
240
</p>
 
241
<div class="variablelist"><table border="0" class="variablelist">
 
242
<colgroup>
 
243
<col align="left" valign="top">
 
244
<col>
 
245
</colgroup>
 
246
<tbody>
 
247
<tr>
 
248
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
249
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
250
</td>
 
251
</tr>
 
252
<tr>
 
253
<td><p><span class="term"><em class="parameter"><code>sort_column_id</code></em> :</span></p></td>
 
254
<td>The sort column id to be filled in</td>
 
255
</tr>
 
256
<tr>
 
257
<td><p><span class="term"><em class="parameter"><code>order</code></em> :</span></p></td>
 
258
<td>The <a class="link" href="gtk2-Standard-Enumerations.html#GtkSortType" title="enum GtkSortType"><span class="type">GtkSortType</span></a> to be filled in</td>
 
259
</tr>
 
260
<tr>
 
261
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
262
<td>
 
263
<code class="literal">TRUE</code> if the sort column is not one of the special sort
 
264
column ids.</td>
 
265
</tr>
 
266
</tbody>
 
267
</table></div>
 
268
</div>
 
269
<hr>
 
270
<div class="refsect2">
 
271
<a name="gtk-tree-sortable-set-sort-column-id"></a><h3>gtk_tree_sortable_set_sort_column_id ()</h3>
 
272
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_tree_sortable_set_sort_column_id
 
273
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
274
                                                         <em class="parameter"><code><span class="type">gint</span> sort_column_id</code></em>,
 
275
                                                         <em class="parameter"><code><a class="link" href="gtk2-Standard-Enumerations.html#GtkSortType" title="enum GtkSortType"><span class="type">GtkSortType</span></a> order</code></em>);</pre>
 
276
<p>
 
277
Sets the current sort column to be <em class="parameter"><code>sort_column_id</code></em>. The <em class="parameter"><code>sortable</code></em> will
 
278
resort itself to reflect this change, after emitting a
 
279
<a class="link" href="GtkTreeSortable.html#GtkTreeSortable-sort-column-changed" title='The "sort-column-changed" signal'><span class="type">"sort-column-changed"</span></a> signal. <em class="parameter"><code>sort_column_id</code></em> may either be
 
280
a regular column id, or one of the following special values:
 
281
</p>
 
282
<div class="variablelist"><table border="0" class="variablelist">
 
283
<colgroup>
 
284
<col align="left" valign="top">
 
285
<col>
 
286
</colgroup>
 
287
<tbody>
 
288
<tr>
 
289
<td><p><span class="term"><code class="literal">GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID</code></span></p></td>
 
290
<td>the default sort function will be used, if it is set</td>
 
291
</tr>
 
292
<tr>
 
293
<td><p><span class="term"><code class="literal">GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID</code></span></p></td>
 
294
<td>no sorting will occur</td>
 
295
</tr>
 
296
</tbody>
 
297
</table></div>
 
298
<p>
 
299
</p>
 
300
<div class="variablelist"><table border="0" class="variablelist">
 
301
<colgroup>
 
302
<col align="left" valign="top">
 
303
<col>
 
304
</colgroup>
 
305
<tbody>
 
306
<tr>
 
307
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
308
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
309
</td>
 
310
</tr>
 
311
<tr>
 
312
<td><p><span class="term"><em class="parameter"><code>sort_column_id</code></em> :</span></p></td>
 
313
<td>the sort column id to set</td>
 
314
</tr>
 
315
<tr>
 
316
<td><p><span class="term"><em class="parameter"><code>order</code></em> :</span></p></td>
 
317
<td>The sort order of the column</td>
 
318
</tr>
 
319
</tbody>
 
320
</table></div>
 
321
</div>
 
322
<hr>
 
323
<div class="refsect2">
 
324
<a name="gtk-tree-sortable-set-sort-func"></a><h3>gtk_tree_sortable_set_sort_func ()</h3>
 
325
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_tree_sortable_set_sort_func     (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
326
                                                         <em class="parameter"><code><span class="type">gint</span> sort_column_id</code></em>,
 
327
                                                         <em class="parameter"><code><a class="link" href="GtkTreeSortable.html#GtkTreeIterCompareFunc" title="GtkTreeIterCompareFunc ()"><span class="type">GtkTreeIterCompareFunc</span></a> sort_func</code></em>,
 
328
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>,
 
329
                                                         <em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);</pre>
 
330
<p>
 
331
Sets the comparison function used when sorting to be <em class="parameter"><code>sort_func</code></em>. If the
 
332
current sort column id of <em class="parameter"><code>sortable</code></em> is the same as <em class="parameter"><code>sort_column_id</code></em>, then 
 
333
the model will sort using this function.
 
334
</p>
 
335
<div class="variablelist"><table border="0" class="variablelist">
 
336
<colgroup>
 
337
<col align="left" valign="top">
 
338
<col>
 
339
</colgroup>
 
340
<tbody>
 
341
<tr>
 
342
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
343
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
344
</td>
 
345
</tr>
 
346
<tr>
 
347
<td><p><span class="term"><em class="parameter"><code>sort_column_id</code></em> :</span></p></td>
 
348
<td>the sort column id to set the function for</td>
 
349
</tr>
 
350
<tr>
 
351
<td><p><span class="term"><em class="parameter"><code>sort_func</code></em> :</span></p></td>
 
352
<td>The comparison function</td>
 
353
</tr>
 
354
<tr>
 
355
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
 
356
<td>User data to pass to <em class="parameter"><code>sort_func</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
 
357
</td>
 
358
</tr>
 
359
<tr>
 
360
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
 
361
<td>Destroy notifier of <em class="parameter"><code>user_data</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
 
362
</td>
 
363
</tr>
 
364
</tbody>
 
365
</table></div>
 
366
</div>
 
367
<hr>
 
368
<div class="refsect2">
 
369
<a name="gtk-tree-sortable-set-default-sort-func"></a><h3>gtk_tree_sortable_set_default_sort_func ()</h3>
 
370
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_tree_sortable_set_default_sort_func
 
371
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>,
 
372
                                                         <em class="parameter"><code><a class="link" href="GtkTreeSortable.html#GtkTreeIterCompareFunc" title="GtkTreeIterCompareFunc ()"><span class="type">GtkTreeIterCompareFunc</span></a> sort_func</code></em>,
 
373
                                                         <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>,
 
374
                                                         <em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);</pre>
 
375
<p>
 
376
Sets the default comparison function used when sorting to be <em class="parameter"><code>sort_func</code></em>.  
 
377
If the current sort column id of <em class="parameter"><code>sortable</code></em> is
 
378
<code class="literal">GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID</code>, then the model will sort using 
 
379
this function.
 
380
</p>
 
381
<p>
 
382
If <em class="parameter"><code>sort_func</code></em> is <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>, then there will be no default comparison function.
 
383
This means that once the model  has been sorted, it can't go back to the
 
384
default state. In this case, when the current sort column id of <em class="parameter"><code>sortable</code></em> 
 
385
is <code class="literal">GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID</code>, the model will be unsorted.
 
386
</p>
 
387
<div class="variablelist"><table border="0" class="variablelist">
 
388
<colgroup>
 
389
<col align="left" valign="top">
 
390
<col>
 
391
</colgroup>
 
392
<tbody>
 
393
<tr>
 
394
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
395
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
396
</td>
 
397
</tr>
 
398
<tr>
 
399
<td><p><span class="term"><em class="parameter"><code>sort_func</code></em> :</span></p></td>
 
400
<td>The comparison function</td>
 
401
</tr>
 
402
<tr>
 
403
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
 
404
<td>User data to pass to <em class="parameter"><code>sort_func</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
 
405
</td>
 
406
</tr>
 
407
<tr>
 
408
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
 
409
<td>Destroy notifier of <em class="parameter"><code>user_data</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
 
410
</td>
 
411
</tr>
 
412
</tbody>
 
413
</table></div>
 
414
</div>
 
415
<hr>
 
416
<div class="refsect2">
 
417
<a name="gtk-tree-sortable-has-default-sort-func"></a><h3>gtk_tree_sortable_has_default_sort_func ()</h3>
 
418
<pre class="programlisting"><span class="returnvalue">gboolean</span>            gtk_tree_sortable_has_default_sort_func
 
419
                                                        (<em class="parameter"><code><a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable</code></em>);</pre>
 
420
<p>
 
421
Returns <code class="literal">TRUE</code> if the model has a default sort function. This is used
 
422
primarily by GtkTreeViewColumns in order to determine if a model can 
 
423
go back to the default state, or not.
 
424
</p>
 
425
<div class="variablelist"><table border="0" class="variablelist">
 
426
<colgroup>
 
427
<col align="left" valign="top">
 
428
<col>
 
429
</colgroup>
 
430
<tbody>
 
431
<tr>
 
432
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
433
<td>A <a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a>
 
434
</td>
 
435
</tr>
 
436
<tr>
 
437
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
438
<td>
 
439
<code class="literal">TRUE</code>, if the model has a default sort function</td>
 
440
</tr>
 
441
</tbody>
 
442
</table></div>
 
443
</div>
 
444
</div>
 
445
<div class="refsect1">
 
446
<a name="GtkTreeSortable.signal-details"></a><h2>Signal Details</h2>
 
447
<div class="refsect2">
 
448
<a name="GtkTreeSortable-sort-column-changed"></a><h3>The <code class="literal">"sort-column-changed"</code> signal</h3>
 
449
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GtkTreeSortable.html" title="GtkTreeSortable"><span class="type">GtkTreeSortable</span></a> *sortable,
 
450
                                                        <span class="type">gpointer</span>         user_data)      : <code class="literal">Run Last</code></pre>
 
451
<p>
 
452
The ::sort-column-changed signal is emitted when the sort column
 
453
or sort order of <em class="parameter"><code>sortable</code></em> is changed. The signal is emitted before
 
454
the contents of <em class="parameter"><code>sortable</code></em> are resorted.
 
455
</p>
 
456
<div class="variablelist"><table border="0" class="variablelist">
 
457
<colgroup>
 
458
<col align="left" valign="top">
 
459
<col>
 
460
</colgroup>
 
461
<tbody>
 
462
<tr>
 
463
<td><p><span class="term"><em class="parameter"><code>sortable</code></em> :</span></p></td>
 
464
<td>the object on which the signal is emitted</td>
 
465
</tr>
 
466
<tr>
 
467
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
 
468
<td>user data set when the signal handler was connected.</td>
 
469
</tr>
 
470
</tbody>
 
471
</table></div>
 
472
</div>
 
473
</div>
 
474
<div class="refsect1">
 
475
<a name="GtkTreeSortable.see-also"></a><h2>See Also</h2>
 
476
<p>
 
477
<a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a>, <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a>
 
478
</p>
 
479
</div>
 
480
</div>
 
481
<div class="footer">
 
482
<hr>
 
483
          Generated by GTK-Doc V1.18</div>
 
484
</body>
 
485
</html>
 
 
b'\\ No newline at end of file'