]> gitweb.factorcode.org Git - factor.git/blob - basis/gtk/Gtk-3.0.gir
Add Wombat theme, put it and Base16 theme in OS X menu
[factor.git] / basis / gtk / Gtk-3.0.gir
1 <?xml version="1.0"?>
2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations.  -->
5 <repository version="1.2"
6             xmlns="http://www.gtk.org/introspection/core/1.0"
7             xmlns:c="http://www.gtk.org/introspection/c/1.0"
8             xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9   <include name="Atk" version="1.0"/>
10   <include name="GLib" version="2.0"/>
11   <include name="GModule" version="2.0"/>
12   <include name="GObject" version="2.0"/>
13   <include name="Gdk" version="3.0"/>
14   <include name="GdkPixbuf" version="2.0"/>
15   <include name="Gio" version="2.0"/>
16   <include name="Pango" version="1.0"/>
17   <include name="cairo" version="1.0"/>
18   <namespace name="Gtk"
19              version="3.0"
20              shared-library="libgtk-x11-3.0.so.0"
21              c:identifier-prefixes="Gtk"
22              c:symbol-prefixes="gtk">
23     <alias name="Allocation" c:type="GtkAllocation">
24       <doc xml:whitespace="preserve">A &lt;structname&gt;GtkAllocation&lt;/structname&gt; of a widget represents region which has been allocated to the
25 widget by its parent. It is a subregion of its parents allocation. See
26 &lt;xref linkend="size-allocation"/&gt; for more information.</doc>
27       <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
28     </alias>
29     <class name="AboutDialog"
30            c:symbol-prefix="about_dialog"
31            c:type="GtkAboutDialog"
32            parent="Dialog"
33            glib:type-name="GtkAboutDialog"
34            glib:get-type="gtk_about_dialog_get_type"
35            glib:type-struct="AboutDialogClass">
36       <doc xml:whitespace="preserve">The &lt;structname&gt;GtkAboutDialog&lt;/structname&gt; struct contains
37 only private fields and should not be directly accessed.</doc>
38       <implements name="Atk.ImplementorIface"/>
39       <implements name="Buildable"/>
40       <implements name="SizeRequest"/>
41       <constructor name="new"
42                    c:identifier="gtk_about_dialog_new"
43                    version="2.6">
44         <doc xml:whitespace="preserve">Creates a new #GtkAboutDialog.</doc>
45         <return-value transfer-ownership="none">
46           <doc xml:whitespace="preserve">a newly created #GtkAboutDialog</doc>
47           <type name="Widget" c:type="GtkWidget*"/>
48         </return-value>
49       </constructor>
50       <method name="get_artists"
51               c:identifier="gtk_about_dialog_get_artists"
52               version="2.6"
53               introspectable="0">
54         <doc xml:whitespace="preserve">Returns the string which are displayed in the artists tab
55 of the secondary credits dialog.
56 the artists. The array is owned by the about dialog
57 and must not be modified.</doc>
58         <return-value>
59           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
60           <array c:type="gchar**">
61             <type name="utf8"/>
62           </array>
63         </return-value>
64       </method>
65       <method name="get_authors"
66               c:identifier="gtk_about_dialog_get_authors"
67               version="2.6"
68               introspectable="0">
69         <doc xml:whitespace="preserve">Returns the string which are displayed in the authors tab
70 of the secondary credits dialog.
71 the authors. The array is owned by the about dialog
72 and must not be modified.</doc>
73         <return-value>
74           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
75           <array c:type="gchar**">
76             <type name="utf8"/>
77           </array>
78         </return-value>
79       </method>
80       <method name="get_comments"
81               c:identifier="gtk_about_dialog_get_comments"
82               version="2.6">
83         <doc xml:whitespace="preserve">Returns the comments string.
84 dialog and must not be modified.</doc>
85         <return-value transfer-ownership="none">
86           <doc xml:whitespace="preserve">The comments. The string is owned by the about</doc>
87           <type name="utf8" c:type="gchar*"/>
88         </return-value>
89       </method>
90       <method name="get_copyright"
91               c:identifier="gtk_about_dialog_get_copyright"
92               version="2.6">
93         <doc xml:whitespace="preserve">Returns the copyright string.
94 dialog and must not be modified.</doc>
95         <return-value transfer-ownership="none">
96           <doc xml:whitespace="preserve">The copyright string. The string is owned by the about</doc>
97           <type name="utf8" c:type="gchar*"/>
98         </return-value>
99       </method>
100       <method name="get_documenters"
101               c:identifier="gtk_about_dialog_get_documenters"
102               version="2.6"
103               introspectable="0">
104         <doc xml:whitespace="preserve">Returns the string which are displayed in the documenters
105 tab of the secondary credits dialog.
106 the documenters. The array is owned by the about dialog
107 and must not be modified.</doc>
108         <return-value>
109           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
110           <array c:type="gchar**">
111             <type name="utf8"/>
112           </array>
113         </return-value>
114       </method>
115       <method name="get_license"
116               c:identifier="gtk_about_dialog_get_license"
117               version="2.6">
118         <doc xml:whitespace="preserve">Returns the license information.
119 dialog and must not be modified.</doc>
120         <return-value transfer-ownership="none">
121           <doc xml:whitespace="preserve">The license information. The string is owned by the about</doc>
122           <type name="utf8" c:type="gchar*"/>
123         </return-value>
124       </method>
125       <method name="get_license_type"
126               c:identifier="gtk_about_dialog_get_license_type"
127               version="3.0">
128         <doc xml:whitespace="preserve">Retrieves the license set using gtk_about_dialog_set_license_type()</doc>
129         <return-value transfer-ownership="none">
130           <doc xml:whitespace="preserve">a #GtkLicense value</doc>
131           <type name="License" c:type="GtkLicense"/>
132         </return-value>
133       </method>
134       <method name="get_logo"
135               c:identifier="gtk_about_dialog_get_logo"
136               version="2.6"
137               introspectable="0">
138         <doc xml:whitespace="preserve">Returns the pixbuf displayed as logo in the about dialog.
139 owned by the about dialog. If you want to keep a reference
140 to it, you have to call g_object_ref() on it.</doc>
141         <return-value>
142           <doc xml:whitespace="preserve">the pixbuf displayed as logo. The pixbuf is</doc>
143           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
144         </return-value>
145       </method>
146       <method name="get_logo_icon_name"
147               c:identifier="gtk_about_dialog_get_logo_icon_name"
148               version="2.6">
149         <doc xml:whitespace="preserve">Returns the icon name displayed as logo in the about dialog.
150 owned by the dialog. If you want to keep a reference
151 to it, you have to call g_strdup() on it.</doc>
152         <return-value transfer-ownership="none">
153           <doc xml:whitespace="preserve">the icon name displayed as logo. The string is</doc>
154           <type name="utf8" c:type="gchar*"/>
155         </return-value>
156       </method>
157       <method name="get_program_name"
158               c:identifier="gtk_about_dialog_get_program_name"
159               version="2.12">
160         <doc xml:whitespace="preserve">Returns the program name displayed in the about dialog.
161 dialog and must not be modified.</doc>
162         <return-value transfer-ownership="none">
163           <doc xml:whitespace="preserve">The program name. The string is owned by the about</doc>
164           <type name="utf8" c:type="gchar*"/>
165         </return-value>
166       </method>
167       <method name="get_translator_credits"
168               c:identifier="gtk_about_dialog_get_translator_credits"
169               version="2.6">
170         <doc xml:whitespace="preserve">Returns the translator credits string which is displayed
171 in the translators tab of the secondary credits dialog.
172 owned by the about dialog and must not be modified.</doc>
173         <return-value transfer-ownership="none">
174           <doc xml:whitespace="preserve">The translator credits string. The string is</doc>
175           <type name="utf8" c:type="gchar*"/>
176         </return-value>
177       </method>
178       <method name="get_version"
179               c:identifier="gtk_about_dialog_get_version"
180               version="2.6">
181         <doc xml:whitespace="preserve">Returns the version string.
182 dialog and must not be modified.</doc>
183         <return-value transfer-ownership="none">
184           <doc xml:whitespace="preserve">The version string. The string is owned by the about</doc>
185           <type name="utf8" c:type="gchar*"/>
186         </return-value>
187       </method>
188       <method name="get_website"
189               c:identifier="gtk_about_dialog_get_website"
190               version="2.6">
191         <doc xml:whitespace="preserve">Returns the website URL.
192 dialog and must not be modified.</doc>
193         <return-value transfer-ownership="none">
194           <doc xml:whitespace="preserve">The website URL. The string is owned by the about</doc>
195           <type name="utf8" c:type="gchar*"/>
196         </return-value>
197       </method>
198       <method name="get_website_label"
199               c:identifier="gtk_about_dialog_get_website_label"
200               version="2.6">
201         <doc xml:whitespace="preserve">Returns the label used for the website link.
202 owned by the about dialog and must not be modified.</doc>
203         <return-value transfer-ownership="none">
204           <doc xml:whitespace="preserve">The label used for the website link. The string is</doc>
205           <type name="utf8" c:type="gchar*"/>
206         </return-value>
207       </method>
208       <method name="get_wrap_license"
209               c:identifier="gtk_about_dialog_get_wrap_license"
210               version="2.8">
211         <doc xml:whitespace="preserve">Returns whether the license text in @about is
212 automatically wrapped.</doc>
213         <return-value transfer-ownership="none">
214           <doc xml:whitespace="preserve">%TRUE if the license text is wrapped</doc>
215           <type name="gboolean" c:type="gboolean"/>
216         </return-value>
217       </method>
218       <method name="set_artists"
219               c:identifier="gtk_about_dialog_set_artists"
220               version="2.6">
221         <doc xml:whitespace="preserve">Sets the strings which are displayed in the artists tab
222 of the secondary credits dialog.</doc>
223         <return-value transfer-ownership="none">
224           <type name="none" c:type="void"/>
225         </return-value>
226         <parameters>
227           <parameter name="artists" transfer-ownership="none">
228             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
229             <type name="utf8" c:type="gchar**"/>
230           </parameter>
231         </parameters>
232       </method>
233       <method name="set_authors"
234               c:identifier="gtk_about_dialog_set_authors"
235               version="2.6">
236         <doc xml:whitespace="preserve">Sets the strings which are displayed in the authors tab
237 of the secondary credits dialog.</doc>
238         <return-value transfer-ownership="none">
239           <type name="none" c:type="void"/>
240         </return-value>
241         <parameters>
242           <parameter name="authors" transfer-ownership="none">
243             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
244             <type name="utf8" c:type="gchar**"/>
245           </parameter>
246         </parameters>
247       </method>
248       <method name="set_comments"
249               c:identifier="gtk_about_dialog_set_comments"
250               version="2.6">
251         <doc xml:whitespace="preserve">Sets the comments string to display in the about dialog.
252 This should be a short string of one or two lines.</doc>
253         <return-value transfer-ownership="none">
254           <type name="none" c:type="void"/>
255         </return-value>
256         <parameters>
257           <parameter name="comments" transfer-ownership="none" allow-none="1">
258             <doc xml:whitespace="preserve">a comments string</doc>
259             <type name="utf8" c:type="gchar*"/>
260           </parameter>
261         </parameters>
262       </method>
263       <method name="set_copyright"
264               c:identifier="gtk_about_dialog_set_copyright"
265               version="2.6">
266         <doc xml:whitespace="preserve">Sets the copyright string to display in the about dialog.
267 This should be a short string of one or two lines.</doc>
268         <return-value transfer-ownership="none">
269           <type name="none" c:type="void"/>
270         </return-value>
271         <parameters>
272           <parameter name="copyright" transfer-ownership="none">
273             <doc xml:whitespace="preserve">(allow-none) the copyright string</doc>
274             <type name="utf8" c:type="gchar*"/>
275           </parameter>
276         </parameters>
277       </method>
278       <method name="set_documenters"
279               c:identifier="gtk_about_dialog_set_documenters"
280               version="2.6">
281         <doc xml:whitespace="preserve">Sets the strings which are displayed in the documenters tab
282 of the secondary credits dialog.</doc>
283         <return-value transfer-ownership="none">
284           <type name="none" c:type="void"/>
285         </return-value>
286         <parameters>
287           <parameter name="documenters" transfer-ownership="none">
288             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
289             <type name="utf8" c:type="gchar**"/>
290           </parameter>
291         </parameters>
292       </method>
293       <method name="set_license"
294               c:identifier="gtk_about_dialog_set_license"
295               version="2.6">
296         <doc xml:whitespace="preserve">Sets the license information to be displayed in the secondary
297 license dialog. If @license is %NULL, the license button is
298 hidden.</doc>
299         <return-value transfer-ownership="none">
300           <type name="none" c:type="void"/>
301         </return-value>
302         <parameters>
303           <parameter name="license" transfer-ownership="none" allow-none="1">
304             <doc xml:whitespace="preserve">the license information or %NULL</doc>
305             <type name="utf8" c:type="gchar*"/>
306           </parameter>
307         </parameters>
308       </method>
309       <method name="set_license_type"
310               c:identifier="gtk_about_dialog_set_license_type"
311               version="3.0">
312         <doc xml:whitespace="preserve">Sets the license of the application showing the @about dialog from a
313 list of known licenses.
314 This function overrides the license set using
315 gtk_about_dialog_set_license().</doc>
316         <return-value transfer-ownership="none">
317           <type name="none" c:type="void"/>
318         </return-value>
319         <parameters>
320           <parameter name="license_type" transfer-ownership="none">
321             <doc xml:whitespace="preserve">the type of license</doc>
322             <type name="License" c:type="GtkLicense"/>
323           </parameter>
324         </parameters>
325       </method>
326       <method name="set_logo"
327               c:identifier="gtk_about_dialog_set_logo"
328               version="2.6">
329         <doc xml:whitespace="preserve">Sets the pixbuf to be displayed as logo in the about dialog.
330 If it is %NULL, the default window icon set with
331 gtk_window_set_default_icon() will be used.</doc>
332         <return-value transfer-ownership="none">
333           <type name="none" c:type="void"/>
334         </return-value>
335         <parameters>
336           <parameter name="logo" transfer-ownership="none" allow-none="1">
337             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
338             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
339           </parameter>
340         </parameters>
341       </method>
342       <method name="set_logo_icon_name"
343               c:identifier="gtk_about_dialog_set_logo_icon_name"
344               version="2.6">
345         <doc xml:whitespace="preserve">Sets the pixbuf to be displayed as logo in the about dialog.
346 If it is %NULL, the default window icon set with
347 gtk_window_set_default_icon() will be used.</doc>
348         <return-value transfer-ownership="none">
349           <type name="none" c:type="void"/>
350         </return-value>
351         <parameters>
352           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
353             <doc xml:whitespace="preserve">an icon name, or %NULL</doc>
354             <type name="utf8" c:type="gchar*"/>
355           </parameter>
356         </parameters>
357       </method>
358       <method name="set_program_name"
359               c:identifier="gtk_about_dialog_set_program_name"
360               version="2.12">
361         <doc xml:whitespace="preserve">Sets the name to display in the about dialog.
362 If this is not set, it defaults to g_get_application_name().</doc>
363         <return-value transfer-ownership="none">
364           <type name="none" c:type="void"/>
365         </return-value>
366         <parameters>
367           <parameter name="name" transfer-ownership="none">
368             <doc xml:whitespace="preserve">the program name</doc>
369             <type name="utf8" c:type="gchar*"/>
370           </parameter>
371         </parameters>
372       </method>
373       <method name="set_translator_credits"
374               c:identifier="gtk_about_dialog_set_translator_credits"
375               version="2.6">
376         <doc xml:whitespace="preserve">Sets the translator credits string which is displayed in
377 the translators tab of the secondary credits dialog.
378 The intended use for this string is to display the translator
379 of the language which is currently used in the user interface.
380 Using gettext(), a simple way to achieve that is to mark the
381 string for translation:
382 |[
383 gtk_about_dialog_set_translator_credits (about, _("translator-credits"));
384 ]|
385 It is a good idea to use the customary msgid "translator-credits" for this
386 purpose, since translators will already know the purpose of that msgid, and
387 since #GtkAboutDialog will detect if "translator-credits" is untranslated
388 and hide the tab.</doc>
389         <return-value transfer-ownership="none">
390           <type name="none" c:type="void"/>
391         </return-value>
392         <parameters>
393           <parameter name="translator_credits"
394                      transfer-ownership="none"
395                      allow-none="1">
396             <doc xml:whitespace="preserve">the translator credits</doc>
397             <type name="utf8" c:type="gchar*"/>
398           </parameter>
399         </parameters>
400       </method>
401       <method name="set_version"
402               c:identifier="gtk_about_dialog_set_version"
403               version="2.6">
404         <doc xml:whitespace="preserve">Sets the version string to display in the about dialog.</doc>
405         <return-value transfer-ownership="none">
406           <type name="none" c:type="void"/>
407         </return-value>
408         <parameters>
409           <parameter name="version" transfer-ownership="none" allow-none="1">
410             <doc xml:whitespace="preserve">the version string</doc>
411             <type name="utf8" c:type="gchar*"/>
412           </parameter>
413         </parameters>
414       </method>
415       <method name="set_website"
416               c:identifier="gtk_about_dialog_set_website"
417               version="2.6">
418         <doc xml:whitespace="preserve">Sets the URL to use for the website link.
419 Note that that the hook functions need to be set up
420 before calling this function.</doc>
421         <return-value transfer-ownership="none">
422           <type name="none" c:type="void"/>
423         </return-value>
424         <parameters>
425           <parameter name="website" transfer-ownership="none">
426             <doc xml:whitespace="preserve">(allow-none): a URL string starting with "http://"</doc>
427             <type name="utf8" c:type="gchar*"/>
428           </parameter>
429         </parameters>
430       </method>
431       <method name="set_website_label"
432               c:identifier="gtk_about_dialog_set_website_label"
433               version="2.6">
434         <doc xml:whitespace="preserve">Sets the label to be used for the website link.
435 It defaults to the website URL.</doc>
436         <return-value transfer-ownership="none">
437           <type name="none" c:type="void"/>
438         </return-value>
439         <parameters>
440           <parameter name="website_label" transfer-ownership="none">
441             <doc xml:whitespace="preserve">the label used for the website link</doc>
442             <type name="utf8" c:type="gchar*"/>
443           </parameter>
444         </parameters>
445       </method>
446       <method name="set_wrap_license"
447               c:identifier="gtk_about_dialog_set_wrap_license"
448               version="2.8">
449         <doc xml:whitespace="preserve">Sets whether the license text in @about is
450 automatically wrapped.</doc>
451         <return-value transfer-ownership="none">
452           <type name="none" c:type="void"/>
453         </return-value>
454         <parameters>
455           <parameter name="wrap_license" transfer-ownership="none">
456             <doc xml:whitespace="preserve">whether to wrap the license</doc>
457             <type name="gboolean" c:type="gboolean"/>
458           </parameter>
459         </parameters>
460       </method>
461       <property name="artists"
462                 version="2.6"
463                 introspectable="0"
464                 writable="1"
465                 transfer-ownership="none">
466         <doc xml:whitespace="preserve">The people who contributed artwork to the program, as a %NULL-terminated
467 array of strings. Each string may contain email addresses and URLs, which
468 will be displayed as links, see the introduction for more details.</doc>
469         <type/>
470       </property>
471       <property name="authors"
472                 version="2.6"
473                 introspectable="0"
474                 writable="1"
475                 transfer-ownership="none">
476         <doc xml:whitespace="preserve">The authors of the program, as a %NULL-terminated array of strings.
477 Each string may contain email addresses and URLs, which will be displayed
478 as links, see the introduction for more details.</doc>
479         <type/>
480       </property>
481       <property name="comments"
482                 version="2.6"
483                 writable="1"
484                 transfer-ownership="none">
485         <doc xml:whitespace="preserve">Comments about the program. This string is displayed in a label
486 in the main dialog, thus it should be a short explanation of
487 the main purpose of the program, not a detailed list of features.</doc>
488         <type name="utf8"/>
489       </property>
490       <property name="copyright"
491                 version="2.6"
492                 writable="1"
493                 transfer-ownership="none">
494         <doc xml:whitespace="preserve">Copyright information for the program.</doc>
495         <type name="utf8"/>
496       </property>
497       <property name="documenters"
498                 version="2.6"
499                 introspectable="0"
500                 writable="1"
501                 transfer-ownership="none">
502         <doc xml:whitespace="preserve">The people documenting the program, as a %NULL-terminated array of strings.
503 Each string may contain email addresses and URLs, which will be displayed
504 as links, see the introduction for more details.</doc>
505         <type/>
506       </property>
507       <property name="license"
508                 version="2.6"
509                 writable="1"
510                 transfer-ownership="none">
511         <doc xml:whitespace="preserve">The license of the program. This string is displayed in a
512 text view in a secondary dialog, therefore it is fine to use
513 a long multi-paragraph text. Note that the text is only wrapped
514 in the text view if the "wrap-license" property is set to %TRUE;
515 otherwise the text itself must contain the intended linebreaks.
516 When setting this property to a non-%NULL value, the
517 #GtkAboutDialog:license-type property is set to %GTK_LICENSE_CUSTOM
518 as a side effect.</doc>
519         <type name="utf8"/>
520       </property>
521       <property name="license-type"
522                 version="3.0"
523                 writable="1"
524                 transfer-ownership="none">
525         <doc xml:whitespace="preserve">The license of the program, as a value of the %GtkLicense enumeration.
526 The #GtkAboutDialog will automatically fill out a standard disclaimer
527 and link the user to the appropriate online resource for the license
528 text.
529 If %GTK_LICENSE_UNKNOWN is used, the link used will be the same
530 specified in the #GtkAboutDialog:website property.
531 If %GTK_LICENSE_CUSTOM is used, the current contents of the
532 #GtkAboutDialog:license property are used.
533 For any other #GtkLicense value, the contents of the
534 #GtkAboutDialog:license property are also set by this property as
535 a side effect.</doc>
536         <type name="License"/>
537       </property>
538       <property name="logo"
539                 version="2.6"
540                 writable="1"
541                 transfer-ownership="none">
542         <doc xml:whitespace="preserve">A logo for the about box. If this is not set, it defaults to
543 gtk_window_get_default_icon_list().</doc>
544         <type name="GdkPixbuf.Pixbuf"/>
545       </property>
546       <property name="logo-icon-name"
547                 version="2.6"
548                 writable="1"
549                 transfer-ownership="none">
550         <doc xml:whitespace="preserve">A named icon to use as the logo for the about box. This property
551 overrides the #GtkAboutDialog:logo property.</doc>
552         <type name="utf8"/>
553       </property>
554       <property name="program-name"
555                 version="2.12"
556                 writable="1"
557                 transfer-ownership="none">
558         <doc xml:whitespace="preserve">The name of the program.
559 If this is not set, it defaults to g_get_application_name().</doc>
560         <type name="utf8"/>
561       </property>
562       <property name="translator-credits"
563                 version="2.6"
564                 writable="1"
565                 transfer-ownership="none">
566         <doc xml:whitespace="preserve">Credits to the translators. This string should be marked as translatable.
567 The string may contain email addresses and URLs, which will be displayed
568 as links, see the introduction for more details.</doc>
569         <type name="utf8"/>
570       </property>
571       <property name="version"
572                 version="2.6"
573                 writable="1"
574                 transfer-ownership="none">
575         <doc xml:whitespace="preserve">The version of the program.</doc>
576         <type name="utf8"/>
577       </property>
578       <property name="website"
579                 version="2.6"
580                 writable="1"
581                 transfer-ownership="none">
582         <doc xml:whitespace="preserve">The URL for the link to the website of the program.
583 This should be a string starting with "http://.</doc>
584         <type name="utf8"/>
585       </property>
586       <property name="website-label"
587                 version="2.6"
588                 writable="1"
589                 transfer-ownership="none">
590         <doc xml:whitespace="preserve">The label for the link to the website of the program. If this is not set,
591 it defaults to the URL specified in the #GtkAboutDialog:website property.</doc>
592         <type name="utf8"/>
593       </property>
594       <property name="wrap-license"
595                 version="2.8"
596                 writable="1"
597                 transfer-ownership="none">
598         <doc xml:whitespace="preserve">Whether to wrap the text in the license dialog.</doc>
599         <type name="gboolean"/>
600       </property>
601       <field name="parent_instance">
602         <type name="Dialog" c:type="GtkDialog"/>
603       </field>
604       <field name="priv">
605         <type name="AboutDialogPrivate" c:type="GtkAboutDialogPrivate*"/>
606       </field>
607       <glib:signal name="activate-link" version="2.24">
608         <doc xml:whitespace="preserve">The signal which gets emitted to activate a URI.
609 Applications may connect to it to override the default behaviour,
610 which is to call gtk_show_uri().</doc>
611         <return-value transfer-ownership="none">
612           <doc xml:whitespace="preserve">%TRUE if the link has been activated</doc>
613           <type name="gboolean"/>
614         </return-value>
615         <parameters>
616           <parameter name="object" transfer-ownership="none">
617             <doc xml:whitespace="preserve">the URI that is activated</doc>
618             <type name="utf8"/>
619           </parameter>
620         </parameters>
621       </glib:signal>
622     </class>
623     <record name="AboutDialogClass"
624             c:type="GtkAboutDialogClass"
625             glib:is-gtype-struct-for="AboutDialog">
626       <field name="parent_class">
627         <type name="DialogClass" c:type="GtkDialogClass"/>
628       </field>
629       <field name="activate_link">
630         <callback name="activate_link">
631           <return-value transfer-ownership="none">
632             <type name="gboolean" c:type="gboolean"/>
633           </return-value>
634           <parameters>
635             <parameter name="dialog" transfer-ownership="none">
636               <type name="AboutDialog" c:type="GtkAboutDialog*"/>
637             </parameter>
638             <parameter name="uri" transfer-ownership="none">
639               <type name="utf8" c:type="gchar*"/>
640             </parameter>
641           </parameters>
642         </callback>
643       </field>
644       <field name="_gtk_reserved1" introspectable="0">
645         <callback name="_gtk_reserved1">
646           <return-value transfer-ownership="none">
647             <type name="none" c:type="void"/>
648           </return-value>
649         </callback>
650       </field>
651       <field name="_gtk_reserved2" introspectable="0">
652         <callback name="_gtk_reserved2">
653           <return-value transfer-ownership="none">
654             <type name="none" c:type="void"/>
655           </return-value>
656         </callback>
657       </field>
658       <field name="_gtk_reserved3" introspectable="0">
659         <callback name="_gtk_reserved3">
660           <return-value transfer-ownership="none">
661             <type name="none" c:type="void"/>
662           </return-value>
663         </callback>
664       </field>
665       <field name="_gtk_reserved4" introspectable="0">
666         <callback name="_gtk_reserved4">
667           <return-value transfer-ownership="none">
668             <type name="none" c:type="void"/>
669           </return-value>
670         </callback>
671       </field>
672     </record>
673     <record name="AboutDialogPrivate"
674             c:type="GtkAboutDialogPrivate"
675             disguised="1">
676     </record>
677     <bitfield name="AccelFlags"
678               glib:type-name="GtkAccelFlags"
679               glib:get-type="gtk_accel_flags_get_type"
680               c:type="GtkAccelFlags">
681       <member name="visible"
682               value="1"
683               c:identifier="GTK_ACCEL_VISIBLE"
684               glib:nick="visible"/>
685       <member name="locked"
686               value="2"
687               c:identifier="GTK_ACCEL_LOCKED"
688               glib:nick="locked"/>
689       <member name="mask"
690               value="7"
691               c:identifier="GTK_ACCEL_MASK"
692               glib:nick="mask"/>
693     </bitfield>
694     <class name="AccelGroup"
695            c:symbol-prefix="accel_group"
696            c:type="GtkAccelGroup"
697            parent="GObject.Object"
698            glib:type-name="GtkAccelGroup"
699            glib:get-type="gtk_accel_group_get_type"
700            glib:type-struct="AccelGroupClass">
701       <doc xml:whitespace="preserve">An object representing and maintaining a group of accelerators.</doc>
702       <constructor name="new" c:identifier="gtk_accel_group_new">
703         <doc xml:whitespace="preserve">Creates a new #GtkAccelGroup.</doc>
704         <return-value transfer-ownership="full">
705           <doc xml:whitespace="preserve">a new #GtkAccelGroup object</doc>
706           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
707         </return-value>
708       </constructor>
709       <function name="from_accel_closure"
710                 c:identifier="gtk_accel_group_from_accel_closure"
711                 introspectable="0">
712         <doc xml:whitespace="preserve">Finds the #GtkAccelGroup to which @closure is connected; 
713 see gtk_accel_group_connect().</doc>
714         <return-value>
715           <doc xml:whitespace="preserve">the #GtkAccelGroup to which @closure is connected, or %NULL.</doc>
716           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
717         </return-value>
718         <parameters>
719           <parameter name="closure" transfer-ownership="none">
720             <doc xml:whitespace="preserve">a #GClosure</doc>
721             <type name="GObject.Closure" c:type="GClosure*"/>
722           </parameter>
723         </parameters>
724       </function>
725       <method name="activate" c:identifier="gtk_accel_group_activate">
726         <doc xml:whitespace="preserve">Finds the first accelerator in @accel_group 
727 that matches @accel_key and @accel_mods, and
728 activates it.</doc>
729         <return-value transfer-ownership="none">
730           <doc xml:whitespace="preserve">%TRUE if an accelerator was activated and handled this keypress</doc>
731           <type name="gboolean" c:type="gboolean"/>
732         </return-value>
733         <parameters>
734           <parameter name="accel_quark" transfer-ownership="none">
735             <doc xml:whitespace="preserve">the quark for the accelerator name</doc>
736             <type name="GLib.Quark" c:type="GQuark"/>
737           </parameter>
738           <parameter name="acceleratable" transfer-ownership="none">
739             <doc xml:whitespace="preserve">the #GObject, usually a #GtkWindow, on which to activate the accelerator.</doc>
740             <type name="GObject.Object" c:type="GObject*"/>
741           </parameter>
742           <parameter name="accel_key" transfer-ownership="none">
743             <doc xml:whitespace="preserve">accelerator keyval from a key event</doc>
744             <type name="guint" c:type="guint"/>
745           </parameter>
746           <parameter name="accel_mods" transfer-ownership="none">
747             <doc xml:whitespace="preserve">keyboard state mask from a key event</doc>
748             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
749           </parameter>
750         </parameters>
751       </method>
752       <method name="connect" c:identifier="gtk_accel_group_connect">
753         <doc xml:whitespace="preserve">Installs an accelerator in this group. When @accel_group is being activated
754 in response to a call to gtk_accel_groups_activate(), @closure will be
755 invoked if the @accel_key and @accel_mods from gtk_accel_groups_activate()
756 match those of this connection.
757 The signature used for the @closure is that of #GtkAccelGroupActivate.
758 Note that, due to implementation details, a single closure can only be
759 connected to one accelerator group.</doc>
760         <return-value transfer-ownership="none">
761           <type name="none" c:type="void"/>
762         </return-value>
763         <parameters>
764           <parameter name="accel_key" transfer-ownership="none">
765             <doc xml:whitespace="preserve">key value of the accelerator</doc>
766             <type name="guint" c:type="guint"/>
767           </parameter>
768           <parameter name="accel_mods" transfer-ownership="none">
769             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
770             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
771           </parameter>
772           <parameter name="accel_flags" transfer-ownership="none">
773             <doc xml:whitespace="preserve">a flag mask to configure this accelerator</doc>
774             <type name="AccelFlags" c:type="GtkAccelFlags"/>
775           </parameter>
776           <parameter name="closure" transfer-ownership="none">
777             <doc xml:whitespace="preserve">closure to be executed upon accelerator activation</doc>
778             <type name="GObject.Closure" c:type="GClosure*"/>
779           </parameter>
780         </parameters>
781       </method>
782       <method name="connect_by_path"
783               c:identifier="gtk_accel_group_connect_by_path">
784         <doc xml:whitespace="preserve">Installs an accelerator in this group, using an accelerator path to look
785 up the appropriate key and modifiers (see gtk_accel_map_add_entry()).
786 When @accel_group is being activated in response to a call to
787 gtk_accel_groups_activate(), @closure will be invoked if the @accel_key and
788 for the path.
789 The signature used for the @closure is that of #GtkAccelGroupActivate.
790 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
791 pass a static string, you can save some memory by interning it first with 
792 g_intern_static_string().</doc>
793         <return-value transfer-ownership="none">
794           <type name="none" c:type="void"/>
795         </return-value>
796         <parameters>
797           <parameter name="accel_path" transfer-ownership="none">
798             <doc xml:whitespace="preserve">path used for determining key and modifiers.</doc>
799             <type name="utf8" c:type="gchar*"/>
800           </parameter>
801           <parameter name="closure" transfer-ownership="none">
802             <doc xml:whitespace="preserve">closure to be executed upon accelerator activation</doc>
803             <type name="GObject.Closure" c:type="GClosure*"/>
804           </parameter>
805         </parameters>
806       </method>
807       <method name="disconnect" c:identifier="gtk_accel_group_disconnect">
808         <doc xml:whitespace="preserve">Removes an accelerator previously installed through
809 gtk_accel_group_connect().
810 Since 2.20 @closure can be %NULL.</doc>
811         <return-value transfer-ownership="none">
812           <doc xml:whitespace="preserve">%TRUE if the closure was found and got disconnected</doc>
813           <type name="gboolean" c:type="gboolean"/>
814         </return-value>
815         <parameters>
816           <parameter name="closure" transfer-ownership="none" allow-none="1">
817             <doc xml:whitespace="preserve">the closure to remove from this accelerator group, or %NULL to remove all closures</doc>
818             <type name="GObject.Closure" c:type="GClosure*"/>
819           </parameter>
820         </parameters>
821       </method>
822       <method name="disconnect_key"
823               c:identifier="gtk_accel_group_disconnect_key">
824         <doc xml:whitespace="preserve">Removes an accelerator previously installed through
825 gtk_accel_group_connect().</doc>
826         <return-value transfer-ownership="none">
827           <doc xml:whitespace="preserve">%TRUE if there was an accelerator which could be removed, %FALSE otherwise</doc>
828           <type name="gboolean" c:type="gboolean"/>
829         </return-value>
830         <parameters>
831           <parameter name="accel_key" transfer-ownership="none">
832             <doc xml:whitespace="preserve">key value of the accelerator</doc>
833             <type name="guint" c:type="guint"/>
834           </parameter>
835           <parameter name="accel_mods" transfer-ownership="none">
836             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
837             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
838           </parameter>
839         </parameters>
840       </method>
841       <method name="find"
842               c:identifier="gtk_accel_group_find"
843               introspectable="0">
844         <doc xml:whitespace="preserve">Finds the first entry in an accelerator group for which</doc>
845         <return-value>
846           <doc xml:whitespace="preserve">the key of the first entry passing @find_func. The key is owned by GTK+ and must not be freed.</doc>
847           <type name="AccelKey" c:type="GtkAccelKey*"/>
848         </return-value>
849         <parameters>
850           <parameter name="find_func" transfer-ownership="none" closure="1">
851             <doc xml:whitespace="preserve">a function to filter the entries of @accel_group with</doc>
852             <type name="AccelGroupFindFunc" c:type="GtkAccelGroupFindFunc"/>
853           </parameter>
854           <parameter name="data" transfer-ownership="none">
855             <doc xml:whitespace="preserve">data to pass to @find_func</doc>
856             <type name="gpointer" c:type="gpointer"/>
857           </parameter>
858         </parameters>
859       </method>
860       <method name="get_is_locked"
861               c:identifier="gtk_accel_group_get_is_locked"
862               version="2.14">
863         <doc xml:whitespace="preserve">Locks are added and removed using gtk_accel_group_lock() and
864 gtk_accel_group_unlock().
865 %FALSE otherwise.</doc>
866         <return-value transfer-ownership="none">
867           <doc xml:whitespace="preserve">%TRUE if there are 1 or more locks on the @accel_group,</doc>
868           <type name="gboolean" c:type="gboolean"/>
869         </return-value>
870       </method>
871       <method name="get_modifier_mask"
872               c:identifier="gtk_accel_group_get_modifier_mask"
873               version="2.14">
874         <doc xml:whitespace="preserve">Gets a #GdkModifierType representing the mask for this</doc>
875         <return-value transfer-ownership="none">
876           <doc xml:whitespace="preserve">the modifier mask for this accel group.</doc>
877           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
878         </return-value>
879       </method>
880       <method name="lock" c:identifier="gtk_accel_group_lock">
881         <doc xml:whitespace="preserve">Locks the given accelerator group.
882 Locking an acelerator group prevents the accelerators contained
883 within it to be changed during runtime. Refer to
884 gtk_accel_map_change_entry() about runtime accelerator changes.
885 If called more than once, @accel_group remains locked until
886 gtk_accel_group_unlock() has been called an equivalent number
887 of times.</doc>
888         <return-value transfer-ownership="none">
889           <type name="none" c:type="void"/>
890         </return-value>
891       </method>
892       <method name="query"
893               c:identifier="gtk_accel_group_query"
894               introspectable="0">
895         <doc xml:whitespace="preserve">Queries an accelerator group for all entries matching @accel_key and</doc>
896         <return-value>
897           <doc xml:whitespace="preserve">an array of @n_entries #GtkAccelGroupEntry elements, or %NULL. The array is owned by GTK+ and must not be freed.</doc>
898           <type name="AccelGroupEntry" c:type="GtkAccelGroupEntry*"/>
899         </return-value>
900         <parameters>
901           <parameter name="accel_key" transfer-ownership="none">
902             <doc xml:whitespace="preserve">key value of the accelerator</doc>
903             <type name="guint" c:type="guint"/>
904           </parameter>
905           <parameter name="accel_mods" transfer-ownership="none">
906             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
907             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
908           </parameter>
909           <parameter name="n_entries" transfer-ownership="none" allow-none="1">
910             <doc xml:whitespace="preserve">location to return the number of entries found, or %NULL</doc>
911             <type name="guint" c:type="guint*"/>
912           </parameter>
913         </parameters>
914       </method>
915       <method name="unlock" c:identifier="gtk_accel_group_unlock">
916         <doc xml:whitespace="preserve">Undoes the last call to gtk_accel_group_lock() on this @accel_group.</doc>
917         <return-value transfer-ownership="none">
918           <type name="none" c:type="void"/>
919         </return-value>
920       </method>
921       <property name="is-locked" transfer-ownership="none">
922         <type name="gboolean"/>
923       </property>
924       <property name="modifier-mask" transfer-ownership="none">
925         <type name="Gdk.ModifierType"/>
926       </property>
927       <field name="parent">
928         <type name="GObject.Object" c:type="GObject"/>
929       </field>
930       <field name="priv">
931         <type name="AccelGroupPrivate" c:type="GtkAccelGroupPrivate*"/>
932       </field>
933       <glib:signal name="accel-activate">
934         <doc xml:whitespace="preserve">The accel-activate signal is an implementation detail of
935 #GtkAccelGroup and not meant to be used by applications.</doc>
936         <return-value transfer-ownership="none">
937           <doc xml:whitespace="preserve">%TRUE if the accelerator was activated</doc>
938           <type name="gboolean"/>
939         </return-value>
940         <parameters>
941           <parameter name="object" transfer-ownership="none">
942             <doc xml:whitespace="preserve">the object on which the accelerator was activated</doc>
943             <type name="GObject.Object"/>
944           </parameter>
945           <parameter name="p0" transfer-ownership="none">
946             <doc xml:whitespace="preserve">the accelerator keyval</doc>
947             <type name="guint"/>
948           </parameter>
949           <parameter name="p1" transfer-ownership="none">
950             <doc xml:whitespace="preserve">the modifier combination of the accelerator</doc>
951             <type name="Gdk.ModifierType"/>
952           </parameter>
953         </parameters>
954       </glib:signal>
955       <glib:signal name="accel-changed">
956         <doc xml:whitespace="preserve">The accel-changed signal is emitted when a #GtkAccelGroupEntry
957 is added to or removed from the accel group. 
958 Widgets like #GtkAccelLabel which display an associated 
959 accelerator should connect to this signal, and rebuild 
960 their visual representation if the @accel_closure is theirs.</doc>
961         <return-value transfer-ownership="none">
962           <type name="none"/>
963         </return-value>
964         <parameters>
965           <parameter name="object" transfer-ownership="none">
966             <doc xml:whitespace="preserve">the accelerator keyval</doc>
967             <type name="guint"/>
968           </parameter>
969           <parameter name="p0" transfer-ownership="none">
970             <doc xml:whitespace="preserve">the modifier combination of the accelerator</doc>
971             <type name="Gdk.ModifierType"/>
972           </parameter>
973           <parameter name="p1" transfer-ownership="none">
974             <doc xml:whitespace="preserve">the #GClosure of the accelerator</doc>
975             <type name="GObject.Closure"/>
976           </parameter>
977         </parameters>
978       </glib:signal>
979     </class>
980     <callback name="AccelGroupActivate" c:type="GtkAccelGroupActivate">
981       <return-value transfer-ownership="none">
982         <type name="gboolean" c:type="gboolean"/>
983       </return-value>
984       <parameters>
985         <parameter name="accel_group" transfer-ownership="none">
986           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
987         </parameter>
988         <parameter name="acceleratable" transfer-ownership="none">
989           <type name="GObject.Object" c:type="GObject*"/>
990         </parameter>
991         <parameter name="keyval" transfer-ownership="none">
992           <type name="guint" c:type="guint"/>
993         </parameter>
994         <parameter name="modifier" transfer-ownership="none">
995           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
996         </parameter>
997       </parameters>
998     </callback>
999     <record name="AccelGroupClass"
1000             c:type="GtkAccelGroupClass"
1001             glib:is-gtype-struct-for="AccelGroup">
1002       <field name="parent_class">
1003         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
1004       </field>
1005       <field name="accel_changed">
1006         <callback name="accel_changed">
1007           <return-value transfer-ownership="none">
1008             <type name="none" c:type="void"/>
1009           </return-value>
1010           <parameters>
1011             <parameter name="accel_group" transfer-ownership="none">
1012               <type name="AccelGroup" c:type="GtkAccelGroup*"/>
1013             </parameter>
1014             <parameter name="keyval" transfer-ownership="none">
1015               <type name="guint" c:type="guint"/>
1016             </parameter>
1017             <parameter name="modifier" transfer-ownership="none">
1018               <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1019             </parameter>
1020             <parameter name="accel_closure" transfer-ownership="none">
1021               <type name="GObject.Closure" c:type="GClosure*"/>
1022             </parameter>
1023           </parameters>
1024         </callback>
1025       </field>
1026       <field name="_gtk_reserved1" introspectable="0">
1027         <callback name="_gtk_reserved1">
1028           <return-value transfer-ownership="none">
1029             <type name="none" c:type="void"/>
1030           </return-value>
1031         </callback>
1032       </field>
1033       <field name="_gtk_reserved2" introspectable="0">
1034         <callback name="_gtk_reserved2">
1035           <return-value transfer-ownership="none">
1036             <type name="none" c:type="void"/>
1037           </return-value>
1038         </callback>
1039       </field>
1040       <field name="_gtk_reserved3" introspectable="0">
1041         <callback name="_gtk_reserved3">
1042           <return-value transfer-ownership="none">
1043             <type name="none" c:type="void"/>
1044           </return-value>
1045         </callback>
1046       </field>
1047       <field name="_gtk_reserved4" introspectable="0">
1048         <callback name="_gtk_reserved4">
1049           <return-value transfer-ownership="none">
1050             <type name="none" c:type="void"/>
1051           </return-value>
1052         </callback>
1053       </field>
1054     </record>
1055     <record name="AccelGroupEntry" c:type="GtkAccelGroupEntry">
1056       <field name="key" writable="1">
1057         <type name="AccelKey" c:type="GtkAccelKey"/>
1058       </field>
1059       <field name="closure" writable="1">
1060         <type name="GObject.Closure" c:type="GClosure*"/>
1061       </field>
1062       <field name="accel_path_quark" writable="1">
1063         <type name="GLib.Quark" c:type="GQuark"/>
1064       </field>
1065     </record>
1066     <callback name="AccelGroupFindFunc"
1067               c:type="GtkAccelGroupFindFunc"
1068               version="2.2">
1069       <return-value transfer-ownership="none">
1070         <type name="gboolean" c:type="gboolean"/>
1071       </return-value>
1072       <parameters>
1073         <parameter name="key" transfer-ownership="none">
1074           <type name="AccelKey" c:type="GtkAccelKey*"/>
1075         </parameter>
1076         <parameter name="closure" transfer-ownership="none">
1077           <type name="GObject.Closure" c:type="GClosure*"/>
1078         </parameter>
1079         <parameter name="data" transfer-ownership="none">
1080           <type name="gpointer" c:type="gpointer"/>
1081         </parameter>
1082       </parameters>
1083     </callback>
1084     <record name="AccelGroupPrivate" c:type="GtkAccelGroupPrivate">
1085       <field name="lock_count" writable="1">
1086         <type name="guint" c:type="guint"/>
1087       </field>
1088       <field name="modifier_mask" writable="1">
1089         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1090       </field>
1091       <field name="acceleratables" writable="1">
1092         <type name="GLib.SList" c:type="GSList*">
1093           <type name="gpointer" c:type="gpointer"/>
1094         </type>
1095       </field>
1096       <field name="n_accels" writable="1">
1097         <type name="guint" c:type="guint"/>
1098       </field>
1099       <field name="priv_accels" writable="1">
1100         <type name="AccelGroupEntry" c:type="GtkAccelGroupEntry*"/>
1101       </field>
1102     </record>
1103     <record name="AccelKey" c:type="GtkAccelKey">
1104       <field name="accel_key" writable="1">
1105         <type name="guint" c:type="guint"/>
1106       </field>
1107       <field name="accel_mods" writable="1">
1108         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1109       </field>
1110       <field name="accel_flags" writable="1" bits="16">
1111         <type name="guint" c:type="guint"/>
1112       </field>
1113     </record>
1114     <class name="AccelLabel"
1115            c:symbol-prefix="accel_label"
1116            c:type="GtkAccelLabel"
1117            parent="Label"
1118            glib:type-name="GtkAccelLabel"
1119            glib:get-type="gtk_accel_label_get_type"
1120            glib:type-struct="AccelLabelClass">
1121       <doc xml:whitespace="preserve">The #GtkAccelLabel-struct struct contains private data only, and
1122 should be accessed using the functions below.</doc>
1123       <implements name="Atk.ImplementorIface"/>
1124       <implements name="Buildable"/>
1125       <implements name="SizeRequest"/>
1126       <constructor name="new" c:identifier="gtk_accel_label_new">
1127         <doc xml:whitespace="preserve">Creates a new #GtkAccelLabel.</doc>
1128         <return-value transfer-ownership="none">
1129           <doc xml:whitespace="preserve">a new #GtkAccelLabel.</doc>
1130           <type name="Widget" c:type="GtkWidget*"/>
1131         </return-value>
1132         <parameters>
1133           <parameter name="string" transfer-ownership="none">
1134             <doc xml:whitespace="preserve">the label string. Must be non-%NULL.</doc>
1135             <type name="utf8" c:type="gchar*"/>
1136           </parameter>
1137         </parameters>
1138       </constructor>
1139       <method name="get_accel_widget"
1140               c:identifier="gtk_accel_label_get_accel_widget">
1141         <doc xml:whitespace="preserve">Fetches the widget monitored by this accelerator label. See
1142 gtk_accel_label_set_accel_widget().</doc>
1143         <return-value transfer-ownership="none">
1144           <doc xml:whitespace="preserve">the object monitored by the accelerator label, or %NULL.</doc>
1145           <type name="Widget" c:type="GtkWidget*"/>
1146         </return-value>
1147       </method>
1148       <method name="get_accel_width"
1149               c:identifier="gtk_accel_label_get_accel_width">
1150         <doc xml:whitespace="preserve">Returns the width needed to display the accelerator key(s).
1151 This is used by menus to align all of the #GtkMenuItem widgets, and shouldn't
1152 be needed by applications.</doc>
1153         <return-value transfer-ownership="none">
1154           <doc xml:whitespace="preserve">the width needed to display the accelerator key(s).</doc>
1155           <type name="guint" c:type="guint"/>
1156         </return-value>
1157       </method>
1158       <method name="refetch" c:identifier="gtk_accel_label_refetch">
1159         <doc xml:whitespace="preserve">Recreates the string representing the accelerator keys.
1160 This should not be needed since the string is automatically updated whenever
1161 accelerators are added or removed from the associated widget.</doc>
1162         <return-value transfer-ownership="none">
1163           <doc xml:whitespace="preserve">always returns %FALSE.</doc>
1164           <type name="gboolean" c:type="gboolean"/>
1165         </return-value>
1166       </method>
1167       <method name="set_accel_closure"
1168               c:identifier="gtk_accel_label_set_accel_closure">
1169         <doc xml:whitespace="preserve">Sets the closure to be monitored by this accelerator label. The closure
1170 must be connected to an accelerator group; see gtk_accel_group_connect().</doc>
1171         <return-value transfer-ownership="none">
1172           <type name="none" c:type="void"/>
1173         </return-value>
1174         <parameters>
1175           <parameter name="accel_closure" transfer-ownership="none">
1176             <doc xml:whitespace="preserve">the closure to monitor for accelerator changes.</doc>
1177             <type name="GObject.Closure" c:type="GClosure*"/>
1178           </parameter>
1179         </parameters>
1180       </method>
1181       <method name="set_accel_widget"
1182               c:identifier="gtk_accel_label_set_accel_widget">
1183         <doc xml:whitespace="preserve">Sets the widget to be monitored by this accelerator label.</doc>
1184         <return-value transfer-ownership="none">
1185           <type name="none" c:type="void"/>
1186         </return-value>
1187         <parameters>
1188           <parameter name="accel_widget" transfer-ownership="none">
1189             <doc xml:whitespace="preserve">the widget to be monitored.</doc>
1190             <type name="Widget" c:type="GtkWidget*"/>
1191           </parameter>
1192         </parameters>
1193       </method>
1194       <property name="accel-closure" writable="1" transfer-ownership="none">
1195         <type name="GObject.Closure"/>
1196       </property>
1197       <property name="accel-widget" writable="1" transfer-ownership="none">
1198         <type name="Widget"/>
1199       </property>
1200       <field name="label">
1201         <type name="Label" c:type="GtkLabel"/>
1202       </field>
1203       <field name="priv">
1204         <type name="AccelLabelPrivate" c:type="GtkAccelLabelPrivate*"/>
1205       </field>
1206     </class>
1207     <record name="AccelLabelClass"
1208             c:type="GtkAccelLabelClass"
1209             glib:is-gtype-struct-for="AccelLabel">
1210       <field name="parent_class">
1211         <type name="LabelClass" c:type="GtkLabelClass"/>
1212       </field>
1213       <field name="signal_quote1">
1214         <type name="utf8" c:type="gchar*"/>
1215       </field>
1216       <field name="signal_quote2">
1217         <type name="utf8" c:type="gchar*"/>
1218       </field>
1219       <field name="mod_name_shift">
1220         <type name="utf8" c:type="gchar*"/>
1221       </field>
1222       <field name="mod_name_control">
1223         <type name="utf8" c:type="gchar*"/>
1224       </field>
1225       <field name="mod_name_alt">
1226         <type name="utf8" c:type="gchar*"/>
1227       </field>
1228       <field name="mod_separator">
1229         <type name="utf8" c:type="gchar*"/>
1230       </field>
1231       <field name="_gtk_reserved1" introspectable="0">
1232         <callback name="_gtk_reserved1">
1233           <return-value transfer-ownership="none">
1234             <type name="none" c:type="void"/>
1235           </return-value>
1236         </callback>
1237       </field>
1238       <field name="_gtk_reserved2" introspectable="0">
1239         <callback name="_gtk_reserved2">
1240           <return-value transfer-ownership="none">
1241             <type name="none" c:type="void"/>
1242           </return-value>
1243         </callback>
1244       </field>
1245       <field name="_gtk_reserved3" introspectable="0">
1246         <callback name="_gtk_reserved3">
1247           <return-value transfer-ownership="none">
1248             <type name="none" c:type="void"/>
1249           </return-value>
1250         </callback>
1251       </field>
1252       <field name="_gtk_reserved4" introspectable="0">
1253         <callback name="_gtk_reserved4">
1254           <return-value transfer-ownership="none">
1255             <type name="none" c:type="void"/>
1256           </return-value>
1257         </callback>
1258       </field>
1259     </record>
1260     <record name="AccelLabelPrivate"
1261             c:type="GtkAccelLabelPrivate"
1262             disguised="1">
1263     </record>
1264     <class name="AccelMap"
1265            c:symbol-prefix="accel_map"
1266            c:type="GtkAccelMap"
1267            parent="GObject.Object"
1268            glib:type-name="GtkAccelMap"
1269            glib:get-type="gtk_accel_map_get_type"
1270            glib:type-struct="AccelMapClass">
1271       <function name="add_entry" c:identifier="gtk_accel_map_add_entry">
1272         <doc xml:whitespace="preserve">Registers a new accelerator with the global accelerator map.
1273 This function should only be called once per @accel_path
1274 with the canonical @accel_key and @accel_mods for this path.
1275 To change the accelerator during runtime programatically, use
1276 gtk_accel_map_change_entry().
1277 The accelerator path must consist of "&amp;lt;WINDOWTYPE&amp;gt;/Category1/Category2/.../Action",
1278 where &amp;lt;WINDOWTYPE&amp;gt; should be a unique application-specific identifier, that
1279 corresponds to the kind of window the accelerator is being used in, e.g. "Gimp-Image",
1280 "Abiword-Document" or "Gnumeric-Settings".
1281 The Category1/.../Action portion is most appropriately chosen by the action the
1282 accelerator triggers, i.e. for accelerators on menu items, choose the item's menu path,
1283 e.g. "File/Save As", "Image/View/Zoom" or "Edit/Select All".
1284 So a full valid accelerator path may look like:
1285 "&amp;lt;Gimp-Toolbox&amp;gt;/File/Dialogs/Tool Options...".
1286 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
1287 pass a static string, you can save some memory by interning it first with 
1288 g_intern_static_string().</doc>
1289         <return-value transfer-ownership="none">
1290           <type name="none" c:type="void"/>
1291         </return-value>
1292         <parameters>
1293           <parameter name="accel_path" transfer-ownership="none">
1294             <doc xml:whitespace="preserve">valid accelerator path</doc>
1295             <type name="utf8" c:type="gchar*"/>
1296           </parameter>
1297           <parameter name="accel_key" transfer-ownership="none">
1298             <doc xml:whitespace="preserve">the accelerator key</doc>
1299             <type name="guint" c:type="guint"/>
1300           </parameter>
1301           <parameter name="accel_mods" transfer-ownership="none">
1302             <doc xml:whitespace="preserve">the accelerator modifiers</doc>
1303             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1304           </parameter>
1305         </parameters>
1306       </function>
1307       <function name="add_filter" c:identifier="gtk_accel_map_add_filter">
1308         <doc xml:whitespace="preserve">Adds a filter to the global list of accel path filters.
1309 Accel map entries whose accel path matches one of the filters
1310 are skipped by gtk_accel_map_foreach().
1311 This function is intended for GTK+ modules that create their own
1312 menus, but don't want them to be saved into the applications accelerator
1313 map dump.</doc>
1314         <return-value transfer-ownership="none">
1315           <type name="none" c:type="void"/>
1316         </return-value>
1317         <parameters>
1318           <parameter name="filter_pattern" transfer-ownership="none">
1319             <doc xml:whitespace="preserve">a pattern (see #GPatternSpec)</doc>
1320             <type name="utf8" c:type="gchar*"/>
1321           </parameter>
1322         </parameters>
1323       </function>
1324       <function name="change_entry" c:identifier="gtk_accel_map_change_entry">
1325         <doc xml:whitespace="preserve">Changes the @accel_key and @accel_mods currently associated with @accel_path.
1326 Due to conflicts with other accelerators, a change may not always be possible,
1327 conflicts. A change will only occur if all conflicts could be resolved (which
1328 might not be the case if conflicting accelerators are locked). Successful
1329 changes are indicated by a %TRUE return value.
1330 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
1331 pass a static string, you can save some memory by interning it first with 
1332 g_intern_static_string().</doc>
1333         <return-value transfer-ownership="none">
1334           <doc xml:whitespace="preserve">%TRUE if the accelerator could be changed, %FALSE otherwise</doc>
1335           <type name="gboolean" c:type="gboolean"/>
1336         </return-value>
1337         <parameters>
1338           <parameter name="accel_path" transfer-ownership="none">
1339             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1340             <type name="utf8" c:type="gchar*"/>
1341           </parameter>
1342           <parameter name="accel_key" transfer-ownership="none">
1343             <doc xml:whitespace="preserve">the new accelerator key</doc>
1344             <type name="guint" c:type="guint"/>
1345           </parameter>
1346           <parameter name="accel_mods" transfer-ownership="none">
1347             <doc xml:whitespace="preserve">the new accelerator modifiers</doc>
1348             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1349           </parameter>
1350           <parameter name="replace" transfer-ownership="none">
1351             <doc xml:whitespace="preserve">%TRUE if other accelerators may be deleted upon conflicts</doc>
1352             <type name="gboolean" c:type="gboolean"/>
1353           </parameter>
1354         </parameters>
1355       </function>
1356       <function name="foreach"
1357                 c:identifier="gtk_accel_map_foreach"
1358                 introspectable="0">
1359         <doc xml:whitespace="preserve">Loops over the entries in the accelerator map whose accel path 
1360 doesn't match any of the filters added with gtk_accel_map_add_filter(), 
1361 and execute @foreach_func on each. The signature of @foreach_func is 
1362 that of #GtkAccelMapForeach, the @changed parameter indicates whether
1363 this accelerator was changed during runtime (thus, would need
1364 saving during an accelerator map dump).</doc>
1365         <return-value transfer-ownership="none">
1366           <type name="none" c:type="void"/>
1367         </return-value>
1368         <parameters>
1369           <parameter name="data" transfer-ownership="none">
1370             <doc xml:whitespace="preserve">data to be passed into @foreach_func</doc>
1371             <type name="gpointer" c:type="gpointer"/>
1372           </parameter>
1373           <parameter name="foreach_func" transfer-ownership="none">
1374             <doc xml:whitespace="preserve">function to be executed for each accel map entry which is not filtered out</doc>
1375             <type name="AccelMapForeach" c:type="GtkAccelMapForeach"/>
1376           </parameter>
1377         </parameters>
1378       </function>
1379       <function name="foreach_unfiltered"
1380                 c:identifier="gtk_accel_map_foreach_unfiltered"
1381                 introspectable="0">
1382         <doc xml:whitespace="preserve">Loops over all entries in the accelerator map, and execute
1383 #GtkAccelMapForeach, the @changed parameter indicates whether
1384 this accelerator was changed during runtime (thus, would need
1385 saving during an accelerator map dump).</doc>
1386         <return-value transfer-ownership="none">
1387           <type name="none" c:type="void"/>
1388         </return-value>
1389         <parameters>
1390           <parameter name="data" transfer-ownership="none">
1391             <doc xml:whitespace="preserve">data to be passed into @foreach_func</doc>
1392             <type name="gpointer" c:type="gpointer"/>
1393           </parameter>
1394           <parameter name="foreach_func" transfer-ownership="none">
1395             <doc xml:whitespace="preserve">function to be executed for each accel map entry</doc>
1396             <type name="AccelMapForeach" c:type="GtkAccelMapForeach"/>
1397           </parameter>
1398         </parameters>
1399       </function>
1400       <function name="get" c:identifier="gtk_accel_map_get" version="2.4">
1401         <doc xml:whitespace="preserve">Gets the singleton global #GtkAccelMap object. This object
1402 is useful only for notification of changes to the accelerator
1403 map via the ::changed signal; it isn't a parameter to the
1404 other accelerator map functions.</doc>
1405         <return-value transfer-ownership="none">
1406           <doc xml:whitespace="preserve">the global #GtkAccelMap object</doc>
1407           <type name="AccelMap" c:type="GtkAccelMap*"/>
1408         </return-value>
1409       </function>
1410       <function name="load" c:identifier="gtk_accel_map_load">
1411         <doc xml:whitespace="preserve">Parses a file previously saved with gtk_accel_map_save() for
1412 accelerator specifications, and propagates them accordingly.</doc>
1413         <return-value transfer-ownership="none">
1414           <type name="none" c:type="void"/>
1415         </return-value>
1416         <parameters>
1417           <parameter name="file_name" transfer-ownership="none">
1418             <doc xml:whitespace="preserve">a file containing accelerator specifications, in the GLib file name encoding</doc>
1419             <type name="utf8" c:type="gchar*"/>
1420           </parameter>
1421         </parameters>
1422       </function>
1423       <function name="load_fd" c:identifier="gtk_accel_map_load_fd">
1424         <doc xml:whitespace="preserve">Filedescriptor variant of gtk_accel_map_load().
1425 Note that the file descriptor will not be closed by this function.</doc>
1426         <return-value transfer-ownership="none">
1427           <type name="none" c:type="void"/>
1428         </return-value>
1429         <parameters>
1430           <parameter name="fd" transfer-ownership="none">
1431             <doc xml:whitespace="preserve">a valid readable file descriptor</doc>
1432             <type name="gint" c:type="gint"/>
1433           </parameter>
1434         </parameters>
1435       </function>
1436       <function name="load_scanner" c:identifier="gtk_accel_map_load_scanner">
1437         <doc xml:whitespace="preserve">#GScanner variant of gtk_accel_map_load().</doc>
1438         <return-value transfer-ownership="none">
1439           <type name="none" c:type="void"/>
1440         </return-value>
1441         <parameters>
1442           <parameter name="scanner" transfer-ownership="none">
1443             <doc xml:whitespace="preserve">a #GScanner which has already been provided with an input file</doc>
1444             <type name="GLib.Scanner" c:type="GScanner*"/>
1445           </parameter>
1446         </parameters>
1447       </function>
1448       <function name="lock_path"
1449                 c:identifier="gtk_accel_map_lock_path"
1450                 version="2.4">
1451         <doc xml:whitespace="preserve">Locks the given accelerator path. If the accelerator map doesn't yet contain
1452 an entry for @accel_path, a new one is created.
1453 Locking an accelerator path prevents its accelerator from being changed 
1454 during runtime. A locked accelerator path can be unlocked by 
1455 gtk_accel_map_unlock_path(). Refer to gtk_accel_map_change_entry() 
1456 for information about runtime accelerator changes.
1457 If called more than once, @accel_path remains locked until
1458 gtk_accel_map_unlock_path() has been called an equivalent number
1459 of times.
1460 Note that locking of individual accelerator paths is independent from 
1461 locking the #GtkAccelGroup containing them. For runtime accelerator
1462 changes to be possible both the accelerator path and its #GtkAccelGroup
1463 have to be unlocked.</doc>
1464         <return-value transfer-ownership="none">
1465           <type name="none" c:type="void"/>
1466         </return-value>
1467         <parameters>
1468           <parameter name="accel_path" transfer-ownership="none">
1469             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1470             <type name="utf8" c:type="gchar*"/>
1471           </parameter>
1472         </parameters>
1473       </function>
1474       <function name="lookup_entry" c:identifier="gtk_accel_map_lookup_entry">
1475         <doc xml:whitespace="preserve">Looks up the accelerator entry for @accel_path and fills in @key.</doc>
1476         <return-value transfer-ownership="none">
1477           <doc xml:whitespace="preserve">%TRUE if @accel_path is known, %FALSE otherwise</doc>
1478           <type name="gboolean" c:type="gboolean"/>
1479         </return-value>
1480         <parameters>
1481           <parameter name="accel_path" transfer-ownership="none">
1482             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1483             <type name="utf8" c:type="gchar*"/>
1484           </parameter>
1485           <parameter name="key"
1486                      direction="out"
1487                      caller-allocates="1"
1488                      transfer-ownership="none"
1489                      allow-none="1">
1490             <doc xml:whitespace="preserve">the accelerator key to be filled in (optional)</doc>
1491             <type name="AccelKey" c:type="GtkAccelKey*"/>
1492           </parameter>
1493         </parameters>
1494       </function>
1495       <function name="save" c:identifier="gtk_accel_map_save">
1496         <doc xml:whitespace="preserve">Saves current accelerator specifications (accelerator path, key
1497 and modifiers) to @file_name.
1498 The file is written in a format suitable to be read back in by
1499 gtk_accel_map_load().</doc>
1500         <return-value transfer-ownership="none">
1501           <type name="none" c:type="void"/>
1502         </return-value>
1503         <parameters>
1504           <parameter name="file_name" transfer-ownership="none">
1505             <doc xml:whitespace="preserve">the name of the file to contain accelerator specifications, in the GLib file name encoding</doc>
1506             <type name="utf8" c:type="gchar*"/>
1507           </parameter>
1508         </parameters>
1509       </function>
1510       <function name="save_fd" c:identifier="gtk_accel_map_save_fd">
1511         <doc xml:whitespace="preserve">Filedescriptor variant of gtk_accel_map_save().
1512 Note that the file descriptor will not be closed by this function.</doc>
1513         <return-value transfer-ownership="none">
1514           <type name="none" c:type="void"/>
1515         </return-value>
1516         <parameters>
1517           <parameter name="fd" transfer-ownership="none">
1518             <doc xml:whitespace="preserve">a valid writable file descriptor</doc>
1519             <type name="gint" c:type="gint"/>
1520           </parameter>
1521         </parameters>
1522       </function>
1523       <function name="unlock_path"
1524                 c:identifier="gtk_accel_map_unlock_path"
1525                 version="2.4">
1526         <doc xml:whitespace="preserve">Undoes the last call to gtk_accel_map_lock_path() on this @accel_path.
1527 Refer to gtk_accel_map_lock_path() for information about accelerator path locking.</doc>
1528         <return-value transfer-ownership="none">
1529           <type name="none" c:type="void"/>
1530         </return-value>
1531         <parameters>
1532           <parameter name="accel_path" transfer-ownership="none">
1533             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1534             <type name="utf8" c:type="gchar*"/>
1535           </parameter>
1536         </parameters>
1537       </function>
1538       <glib:signal name="changed" version="2.4">
1539         <doc xml:whitespace="preserve">Notifies of a change in the global accelerator map.
1540 The path is also used as the detail for the signal,
1541 so it is possible to connect to
1542 changed::&lt;replaceable&gt;accel_path&lt;/replaceable&gt;.</doc>
1543         <return-value transfer-ownership="none">
1544           <type name="none"/>
1545         </return-value>
1546         <parameters>
1547           <parameter name="object" transfer-ownership="none">
1548             <doc xml:whitespace="preserve">the path of the accelerator that changed</doc>
1549             <type name="utf8"/>
1550           </parameter>
1551           <parameter name="p0" transfer-ownership="none">
1552             <doc xml:whitespace="preserve">the key value for the new accelerator</doc>
1553             <type name="guint"/>
1554           </parameter>
1555           <parameter name="p1" transfer-ownership="none">
1556             <doc xml:whitespace="preserve">the modifier mask for the new accelerator</doc>
1557             <type name="Gdk.ModifierType"/>
1558           </parameter>
1559         </parameters>
1560       </glib:signal>
1561     </class>
1562     <record name="AccelMapClass"
1563             c:type="GtkAccelMapClass"
1564             disguised="1"
1565             glib:is-gtype-struct-for="AccelMap">
1566     </record>
1567     <callback name="AccelMapForeach" c:type="GtkAccelMapForeach">
1568       <return-value transfer-ownership="none">
1569         <type name="none" c:type="void"/>
1570       </return-value>
1571       <parameters>
1572         <parameter name="data" transfer-ownership="none">
1573           <type name="gpointer" c:type="gpointer"/>
1574         </parameter>
1575         <parameter name="accel_path" transfer-ownership="none">
1576           <type name="utf8" c:type="gchar*"/>
1577         </parameter>
1578         <parameter name="accel_key" transfer-ownership="none">
1579           <type name="guint" c:type="guint"/>
1580         </parameter>
1581         <parameter name="accel_mods" transfer-ownership="none">
1582           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1583         </parameter>
1584         <parameter name="changed" transfer-ownership="none">
1585           <type name="gboolean" c:type="gboolean"/>
1586         </parameter>
1587       </parameters>
1588     </callback>
1589     <class name="Accessible"
1590            c:symbol-prefix="accessible"
1591            c:type="GtkAccessible"
1592            parent="Atk.Object"
1593            glib:type-name="GtkAccessible"
1594            glib:get-type="gtk_accessible_get_type"
1595            glib:type-struct="AccessibleClass">
1596       <virtual-method name="connect_widget_destroyed"
1597                       invoker="connect_widget_destroyed">
1598         <return-value transfer-ownership="none">
1599           <type name="none" c:type="void"/>
1600         </return-value>
1601       </virtual-method>
1602       <method name="connect_widget_destroyed"
1603               c:identifier="gtk_accessible_connect_widget_destroyed">
1604         <return-value transfer-ownership="none">
1605           <type name="none" c:type="void"/>
1606         </return-value>
1607       </method>
1608       <method name="get_widget"
1609               c:identifier="gtk_accessible_get_widget"
1610               version="2.22">
1611         <doc xml:whitespace="preserve">Gets the #GtkWidget corresponding to the #GtkAccessible. The returned widget
1612 does not have a reference added, so you do not need to unref it.
1613 the #GtkAccessible, or %NULL.</doc>
1614         <return-value transfer-ownership="none">
1615           <doc xml:whitespace="preserve">pointer to the #GtkWidget corresponding to</doc>
1616           <type name="Widget" c:type="GtkWidget*"/>
1617         </return-value>
1618       </method>
1619       <method name="set_widget"
1620               c:identifier="gtk_accessible_set_widget"
1621               version="2.22">
1622         <doc xml:whitespace="preserve">Sets the #GtkWidget corresponding to the #GtkAccessible.</doc>
1623         <return-value transfer-ownership="none">
1624           <type name="none" c:type="void"/>
1625         </return-value>
1626         <parameters>
1627           <parameter name="widget" transfer-ownership="none">
1628             <doc xml:whitespace="preserve">a #GtkWidget</doc>
1629             <type name="Widget" c:type="GtkWidget*"/>
1630           </parameter>
1631         </parameters>
1632       </method>
1633       <field name="parent">
1634         <type name="Atk.Object" c:type="AtkObject"/>
1635       </field>
1636       <field name="priv">
1637         <type name="AccessiblePrivate" c:type="GtkAccessiblePrivate*"/>
1638       </field>
1639     </class>
1640     <record name="AccessibleClass"
1641             c:type="GtkAccessibleClass"
1642             glib:is-gtype-struct-for="Accessible">
1643       <field name="parent_class">
1644         <type name="Atk.ObjectClass" c:type="AtkObjectClass"/>
1645       </field>
1646       <field name="connect_widget_destroyed">
1647         <callback name="connect_widget_destroyed">
1648           <return-value transfer-ownership="none">
1649             <type name="none" c:type="void"/>
1650           </return-value>
1651           <parameters>
1652             <parameter name="accessible" transfer-ownership="none">
1653               <type name="Accessible" c:type="GtkAccessible*"/>
1654             </parameter>
1655           </parameters>
1656         </callback>
1657       </field>
1658       <field name="_gtk_reserved1" introspectable="0">
1659         <callback name="_gtk_reserved1">
1660           <return-value transfer-ownership="none">
1661             <type name="none" c:type="void"/>
1662           </return-value>
1663         </callback>
1664       </field>
1665       <field name="_gtk_reserved2" introspectable="0">
1666         <callback name="_gtk_reserved2">
1667           <return-value transfer-ownership="none">
1668             <type name="none" c:type="void"/>
1669           </return-value>
1670         </callback>
1671       </field>
1672       <field name="_gtk_reserved3" introspectable="0">
1673         <callback name="_gtk_reserved3">
1674           <return-value transfer-ownership="none">
1675             <type name="none" c:type="void"/>
1676           </return-value>
1677         </callback>
1678       </field>
1679       <field name="_gtk_reserved4" introspectable="0">
1680         <callback name="_gtk_reserved4">
1681           <return-value transfer-ownership="none">
1682             <type name="none" c:type="void"/>
1683           </return-value>
1684         </callback>
1685       </field>
1686     </record>
1687     <record name="AccessiblePrivate"
1688             c:type="GtkAccessiblePrivate"
1689             disguised="1">
1690     </record>
1691     <class name="Action"
1692            c:symbol-prefix="action"
1693            c:type="GtkAction"
1694            parent="GObject.Object"
1695            glib:type-name="GtkAction"
1696            glib:get-type="gtk_action_get_type"
1697            glib:type-struct="ActionClass">
1698       <implements name="Buildable"/>
1699       <constructor name="new" c:identifier="gtk_action_new" version="2.4">
1700         <doc xml:whitespace="preserve">Creates a new #GtkAction object. To add the action to a
1701 #GtkActionGroup and set the accelerator for the action,
1702 call gtk_action_group_add_action_with_accel().
1703 See &lt;xref linkend="XML-UI"/&gt; for information on allowed action
1704 names.</doc>
1705         <return-value transfer-ownership="full">
1706           <doc xml:whitespace="preserve">a new #GtkAction</doc>
1707           <type name="Action" c:type="GtkAction*"/>
1708         </return-value>
1709         <parameters>
1710           <parameter name="name" transfer-ownership="none">
1711             <doc xml:whitespace="preserve">A unique name for the action</doc>
1712             <type name="utf8" c:type="gchar*"/>
1713           </parameter>
1714           <parameter name="label" transfer-ownership="none" allow-none="1">
1715             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
1716             <type name="utf8" c:type="gchar*"/>
1717           </parameter>
1718           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
1719             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
1720             <type name="utf8" c:type="gchar*"/>
1721           </parameter>
1722           <parameter name="stock_id" transfer-ownership="none">
1723             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
1724             <type name="utf8" c:type="gchar*"/>
1725           </parameter>
1726         </parameters>
1727       </constructor>
1728       <virtual-method name="connect_proxy">
1729         <return-value transfer-ownership="none">
1730           <type name="none" c:type="void"/>
1731         </return-value>
1732         <parameters>
1733           <parameter name="proxy" transfer-ownership="none">
1734             <type name="Widget" c:type="GtkWidget*"/>
1735           </parameter>
1736         </parameters>
1737       </virtual-method>
1738       <virtual-method name="create_menu" invoker="create_menu" version="2.12">
1739         <doc xml:whitespace="preserve">If @action provides a #GtkMenu widget as a submenu for the menu
1740 item or the toolbar item it creates, this function returns an
1741 instance of that menu.</doc>
1742         <return-value transfer-ownership="full">
1743           <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
1744           <type name="Widget" c:type="GtkWidget*"/>
1745         </return-value>
1746       </virtual-method>
1747       <virtual-method name="create_menu_item"
1748                       invoker="create_menu_item"
1749                       version="2.4">
1750         <doc xml:whitespace="preserve">Creates a menu item widget that proxies for the given action.</doc>
1751         <return-value transfer-ownership="full">
1752           <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
1753           <type name="Widget" c:type="GtkWidget*"/>
1754         </return-value>
1755       </virtual-method>
1756       <virtual-method name="create_tool_item"
1757                       invoker="create_tool_item"
1758                       version="2.4">
1759         <doc xml:whitespace="preserve">Creates a toolbar item widget that proxies for the given action.</doc>
1760         <return-value transfer-ownership="full">
1761           <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
1762           <type name="Widget" c:type="GtkWidget*"/>
1763         </return-value>
1764       </virtual-method>
1765       <virtual-method name="disconnect_proxy">
1766         <return-value transfer-ownership="none">
1767           <type name="none" c:type="void"/>
1768         </return-value>
1769         <parameters>
1770           <parameter name="proxy" transfer-ownership="none">
1771             <type name="Widget" c:type="GtkWidget*"/>
1772           </parameter>
1773         </parameters>
1774       </virtual-method>
1775       <method name="activate" c:identifier="gtk_action_activate" version="2.4">
1776         <doc xml:whitespace="preserve">Emits the "activate" signal on the specified action, if it isn't 
1777 insensitive. This gets called by the proxy widgets when they get 
1778 activated.
1779 It can also be used to manually activate an action.</doc>
1780         <return-value transfer-ownership="none">
1781           <type name="none" c:type="void"/>
1782         </return-value>
1783       </method>
1784       <method name="block_activate"
1785               c:identifier="gtk_action_block_activate"
1786               version="2.16">
1787         <doc xml:whitespace="preserve">Disable activation signals from the action 
1788 This is needed when updating the state of your proxy
1789 #GtkActivatable widget could result in calling gtk_action_activate(),
1790 this is a convenience function to avoid recursing in those
1791 cases (updating toggle state for instance).</doc>
1792         <return-value transfer-ownership="none">
1793           <type name="none" c:type="void"/>
1794         </return-value>
1795       </method>
1796       <method name="connect_accelerator"
1797               c:identifier="gtk_action_connect_accelerator"
1798               version="2.4">
1799         <doc xml:whitespace="preserve">Installs the accelerator for @action if @action has an
1800 accel path and group. See gtk_action_set_accel_path() and 
1801 gtk_action_set_accel_group()
1802 Since multiple proxies may independently trigger the installation
1803 of the accelerator, the @action counts the number of times this
1804 function has been called and doesn't remove the accelerator until
1805 gtk_action_disconnect_accelerator() has been called as many times.</doc>
1806         <return-value transfer-ownership="none">
1807           <type name="none" c:type="void"/>
1808         </return-value>
1809       </method>
1810       <method name="create_icon"
1811               c:identifier="gtk_action_create_icon"
1812               version="2.4">
1813         <doc xml:whitespace="preserve">This function is intended for use by action implementations to
1814 create icons displayed in the proxy widgets.</doc>
1815         <return-value transfer-ownership="full">
1816           <doc xml:whitespace="preserve">a widget that displays the icon for this action.</doc>
1817           <type name="Widget" c:type="GtkWidget*"/>
1818         </return-value>
1819         <parameters>
1820           <parameter name="icon_size" transfer-ownership="none">
1821             <doc xml:whitespace="preserve">the size of the icon that should be created.</doc>
1822             <type name="gint"/>
1823           </parameter>
1824         </parameters>
1825       </method>
1826       <method name="create_menu"
1827               c:identifier="gtk_action_create_menu"
1828               version="2.12">
1829         <doc xml:whitespace="preserve">If @action provides a #GtkMenu widget as a submenu for the menu
1830 item or the toolbar item it creates, this function returns an
1831 instance of that menu.</doc>
1832         <return-value transfer-ownership="full">
1833           <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
1834           <type name="Widget" c:type="GtkWidget*"/>
1835         </return-value>
1836       </method>
1837       <method name="create_menu_item"
1838               c:identifier="gtk_action_create_menu_item"
1839               version="2.4">
1840         <doc xml:whitespace="preserve">Creates a menu item widget that proxies for the given action.</doc>
1841         <return-value transfer-ownership="full">
1842           <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
1843           <type name="Widget" c:type="GtkWidget*"/>
1844         </return-value>
1845       </method>
1846       <method name="create_tool_item"
1847               c:identifier="gtk_action_create_tool_item"
1848               version="2.4">
1849         <doc xml:whitespace="preserve">Creates a toolbar item widget that proxies for the given action.</doc>
1850         <return-value transfer-ownership="full">
1851           <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
1852           <type name="Widget" c:type="GtkWidget*"/>
1853         </return-value>
1854       </method>
1855       <method name="disconnect_accelerator"
1856               c:identifier="gtk_action_disconnect_accelerator"
1857               version="2.4">
1858         <doc xml:whitespace="preserve">Undoes the effect of one call to gtk_action_connect_accelerator().</doc>
1859         <return-value transfer-ownership="none">
1860           <type name="none" c:type="void"/>
1861         </return-value>
1862       </method>
1863       <method name="get_accel_closure"
1864               c:identifier="gtk_action_get_accel_closure"
1865               version="2.8">
1866         <doc xml:whitespace="preserve">Returns the accel closure for this action.
1867 owned by GTK+ and must not be unreffed or modified.</doc>
1868         <return-value transfer-ownership="full">
1869           <doc xml:whitespace="preserve">the accel closure for this action. The returned closure is</doc>
1870           <type name="GObject.Closure" c:type="GClosure*"/>
1871         </return-value>
1872       </method>
1873       <method name="get_accel_path"
1874               c:identifier="gtk_action_get_accel_path"
1875               version="2.6">
1876         <doc xml:whitespace="preserve">Returns the accel path for this action.  
1877 if none is set. The returned string is owned by GTK+ 
1878 and must not be freed or modified.</doc>
1879         <return-value transfer-ownership="none">
1880           <doc xml:whitespace="preserve">the accel path for this action, or %NULL</doc>
1881           <type name="utf8" c:type="gchar*"/>
1882         </return-value>
1883       </method>
1884       <method name="get_always_show_image"
1885               c:identifier="gtk_action_get_always_show_image"
1886               version="2.20">
1887         <doc xml:whitespace="preserve">Returns whether @action&lt;!-- --&gt;'s menu item proxies will ignore the
1888 #GtkSettings:gtk-menu-images setting and always show their image,
1889 if available.</doc>
1890         <return-value transfer-ownership="none">
1891           <doc xml:whitespace="preserve">%TRUE if the menu item proxies will always show their image</doc>
1892           <type name="gboolean" c:type="gboolean"/>
1893         </return-value>
1894       </method>
1895       <method name="get_gicon"
1896               c:identifier="gtk_action_get_gicon"
1897               version="2.16">
1898         <doc xml:whitespace="preserve">Gets the gicon of @action.</doc>
1899         <return-value transfer-ownership="none">
1900           <doc xml:whitespace="preserve">The action's #GIcon if one is set.</doc>
1901           <type name="Gio.Icon" c:type="GIcon*"/>
1902         </return-value>
1903       </method>
1904       <method name="get_icon_name"
1905               c:identifier="gtk_action_get_icon_name"
1906               version="2.16">
1907         <doc xml:whitespace="preserve">Gets the icon name of @action.</doc>
1908         <return-value transfer-ownership="none">
1909           <doc xml:whitespace="preserve">the icon name</doc>
1910           <type name="utf8" c:type="gchar*"/>
1911         </return-value>
1912       </method>
1913       <method name="get_is_important"
1914               c:identifier="gtk_action_get_is_important"
1915               version="2.16">
1916         <doc xml:whitespace="preserve">Checks whether @action is important or not</doc>
1917         <return-value transfer-ownership="none">
1918           <doc xml:whitespace="preserve">whether @action is important</doc>
1919           <type name="gboolean" c:type="gboolean"/>
1920         </return-value>
1921       </method>
1922       <method name="get_label"
1923               c:identifier="gtk_action_get_label"
1924               version="2.16">
1925         <doc xml:whitespace="preserve">Gets the label text of @action.</doc>
1926         <return-value transfer-ownership="none">
1927           <doc xml:whitespace="preserve">the label text</doc>
1928           <type name="utf8" c:type="gchar*"/>
1929         </return-value>
1930       </method>
1931       <method name="get_name" c:identifier="gtk_action_get_name" version="2.4">
1932         <doc xml:whitespace="preserve">Returns the name of the action.
1933 be freed.</doc>
1934         <return-value transfer-ownership="none">
1935           <doc xml:whitespace="preserve">the name of the action. The string belongs to GTK+ and should not</doc>
1936           <type name="utf8" c:type="gchar*"/>
1937         </return-value>
1938       </method>
1939       <method name="get_proxies"
1940               c:identifier="gtk_action_get_proxies"
1941               version="2.4">
1942         <doc xml:whitespace="preserve">Returns the proxy widgets for an action.
1943 See also gtk_activatable_get_related_action().
1944 and must not be modified.</doc>
1945         <return-value transfer-ownership="none">
1946           <doc xml:whitespace="preserve">a #GSList of proxy widgets. The list is owned by GTK+</doc>
1947           <type name="GLib.SList" c:type="GSList*">
1948             <type name="Widget"/>
1949           </type>
1950         </return-value>
1951       </method>
1952       <method name="get_sensitive"
1953               c:identifier="gtk_action_get_sensitive"
1954               version="2.4">
1955         <doc xml:whitespace="preserve">Returns whether the action itself is sensitive. Note that this doesn't 
1956 necessarily mean effective sensitivity. See gtk_action_is_sensitive() 
1957 for that.</doc>
1958         <return-value transfer-ownership="none">
1959           <doc xml:whitespace="preserve">%TRUE if the action itself is sensitive.</doc>
1960           <type name="gboolean" c:type="gboolean"/>
1961         </return-value>
1962       </method>
1963       <method name="get_short_label"
1964               c:identifier="gtk_action_get_short_label"
1965               version="2.16">
1966         <doc xml:whitespace="preserve">Gets the short label text of @action.</doc>
1967         <return-value transfer-ownership="none">
1968           <doc xml:whitespace="preserve">the short label text.</doc>
1969           <type name="utf8" c:type="gchar*"/>
1970         </return-value>
1971       </method>
1972       <method name="get_stock_id"
1973               c:identifier="gtk_action_get_stock_id"
1974               version="2.16">
1975         <doc xml:whitespace="preserve">Gets the stock id of @action.</doc>
1976         <return-value transfer-ownership="none">
1977           <doc xml:whitespace="preserve">the stock id</doc>
1978           <type name="utf8" c:type="gchar*"/>
1979         </return-value>
1980       </method>
1981       <method name="get_tooltip"
1982               c:identifier="gtk_action_get_tooltip"
1983               version="2.16">
1984         <doc xml:whitespace="preserve">Gets the tooltip text of @action.</doc>
1985         <return-value transfer-ownership="none">
1986           <doc xml:whitespace="preserve">the tooltip text</doc>
1987           <type name="utf8" c:type="gchar*"/>
1988         </return-value>
1989       </method>
1990       <method name="get_visible"
1991               c:identifier="gtk_action_get_visible"
1992               version="2.4">
1993         <doc xml:whitespace="preserve">Returns whether the action itself is visible. Note that this doesn't 
1994 necessarily mean effective visibility. See gtk_action_is_sensitive() 
1995 for that.</doc>
1996         <return-value transfer-ownership="none">
1997           <doc xml:whitespace="preserve">%TRUE if the action itself is visible.</doc>
1998           <type name="gboolean" c:type="gboolean"/>
1999         </return-value>
2000       </method>
2001       <method name="get_visible_horizontal"
2002               c:identifier="gtk_action_get_visible_horizontal"
2003               version="2.16">
2004         <doc xml:whitespace="preserve">Checks whether @action is visible when horizontal</doc>
2005         <return-value transfer-ownership="none">
2006           <doc xml:whitespace="preserve">whether @action is visible when horizontal</doc>
2007           <type name="gboolean" c:type="gboolean"/>
2008         </return-value>
2009       </method>
2010       <method name="get_visible_vertical"
2011               c:identifier="gtk_action_get_visible_vertical"
2012               version="2.16">
2013         <doc xml:whitespace="preserve">Checks whether @action is visible when horizontal</doc>
2014         <return-value transfer-ownership="none">
2015           <doc xml:whitespace="preserve">whether @action is visible when horizontal</doc>
2016           <type name="gboolean" c:type="gboolean"/>
2017         </return-value>
2018       </method>
2019       <method name="is_sensitive"
2020               c:identifier="gtk_action_is_sensitive"
2021               version="2.4">
2022         <doc xml:whitespace="preserve">Returns whether the action is effectively sensitive.
2023 are both sensitive.</doc>
2024         <return-value transfer-ownership="none">
2025           <doc xml:whitespace="preserve">%TRUE if the action and its associated action group</doc>
2026           <type name="gboolean" c:type="gboolean"/>
2027         </return-value>
2028       </method>
2029       <method name="is_visible"
2030               c:identifier="gtk_action_is_visible"
2031               version="2.4">
2032         <doc xml:whitespace="preserve">Returns whether the action is effectively visible.
2033 are both visible.</doc>
2034         <return-value transfer-ownership="none">
2035           <doc xml:whitespace="preserve">%TRUE if the action and its associated action group</doc>
2036           <type name="gboolean" c:type="gboolean"/>
2037         </return-value>
2038       </method>
2039       <method name="set_accel_group"
2040               c:identifier="gtk_action_set_accel_group"
2041               version="2.4">
2042         <doc xml:whitespace="preserve">Sets the #GtkAccelGroup in which the accelerator for this action
2043 will be installed.</doc>
2044         <return-value transfer-ownership="none">
2045           <type name="none" c:type="void"/>
2046         </return-value>
2047         <parameters>
2048           <parameter name="accel_group"
2049                      transfer-ownership="none"
2050                      allow-none="1">
2051             <doc xml:whitespace="preserve">a #GtkAccelGroup or %NULL</doc>
2052             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
2053           </parameter>
2054         </parameters>
2055       </method>
2056       <method name="set_accel_path"
2057               c:identifier="gtk_action_set_accel_path"
2058               version="2.4">
2059         <doc xml:whitespace="preserve">Sets the accel path for this action.  All proxy widgets associated
2060 with the action will have this accel path, so that their
2061 accelerators are consistent.
2062 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
2063 pass a static string, you can save some memory by interning it first with 
2064 g_intern_static_string().</doc>
2065         <return-value transfer-ownership="none">
2066           <type name="none" c:type="void"/>
2067         </return-value>
2068         <parameters>
2069           <parameter name="accel_path" transfer-ownership="none">
2070             <doc xml:whitespace="preserve">the accelerator path</doc>
2071             <type name="utf8" c:type="gchar*"/>
2072           </parameter>
2073         </parameters>
2074       </method>
2075       <method name="set_always_show_image"
2076               c:identifier="gtk_action_set_always_show_image"
2077               version="2.20">
2078         <doc xml:whitespace="preserve">Sets whether @action&lt;!-- --&gt;'s menu item proxies will ignore the
2079 #GtkSettings:gtk-menu-images setting and always show their image, if available.
2080 Use this if the menu item would be useless or hard to use
2081 without their image.</doc>
2082         <return-value transfer-ownership="none">
2083           <type name="none" c:type="void"/>
2084         </return-value>
2085         <parameters>
2086           <parameter name="always_show" transfer-ownership="none">
2087             <doc xml:whitespace="preserve">%TRUE if menuitem proxies should always show their image</doc>
2088             <type name="gboolean" c:type="gboolean"/>
2089           </parameter>
2090         </parameters>
2091       </method>
2092       <method name="set_gicon"
2093               c:identifier="gtk_action_set_gicon"
2094               version="2.16">
2095         <doc xml:whitespace="preserve">Sets the icon of @action.</doc>
2096         <return-value transfer-ownership="none">
2097           <type name="none" c:type="void"/>
2098         </return-value>
2099         <parameters>
2100           <parameter name="icon" transfer-ownership="none">
2101             <doc xml:whitespace="preserve">the #GIcon to set</doc>
2102             <type name="Gio.Icon" c:type="GIcon*"/>
2103           </parameter>
2104         </parameters>
2105       </method>
2106       <method name="set_icon_name"
2107               c:identifier="gtk_action_set_icon_name"
2108               version="2.16">
2109         <doc xml:whitespace="preserve">Sets the icon name on @action</doc>
2110         <return-value transfer-ownership="none">
2111           <type name="none" c:type="void"/>
2112         </return-value>
2113         <parameters>
2114           <parameter name="icon_name" transfer-ownership="none">
2115             <doc xml:whitespace="preserve">the icon name to set</doc>
2116             <type name="utf8" c:type="gchar*"/>
2117           </parameter>
2118         </parameters>
2119       </method>
2120       <method name="set_is_important"
2121               c:identifier="gtk_action_set_is_important"
2122               version="2.16">
2123         <doc xml:whitespace="preserve">Sets whether the action is important, this attribute is used
2124 primarily by toolbar items to decide whether to show a label
2125 or not.</doc>
2126         <return-value transfer-ownership="none">
2127           <type name="none" c:type="void"/>
2128         </return-value>
2129         <parameters>
2130           <parameter name="is_important" transfer-ownership="none">
2131             <doc xml:whitespace="preserve">%TRUE to make the action important</doc>
2132             <type name="gboolean" c:type="gboolean"/>
2133           </parameter>
2134         </parameters>
2135       </method>
2136       <method name="set_label"
2137               c:identifier="gtk_action_set_label"
2138               version="2.16">
2139         <doc xml:whitespace="preserve">Sets the label of @action.</doc>
2140         <return-value transfer-ownership="none">
2141           <type name="none" c:type="void"/>
2142         </return-value>
2143         <parameters>
2144           <parameter name="label" transfer-ownership="none">
2145             <doc xml:whitespace="preserve">the label text to set</doc>
2146             <type name="utf8" c:type="gchar*"/>
2147           </parameter>
2148         </parameters>
2149       </method>
2150       <method name="set_sensitive"
2151               c:identifier="gtk_action_set_sensitive"
2152               version="2.6">
2153         <doc xml:whitespace="preserve">Sets the ::sensitive property of the action to @sensitive. Note that 
2154 this doesn't necessarily mean effective sensitivity. See 
2155 gtk_action_is_sensitive() 
2156 for that.</doc>
2157         <return-value transfer-ownership="none">
2158           <type name="none" c:type="void"/>
2159         </return-value>
2160         <parameters>
2161           <parameter name="sensitive" transfer-ownership="none">
2162             <doc xml:whitespace="preserve">%TRUE to make the action sensitive</doc>
2163             <type name="gboolean" c:type="gboolean"/>
2164           </parameter>
2165         </parameters>
2166       </method>
2167       <method name="set_short_label"
2168               c:identifier="gtk_action_set_short_label"
2169               version="2.16">
2170         <doc xml:whitespace="preserve">Sets a shorter label text on @action.</doc>
2171         <return-value transfer-ownership="none">
2172           <type name="none" c:type="void"/>
2173         </return-value>
2174         <parameters>
2175           <parameter name="short_label" transfer-ownership="none">
2176             <doc xml:whitespace="preserve">the label text to set</doc>
2177             <type name="utf8" c:type="gchar*"/>
2178           </parameter>
2179         </parameters>
2180       </method>
2181       <method name="set_stock_id"
2182               c:identifier="gtk_action_set_stock_id"
2183               version="2.16">
2184         <doc xml:whitespace="preserve">Sets the stock id on @action</doc>
2185         <return-value transfer-ownership="none">
2186           <type name="none" c:type="void"/>
2187         </return-value>
2188         <parameters>
2189           <parameter name="stock_id" transfer-ownership="none">
2190             <doc xml:whitespace="preserve">the stock id</doc>
2191             <type name="utf8" c:type="gchar*"/>
2192           </parameter>
2193         </parameters>
2194       </method>
2195       <method name="set_tooltip"
2196               c:identifier="gtk_action_set_tooltip"
2197               version="2.16">
2198         <doc xml:whitespace="preserve">Sets the tooltip text on @action</doc>
2199         <return-value transfer-ownership="none">
2200           <type name="none" c:type="void"/>
2201         </return-value>
2202         <parameters>
2203           <parameter name="tooltip" transfer-ownership="none">
2204             <doc xml:whitespace="preserve">the tooltip text</doc>
2205             <type name="utf8" c:type="gchar*"/>
2206           </parameter>
2207         </parameters>
2208       </method>
2209       <method name="set_visible"
2210               c:identifier="gtk_action_set_visible"
2211               version="2.6">
2212         <doc xml:whitespace="preserve">Sets the ::visible property of the action to @visible. Note that 
2213 this doesn't necessarily mean effective visibility. See 
2214 gtk_action_is_visible() 
2215 for that.</doc>
2216         <return-value transfer-ownership="none">
2217           <type name="none" c:type="void"/>
2218         </return-value>
2219         <parameters>
2220           <parameter name="visible" transfer-ownership="none">
2221             <doc xml:whitespace="preserve">%TRUE to make the action visible</doc>
2222             <type name="gboolean" c:type="gboolean"/>
2223           </parameter>
2224         </parameters>
2225       </method>
2226       <method name="set_visible_horizontal"
2227               c:identifier="gtk_action_set_visible_horizontal"
2228               version="2.16">
2229         <doc xml:whitespace="preserve">Sets whether @action is visible when horizontal</doc>
2230         <return-value transfer-ownership="none">
2231           <type name="none" c:type="void"/>
2232         </return-value>
2233         <parameters>
2234           <parameter name="visible_horizontal" transfer-ownership="none">
2235             <doc xml:whitespace="preserve">whether the action is visible horizontally</doc>
2236             <type name="gboolean" c:type="gboolean"/>
2237           </parameter>
2238         </parameters>
2239       </method>
2240       <method name="set_visible_vertical"
2241               c:identifier="gtk_action_set_visible_vertical"
2242               version="2.16">
2243         <doc xml:whitespace="preserve">Sets whether @action is visible when vertical</doc>
2244         <return-value transfer-ownership="none">
2245           <type name="none" c:type="void"/>
2246         </return-value>
2247         <parameters>
2248           <parameter name="visible_vertical" transfer-ownership="none">
2249             <doc xml:whitespace="preserve">whether the action is visible vertically</doc>
2250             <type name="gboolean" c:type="gboolean"/>
2251           </parameter>
2252         </parameters>
2253       </method>
2254       <method name="unblock_activate"
2255               c:identifier="gtk_action_unblock_activate"
2256               version="2.16">
2257         <doc xml:whitespace="preserve">Reenable activation signals from the action</doc>
2258         <return-value transfer-ownership="none">
2259           <type name="none" c:type="void"/>
2260         </return-value>
2261       </method>
2262       <property name="action-group" writable="1" transfer-ownership="none">
2263         <type name="ActionGroup"/>
2264       </property>
2265       <property name="always-show-image"
2266                 version="2.20"
2267                 writable="1"
2268                 construct="1"
2269                 transfer-ownership="none">
2270         <doc xml:whitespace="preserve">If %TRUE, the action's menu item proxies will ignore the #GtkSettings:gtk-menu-images 
2271 setting and always show their image, if available.
2272 Use this property if the menu item would be useless or hard to use
2273 without their image.</doc>
2274         <type name="gboolean"/>
2275       </property>
2276       <property name="gicon"
2277                 version="2.16"
2278                 writable="1"
2279                 transfer-ownership="none">
2280         <doc xml:whitespace="preserve">The #GIcon displayed in the #GtkAction.
2281 Note that the stock icon is preferred, if the #GtkAction:stock-id 
2282 property holds the id of an existing stock icon.
2283 This is an appearance property and thus only applies if 
2284 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2285         <type name="Gio.Icon"/>
2286       </property>
2287       <property name="hide-if-empty" writable="1" transfer-ownership="none">
2288         <type name="gboolean"/>
2289       </property>
2290       <property name="icon-name"
2291                 version="2.10"
2292                 writable="1"
2293                 transfer-ownership="none">
2294         <doc xml:whitespace="preserve">The name of the icon from the icon theme. 
2295 Note that the stock icon is preferred, if the #GtkAction:stock-id 
2296 property holds the id of an existing stock icon, and the #GIcon is
2297 preferred if the #GtkAction:gicon property is set. 
2298 This is an appearance property and thus only applies if 
2299 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2300         <type name="utf8"/>
2301       </property>
2302       <property name="is-important" writable="1" transfer-ownership="none">
2303         <type name="gboolean"/>
2304       </property>
2305       <property name="label" writable="1" transfer-ownership="none">
2306         <doc xml:whitespace="preserve">The label used for menu items and buttons that activate
2307 this action. If the label is %NULL, GTK+ uses the stock 
2308 label specified via the stock-id property.
2309 This is an appearance property and thus only applies if 
2310 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2311         <type name="utf8"/>
2312       </property>
2313       <property name="name"
2314                 writable="1"
2315                 construct-only="1"
2316                 transfer-ownership="none">
2317         <type name="utf8"/>
2318       </property>
2319       <property name="sensitive" writable="1" transfer-ownership="none">
2320         <type name="gboolean"/>
2321       </property>
2322       <property name="short-label" writable="1" transfer-ownership="none">
2323         <doc xml:whitespace="preserve">A shorter label that may be used on toolbar buttons.
2324 This is an appearance property and thus only applies if 
2325 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2326         <type name="utf8"/>
2327       </property>
2328       <property name="stock-id" writable="1" transfer-ownership="none">
2329         <doc xml:whitespace="preserve">The stock icon displayed in widgets representing this action.
2330 This is an appearance property and thus only applies if 
2331 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2332         <type name="utf8"/>
2333       </property>
2334       <property name="tooltip" writable="1" transfer-ownership="none">
2335         <type name="utf8"/>
2336       </property>
2337       <property name="visible" writable="1" transfer-ownership="none">
2338         <type name="gboolean"/>
2339       </property>
2340       <property name="visible-horizontal"
2341                 writable="1"
2342                 transfer-ownership="none">
2343         <type name="gboolean"/>
2344       </property>
2345       <property name="visible-overflown"
2346                 version="2.6"
2347                 writable="1"
2348                 transfer-ownership="none">
2349         <doc xml:whitespace="preserve">When %TRUE, toolitem proxies for this action are represented in the 
2350 toolbar overflow menu.</doc>
2351         <type name="gboolean"/>
2352       </property>
2353       <property name="visible-vertical" writable="1" transfer-ownership="none">
2354         <type name="gboolean"/>
2355       </property>
2356       <field name="object">
2357         <type name="GObject.Object" c:type="GObject"/>
2358       </field>
2359       <field name="private_data">
2360         <type name="ActionPrivate" c:type="GtkActionPrivate*"/>
2361       </field>
2362       <glib:signal name="activate" version="2.4">
2363         <doc xml:whitespace="preserve">The "activate" signal is emitted when the action is activated.</doc>
2364         <return-value transfer-ownership="none">
2365           <type name="none"/>
2366         </return-value>
2367       </glib:signal>
2368     </class>
2369     <record name="ActionClass"
2370             c:type="GtkActionClass"
2371             glib:is-gtype-struct-for="Action">
2372       <field name="parent_class">
2373         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2374       </field>
2375       <field name="activate">
2376         <callback name="activate">
2377           <return-value transfer-ownership="none">
2378             <type name="none" c:type="void"/>
2379           </return-value>
2380           <parameters>
2381             <parameter name="action" transfer-ownership="none">
2382               <type name="Action" c:type="GtkAction*"/>
2383             </parameter>
2384           </parameters>
2385         </callback>
2386       </field>
2387       <field name="menu_item_type">
2388         <type name="GType" c:type="GType"/>
2389       </field>
2390       <field name="toolbar_item_type">
2391         <type name="GType" c:type="GType"/>
2392       </field>
2393       <field name="create_menu_item">
2394         <callback name="create_menu_item">
2395           <return-value transfer-ownership="full">
2396             <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
2397             <type name="Widget" c:type="GtkWidget*"/>
2398           </return-value>
2399           <parameters>
2400             <parameter name="action" transfer-ownership="none">
2401               <type name="Action" c:type="GtkAction*"/>
2402             </parameter>
2403           </parameters>
2404         </callback>
2405       </field>
2406       <field name="create_tool_item">
2407         <callback name="create_tool_item">
2408           <return-value transfer-ownership="full">
2409             <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
2410             <type name="Widget" c:type="GtkWidget*"/>
2411           </return-value>
2412           <parameters>
2413             <parameter name="action" transfer-ownership="none">
2414               <type name="Action" c:type="GtkAction*"/>
2415             </parameter>
2416           </parameters>
2417         </callback>
2418       </field>
2419       <field name="connect_proxy">
2420         <callback name="connect_proxy">
2421           <return-value transfer-ownership="none">
2422             <type name="none" c:type="void"/>
2423           </return-value>
2424           <parameters>
2425             <parameter name="action" transfer-ownership="none">
2426               <type name="Action" c:type="GtkAction*"/>
2427             </parameter>
2428             <parameter name="proxy" transfer-ownership="none">
2429               <type name="Widget" c:type="GtkWidget*"/>
2430             </parameter>
2431           </parameters>
2432         </callback>
2433       </field>
2434       <field name="disconnect_proxy">
2435         <callback name="disconnect_proxy">
2436           <return-value transfer-ownership="none">
2437             <type name="none" c:type="void"/>
2438           </return-value>
2439           <parameters>
2440             <parameter name="action" transfer-ownership="none">
2441               <type name="Action" c:type="GtkAction*"/>
2442             </parameter>
2443             <parameter name="proxy" transfer-ownership="none">
2444               <type name="Widget" c:type="GtkWidget*"/>
2445             </parameter>
2446           </parameters>
2447         </callback>
2448       </field>
2449       <field name="create_menu">
2450         <callback name="create_menu">
2451           <return-value transfer-ownership="full">
2452             <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
2453             <type name="Widget" c:type="GtkWidget*"/>
2454           </return-value>
2455           <parameters>
2456             <parameter name="action" transfer-ownership="none">
2457               <type name="Action" c:type="GtkAction*"/>
2458             </parameter>
2459           </parameters>
2460         </callback>
2461       </field>
2462       <field name="_gtk_reserved2" introspectable="0">
2463         <callback name="_gtk_reserved2">
2464           <return-value transfer-ownership="none">
2465             <type name="none" c:type="void"/>
2466           </return-value>
2467         </callback>
2468       </field>
2469       <field name="_gtk_reserved3" introspectable="0">
2470         <callback name="_gtk_reserved3">
2471           <return-value transfer-ownership="none">
2472             <type name="none" c:type="void"/>
2473           </return-value>
2474         </callback>
2475       </field>
2476       <field name="_gtk_reserved4" introspectable="0">
2477         <callback name="_gtk_reserved4">
2478           <return-value transfer-ownership="none">
2479             <type name="none" c:type="void"/>
2480           </return-value>
2481         </callback>
2482       </field>
2483     </record>
2484     <record name="ActionEntry" c:type="GtkActionEntry">
2485       <doc xml:whitespace="preserve">#GtkActionEntry structs are used with gtk_action_group_add_actions() to
2486 construct actions.</doc>
2487       <field name="name" writable="1">
2488         <type name="utf8" c:type="gchar*"/>
2489       </field>
2490       <field name="stock_id" writable="1">
2491         <type name="utf8" c:type="gchar*"/>
2492       </field>
2493       <field name="label" writable="1">
2494         <type name="utf8" c:type="gchar*"/>
2495       </field>
2496       <field name="accelerator" writable="1">
2497         <type name="utf8" c:type="gchar*"/>
2498       </field>
2499       <field name="tooltip" writable="1">
2500         <type name="utf8" c:type="gchar*"/>
2501       </field>
2502       <field name="callback" writable="1">
2503         <type name="GObject.Callback" c:type="GCallback"/>
2504       </field>
2505     </record>
2506     <class name="ActionGroup"
2507            c:symbol-prefix="action_group"
2508            c:type="GtkActionGroup"
2509            parent="GObject.Object"
2510            glib:type-name="GtkActionGroup"
2511            glib:get-type="gtk_action_group_get_type"
2512            glib:type-struct="ActionGroupClass">
2513       <implements name="Buildable"/>
2514       <constructor name="new"
2515                    c:identifier="gtk_action_group_new"
2516                    version="2.4">
2517         <doc xml:whitespace="preserve">Creates a new #GtkActionGroup object. The name of the action group
2518 is used when associating &lt;link linkend="Action-Accel"&gt;keybindings&lt;/link&gt; 
2519 with the actions.</doc>
2520         <return-value transfer-ownership="full">
2521           <doc xml:whitespace="preserve">the new #GtkActionGroup</doc>
2522           <type name="ActionGroup" c:type="GtkActionGroup*"/>
2523         </return-value>
2524         <parameters>
2525           <parameter name="name" transfer-ownership="none">
2526             <doc xml:whitespace="preserve">the name of the action group.</doc>
2527             <type name="utf8" c:type="gchar*"/>
2528           </parameter>
2529         </parameters>
2530       </constructor>
2531       <virtual-method name="get_action" invoker="get_action" version="2.4">
2532         <doc xml:whitespace="preserve">Looks up an action in the action group by name.</doc>
2533         <return-value transfer-ownership="none">
2534           <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
2535           <type name="Action" c:type="GtkAction*"/>
2536         </return-value>
2537         <parameters>
2538           <parameter name="action_name" transfer-ownership="none">
2539             <doc xml:whitespace="preserve">the name of the action</doc>
2540             <type name="utf8" c:type="gchar*"/>
2541           </parameter>
2542         </parameters>
2543       </virtual-method>
2544       <method name="add_action"
2545               c:identifier="gtk_action_group_add_action"
2546               version="2.4">
2547         <doc xml:whitespace="preserve">Adds an action object to the action group. Note that this function
2548 does not set up the accel path of the action, which can lead to problems
2549 if a user tries to modify the accelerator of a menuitem associated with
2550 the action. Therefore you must either set the accel path yourself with
2551 gtk_action_set_accel_path(), or use 
2552 &lt;literal&gt;gtk_action_group_add_action_with_accel (..., NULL)&lt;/literal&gt;.</doc>
2553         <return-value transfer-ownership="none">
2554           <type name="none" c:type="void"/>
2555         </return-value>
2556         <parameters>
2557           <parameter name="action" transfer-ownership="none">
2558             <doc xml:whitespace="preserve">an action</doc>
2559             <type name="Action" c:type="GtkAction*"/>
2560           </parameter>
2561         </parameters>
2562       </method>
2563       <method name="add_action_with_accel"
2564               c:identifier="gtk_action_group_add_action_with_accel"
2565               version="2.4">
2566         <doc xml:whitespace="preserve">Adds an action object to the action group and sets up the accelerator.
2567 If @accelerator is %NULL, attempts to use the accelerator associated 
2568 with the stock_id of the action. 
2569 Accel paths are set to
2570 &lt;literal&gt;&amp;lt;Actions&amp;gt;/&lt;replaceable&gt;group-name&lt;/replaceable&gt;/&lt;replaceable&gt;action-name&lt;/replaceable&gt;&lt;/literal&gt;.</doc>
2571         <return-value transfer-ownership="none">
2572           <type name="none" c:type="void"/>
2573         </return-value>
2574         <parameters>
2575           <parameter name="action" transfer-ownership="none">
2576             <doc xml:whitespace="preserve">the action to add</doc>
2577             <type name="Action" c:type="GtkAction*"/>
2578           </parameter>
2579           <parameter name="accelerator"
2580                      transfer-ownership="none"
2581                      allow-none="1">
2582             <doc xml:whitespace="preserve">the accelerator for the action, in the format understood by gtk_accelerator_parse(), or "" for no accelerator, or %NULL to use the stock accelerator</doc>
2583             <type name="utf8" c:type="gchar*"/>
2584           </parameter>
2585         </parameters>
2586       </method>
2587       <method name="add_actions"
2588               c:identifier="gtk_action_group_add_actions"
2589               version="2.4">
2590         <doc xml:whitespace="preserve">This is a convenience function to create a number of actions and add them 
2591 to the action group.
2592 The "activate" signals of the actions are connected to the callbacks and 
2593 their accel paths are set to 
2594 &lt;literal&gt;&amp;lt;Actions&amp;gt;/&lt;replaceable&gt;group-name&lt;/replaceable&gt;/&lt;replaceable&gt;action-name&lt;/replaceable&gt;&lt;/literal&gt;.</doc>
2595         <return-value transfer-ownership="none">
2596           <type name="none" c:type="void"/>
2597         </return-value>
2598         <parameters>
2599           <parameter name="entries" transfer-ownership="none">
2600             <doc xml:whitespace="preserve">an array of action descriptions</doc>
2601             <type name="ActionEntry" c:type="GtkActionEntry*"/>
2602           </parameter>
2603           <parameter name="n_entries" transfer-ownership="none">
2604             <doc xml:whitespace="preserve">the number of entries</doc>
2605             <type name="guint" c:type="guint"/>
2606           </parameter>
2607           <parameter name="user_data" transfer-ownership="none">
2608             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2609             <type name="gpointer" c:type="gpointer"/>
2610           </parameter>
2611         </parameters>
2612       </method>
2613       <method name="add_actions_full"
2614               c:identifier="gtk_action_group_add_actions_full"
2615               version="2.4">
2616         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_actions() adds a #GDestroyNotify
2617 callback for @user_data.</doc>
2618         <return-value transfer-ownership="none">
2619           <type name="none" c:type="void"/>
2620         </return-value>
2621         <parameters>
2622           <parameter name="entries" transfer-ownership="none">
2623             <doc xml:whitespace="preserve">an array of action descriptions</doc>
2624             <type name="ActionEntry" c:type="GtkActionEntry*"/>
2625           </parameter>
2626           <parameter name="n_entries" transfer-ownership="none">
2627             <doc xml:whitespace="preserve">the number of entries</doc>
2628             <type name="guint" c:type="guint"/>
2629           </parameter>
2630           <parameter name="user_data" transfer-ownership="none">
2631             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2632             <type name="gpointer" c:type="gpointer"/>
2633           </parameter>
2634           <parameter name="destroy" transfer-ownership="none" scope="async">
2635             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2636             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2637           </parameter>
2638         </parameters>
2639       </method>
2640       <method name="add_radio_actions"
2641               c:identifier="gtk_action_group_add_radio_actions"
2642               version="2.4"
2643               introspectable="0">
2644         <doc xml:whitespace="preserve">This is a convenience routine to create a group of radio actions and
2645 add them to the action group. 
2646 The "changed" signal of the first radio action is connected to the 
2647 &lt;literal&gt;&amp;lt;Actions&amp;gt;/&lt;replaceable&gt;group-name&lt;/replaceable&gt;/&lt;replaceable&gt;action-name&lt;/replaceable&gt;&lt;/literal&gt;.</doc>
2648         <return-value transfer-ownership="none">
2649           <type name="none" c:type="void"/>
2650         </return-value>
2651         <parameters>
2652           <parameter name="entries" transfer-ownership="none">
2653             <doc xml:whitespace="preserve">an array of radio action descriptions</doc>
2654             <type name="RadioActionEntry" c:type="GtkRadioActionEntry*"/>
2655           </parameter>
2656           <parameter name="n_entries" transfer-ownership="none">
2657             <doc xml:whitespace="preserve">the number of entries</doc>
2658             <type name="guint" c:type="guint"/>
2659           </parameter>
2660           <parameter name="value" transfer-ownership="none">
2661             <doc xml:whitespace="preserve">the value of the action to activate initially, or -1 if no action should be activated</doc>
2662             <type name="gint" c:type="gint"/>
2663           </parameter>
2664           <parameter name="on_change" transfer-ownership="none" closure="4">
2665             <doc xml:whitespace="preserve">the callback to connect to the changed signal</doc>
2666             <type name="GObject.Callback" c:type="GCallback"/>
2667           </parameter>
2668           <parameter name="user_data" transfer-ownership="none">
2669             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2670             <type name="gpointer" c:type="gpointer"/>
2671           </parameter>
2672         </parameters>
2673       </method>
2674       <method name="add_radio_actions_full"
2675               c:identifier="gtk_action_group_add_radio_actions_full"
2676               version="2.4">
2677         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_radio_actions() adds a 
2678 #GDestroyNotify callback for @user_data.</doc>
2679         <return-value transfer-ownership="none">
2680           <type name="none" c:type="void"/>
2681         </return-value>
2682         <parameters>
2683           <parameter name="entries" transfer-ownership="none">
2684             <doc xml:whitespace="preserve">an array of radio action descriptions</doc>
2685             <type name="RadioActionEntry" c:type="GtkRadioActionEntry*"/>
2686           </parameter>
2687           <parameter name="n_entries" transfer-ownership="none">
2688             <doc xml:whitespace="preserve">the number of entries</doc>
2689             <type name="guint" c:type="guint"/>
2690           </parameter>
2691           <parameter name="value" transfer-ownership="none">
2692             <doc xml:whitespace="preserve">the value of the action to activate initially, or -1 if no action should be activated</doc>
2693             <type name="gint" c:type="gint"/>
2694           </parameter>
2695           <parameter name="on_change"
2696                      transfer-ownership="none"
2697                      scope="notified"
2698                      closure="4"
2699                      destroy="5">
2700             <doc xml:whitespace="preserve">the callback to connect to the changed signal</doc>
2701             <type name="GObject.Callback" c:type="GCallback"/>
2702           </parameter>
2703           <parameter name="user_data" transfer-ownership="none">
2704             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2705             <type name="gpointer" c:type="gpointer"/>
2706           </parameter>
2707           <parameter name="destroy" transfer-ownership="none" scope="async">
2708             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2709             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2710           </parameter>
2711         </parameters>
2712       </method>
2713       <method name="add_toggle_actions"
2714               c:identifier="gtk_action_group_add_toggle_actions"
2715               version="2.4">
2716         <doc xml:whitespace="preserve">This is a convenience function to create a number of toggle actions and add them 
2717 to the action group.
2718 The "activate" signals of the actions are connected to the callbacks and 
2719 their accel paths are set to 
2720 &lt;literal&gt;&amp;lt;Actions&amp;gt;/&lt;replaceable&gt;group-name&lt;/replaceable&gt;/&lt;replaceable&gt;action-name&lt;/replaceable&gt;&lt;/literal&gt;.</doc>
2721         <return-value transfer-ownership="none">
2722           <type name="none" c:type="void"/>
2723         </return-value>
2724         <parameters>
2725           <parameter name="entries" transfer-ownership="none">
2726             <doc xml:whitespace="preserve">an array of toggle action descriptions</doc>
2727             <type name="ToggleActionEntry" c:type="GtkToggleActionEntry*"/>
2728           </parameter>
2729           <parameter name="n_entries" transfer-ownership="none">
2730             <doc xml:whitespace="preserve">the number of entries</doc>
2731             <type name="guint" c:type="guint"/>
2732           </parameter>
2733           <parameter name="user_data" transfer-ownership="none">
2734             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2735             <type name="gpointer" c:type="gpointer"/>
2736           </parameter>
2737         </parameters>
2738       </method>
2739       <method name="add_toggle_actions_full"
2740               c:identifier="gtk_action_group_add_toggle_actions_full"
2741               version="2.4">
2742         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_toggle_actions() adds a 
2743 #GDestroyNotify callback for @user_data.</doc>
2744         <return-value transfer-ownership="none">
2745           <type name="none" c:type="void"/>
2746         </return-value>
2747         <parameters>
2748           <parameter name="entries" transfer-ownership="none">
2749             <doc xml:whitespace="preserve">an array of toggle action descriptions</doc>
2750             <type name="ToggleActionEntry" c:type="GtkToggleActionEntry*"/>
2751           </parameter>
2752           <parameter name="n_entries" transfer-ownership="none">
2753             <doc xml:whitespace="preserve">the number of entries</doc>
2754             <type name="guint" c:type="guint"/>
2755           </parameter>
2756           <parameter name="user_data" transfer-ownership="none">
2757             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2758             <type name="gpointer" c:type="gpointer"/>
2759           </parameter>
2760           <parameter name="destroy" transfer-ownership="none" scope="async">
2761             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2762             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2763           </parameter>
2764         </parameters>
2765       </method>
2766       <method name="get_action"
2767               c:identifier="gtk_action_group_get_action"
2768               version="2.4">
2769         <doc xml:whitespace="preserve">Looks up an action in the action group by name.</doc>
2770         <return-value transfer-ownership="none">
2771           <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
2772           <type name="Action" c:type="GtkAction*"/>
2773         </return-value>
2774         <parameters>
2775           <parameter name="action_name" transfer-ownership="none">
2776             <doc xml:whitespace="preserve">the name of the action</doc>
2777             <type name="utf8" c:type="gchar*"/>
2778           </parameter>
2779         </parameters>
2780       </method>
2781       <method name="get_name"
2782               c:identifier="gtk_action_group_get_name"
2783               version="2.4">
2784         <doc xml:whitespace="preserve">Gets the name of the action group.</doc>
2785         <return-value transfer-ownership="none">
2786           <doc xml:whitespace="preserve">the name of the action group.</doc>
2787           <type name="utf8" c:type="gchar*"/>
2788         </return-value>
2789       </method>
2790       <method name="get_sensitive"
2791               c:identifier="gtk_action_group_get_sensitive"
2792               version="2.4">
2793         <doc xml:whitespace="preserve">Returns %TRUE if the group is sensitive.  The constituent actions
2794 can only be logically sensitive (see gtk_action_is_sensitive()) if
2795 they are sensitive (see gtk_action_get_sensitive()) and their group
2796 is sensitive.</doc>
2797         <return-value transfer-ownership="none">
2798           <doc xml:whitespace="preserve">%TRUE if the group is sensitive.</doc>
2799           <type name="gboolean" c:type="gboolean"/>
2800         </return-value>
2801       </method>
2802       <method name="get_visible"
2803               c:identifier="gtk_action_group_get_visible"
2804               version="2.4">
2805         <doc xml:whitespace="preserve">Returns %TRUE if the group is visible.  The constituent actions
2806 can only be logically visible (see gtk_action_is_visible()) if
2807 they are visible (see gtk_action_get_visible()) and their group
2808 is visible.</doc>
2809         <return-value transfer-ownership="none">
2810           <doc xml:whitespace="preserve">%TRUE if the group is visible.</doc>
2811           <type name="gboolean" c:type="gboolean"/>
2812         </return-value>
2813       </method>
2814       <method name="list_actions"
2815               c:identifier="gtk_action_group_list_actions"
2816               version="2.4">
2817         <doc xml:whitespace="preserve">Lists the actions in the action group.</doc>
2818         <return-value transfer-ownership="container">
2819           <doc xml:whitespace="preserve">an allocated list of the action objects in the action group</doc>
2820           <type name="GLib.List" c:type="GList*">
2821             <type name="Action"/>
2822           </type>
2823         </return-value>
2824       </method>
2825       <method name="remove_action"
2826               c:identifier="gtk_action_group_remove_action"
2827               version="2.4">
2828         <doc xml:whitespace="preserve">Removes an action object from the action group.</doc>
2829         <return-value transfer-ownership="none">
2830           <type name="none" c:type="void"/>
2831         </return-value>
2832         <parameters>
2833           <parameter name="action" transfer-ownership="none">
2834             <doc xml:whitespace="preserve">an action</doc>
2835             <type name="Action" c:type="GtkAction*"/>
2836           </parameter>
2837         </parameters>
2838       </method>
2839       <method name="set_sensitive"
2840               c:identifier="gtk_action_group_set_sensitive"
2841               version="2.4">
2842         <doc xml:whitespace="preserve">Changes the sensitivity of @action_group</doc>
2843         <return-value transfer-ownership="none">
2844           <type name="none" c:type="void"/>
2845         </return-value>
2846         <parameters>
2847           <parameter name="sensitive" transfer-ownership="none">
2848             <doc xml:whitespace="preserve">new sensitivity</doc>
2849             <type name="gboolean" c:type="gboolean"/>
2850           </parameter>
2851         </parameters>
2852       </method>
2853       <method name="set_translate_func"
2854               c:identifier="gtk_action_group_set_translate_func"
2855               version="2.4 ">
2856         <doc xml:whitespace="preserve">Sets a function to be used for translating the @label and @tooltip of 
2857 #GtkActionGroupEntry&lt;!-- --&gt;s added by gtk_action_group_add_actions().
2858 If you're using gettext(), it is enough to set the translation domain
2859 with gtk_action_group_set_translation_domain().</doc>
2860         <return-value transfer-ownership="none">
2861           <type name="none" c:type="void"/>
2862         </return-value>
2863         <parameters>
2864           <parameter name="func"
2865                      transfer-ownership="none"
2866                      scope="notified"
2867                      closure="1"
2868                      destroy="2">
2869             <doc xml:whitespace="preserve">a #GtkTranslateFunc</doc>
2870             <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
2871           </parameter>
2872           <parameter name="data" transfer-ownership="none">
2873             <doc xml:whitespace="preserve">data to be passed to @func and @notify</doc>
2874             <type name="gpointer" c:type="gpointer"/>
2875           </parameter>
2876           <parameter name="notify" transfer-ownership="none" scope="async">
2877             <doc xml:whitespace="preserve">a #GDestroyNotify function to be called when @action_group is destroyed and when the translation function is changed again</doc>
2878             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2879           </parameter>
2880         </parameters>
2881       </method>
2882       <method name="set_translation_domain"
2883               c:identifier="gtk_action_group_set_translation_domain"
2884               version="2.4">
2885         <doc xml:whitespace="preserve">Sets the translation domain and uses g_dgettext() for translating the 
2886 gtk_action_group_add_actions().
2887 If you're not using gettext() for localization, see 
2888 gtk_action_group_set_translate_func().</doc>
2889         <return-value transfer-ownership="none">
2890           <type name="none" c:type="void"/>
2891         </return-value>
2892         <parameters>
2893           <parameter name="domain" transfer-ownership="none">
2894             <doc xml:whitespace="preserve">the translation domain to use for g_dgettext() calls</doc>
2895             <type name="utf8" c:type="gchar*"/>
2896           </parameter>
2897         </parameters>
2898       </method>
2899       <method name="set_visible"
2900               c:identifier="gtk_action_group_set_visible"
2901               version="2.4">
2902         <doc xml:whitespace="preserve">Changes the visible of @action_group.</doc>
2903         <return-value transfer-ownership="none">
2904           <type name="none" c:type="void"/>
2905         </return-value>
2906         <parameters>
2907           <parameter name="visible" transfer-ownership="none">
2908             <doc xml:whitespace="preserve">new visiblity</doc>
2909             <type name="gboolean" c:type="gboolean"/>
2910           </parameter>
2911         </parameters>
2912       </method>
2913       <method name="translate_string"
2914               c:identifier="gtk_action_group_translate_string"
2915               version="2.6">
2916         <doc xml:whitespace="preserve">Translates a string using the specified translate_func(). This
2917 is mainly intended for language bindings.</doc>
2918         <return-value transfer-ownership="none">
2919           <doc xml:whitespace="preserve">the translation of @string</doc>
2920           <type name="utf8" c:type="gchar*"/>
2921         </return-value>
2922         <parameters>
2923           <parameter name="string" transfer-ownership="none">
2924             <doc xml:whitespace="preserve">a string</doc>
2925             <type name="utf8" c:type="gchar*"/>
2926           </parameter>
2927         </parameters>
2928       </method>
2929       <property name="name"
2930                 writable="1"
2931                 construct-only="1"
2932                 transfer-ownership="none">
2933         <type name="utf8"/>
2934       </property>
2935       <property name="sensitive" writable="1" transfer-ownership="none">
2936         <type name="gboolean"/>
2937       </property>
2938       <property name="visible" writable="1" transfer-ownership="none">
2939         <type name="gboolean"/>
2940       </property>
2941       <field name="parent">
2942         <type name="GObject.Object" c:type="GObject"/>
2943       </field>
2944       <field name="priv">
2945         <type name="ActionGroupPrivate" c:type="GtkActionGroupPrivate*"/>
2946       </field>
2947       <glib:signal name="connect-proxy" version="2.4">
2948         <doc xml:whitespace="preserve">The ::connect-proxy signal is emitted after connecting a proxy to 
2949 an action in the group. Note that the proxy may have been connected 
2950 to a different action before.
2951 This is intended for simple customizations for which a custom action
2952 class would be too clumsy, e.g. showing tooltips for menuitems in the
2953 statusbar.
2954 #GtkUIManager proxies the signal and provides global notification 
2955 just before any action is connected to a proxy, which is probably more
2956 convenient to use.</doc>
2957         <return-value transfer-ownership="none">
2958           <type name="none"/>
2959         </return-value>
2960         <parameters>
2961           <parameter name="object" transfer-ownership="none">
2962             <doc xml:whitespace="preserve">the action</doc>
2963             <type name="Action"/>
2964           </parameter>
2965           <parameter name="p0" transfer-ownership="none">
2966             <doc xml:whitespace="preserve">the proxy</doc>
2967             <type name="Widget"/>
2968           </parameter>
2969         </parameters>
2970       </glib:signal>
2971       <glib:signal name="disconnect-proxy" version="2.4">
2972         <doc xml:whitespace="preserve">The ::disconnect-proxy signal is emitted after disconnecting a proxy 
2973 from an action in the group. 
2974 #GtkUIManager proxies the signal and provides global notification 
2975 just before any action is connected to a proxy, which is probably more
2976 convenient to use.</doc>
2977         <return-value transfer-ownership="none">
2978           <type name="none"/>
2979         </return-value>
2980         <parameters>
2981           <parameter name="object" transfer-ownership="none">
2982             <doc xml:whitespace="preserve">the action</doc>
2983             <type name="Action"/>
2984           </parameter>
2985           <parameter name="p0" transfer-ownership="none">
2986             <doc xml:whitespace="preserve">the proxy</doc>
2987             <type name="Widget"/>
2988           </parameter>
2989         </parameters>
2990       </glib:signal>
2991       <glib:signal name="post-activate" version="2.4">
2992         <doc xml:whitespace="preserve">The ::post-activate signal is emitted just after the @action in the
2993 This is intended for #GtkUIManager to proxy the signal and provide global
2994 notification just after any action is activated.</doc>
2995         <return-value transfer-ownership="none">
2996           <type name="none"/>
2997         </return-value>
2998         <parameters>
2999           <parameter name="object" transfer-ownership="none">
3000             <doc xml:whitespace="preserve">the action</doc>
3001             <type name="Action"/>
3002           </parameter>
3003         </parameters>
3004       </glib:signal>
3005       <glib:signal name="pre-activate" version="2.4">
3006         <doc xml:whitespace="preserve">The ::pre-activate signal is emitted just before the @action in the
3007 This is intended for #GtkUIManager to proxy the signal and provide global
3008 notification just before any action is activated.</doc>
3009         <return-value transfer-ownership="none">
3010           <type name="none"/>
3011         </return-value>
3012         <parameters>
3013           <parameter name="object" transfer-ownership="none">
3014             <doc xml:whitespace="preserve">the action</doc>
3015             <type name="Action"/>
3016           </parameter>
3017         </parameters>
3018       </glib:signal>
3019     </class>
3020     <record name="ActionGroupClass"
3021             c:type="GtkActionGroupClass"
3022             glib:is-gtype-struct-for="ActionGroup">
3023       <field name="parent_class">
3024         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
3025       </field>
3026       <field name="get_action">
3027         <callback name="get_action">
3028           <return-value transfer-ownership="none">
3029             <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
3030             <type name="Action" c:type="GtkAction*"/>
3031           </return-value>
3032           <parameters>
3033             <parameter name="action_group" transfer-ownership="none">
3034               <type name="ActionGroup" c:type="GtkActionGroup*"/>
3035             </parameter>
3036             <parameter name="action_name" transfer-ownership="none">
3037               <doc xml:whitespace="preserve">the name of the action</doc>
3038               <type name="utf8" c:type="gchar*"/>
3039             </parameter>
3040           </parameters>
3041         </callback>
3042       </field>
3043       <field name="_gtk_reserved1" introspectable="0">
3044         <callback name="_gtk_reserved1">
3045           <return-value transfer-ownership="none">
3046             <type name="none" c:type="void"/>
3047           </return-value>
3048         </callback>
3049       </field>
3050       <field name="_gtk_reserved2" introspectable="0">
3051         <callback name="_gtk_reserved2">
3052           <return-value transfer-ownership="none">
3053             <type name="none" c:type="void"/>
3054           </return-value>
3055         </callback>
3056       </field>
3057       <field name="_gtk_reserved3" introspectable="0">
3058         <callback name="_gtk_reserved3">
3059           <return-value transfer-ownership="none">
3060             <type name="none" c:type="void"/>
3061           </return-value>
3062         </callback>
3063       </field>
3064       <field name="_gtk_reserved4" introspectable="0">
3065         <callback name="_gtk_reserved4">
3066           <return-value transfer-ownership="none">
3067             <type name="none" c:type="void"/>
3068           </return-value>
3069         </callback>
3070       </field>
3071     </record>
3072     <record name="ActionGroupPrivate"
3073             c:type="GtkActionGroupPrivate"
3074             disguised="1">
3075     </record>
3076     <record name="ActionPrivate" c:type="GtkActionPrivate" disguised="1">
3077     </record>
3078     <interface name="Activatable"
3079                c:symbol-prefix="activatable"
3080                c:type="GtkActivatable"
3081                glib:type-name="GtkActivatable"
3082                glib:get-type="gtk_activatable_get_type"
3083                glib:type-struct="ActivatableIface">
3084       <virtual-method name="sync_action_properties"
3085                       invoker="sync_action_properties"
3086                       version="2.16">
3087         <doc xml:whitespace="preserve">This is called to update the activatable completely, this is called
3088 internally when the #GtkActivatable::related-action property is set
3089 or unset and by the implementing class when
3090 #GtkActivatable::use-action-appearance changes.</doc>
3091         <return-value transfer-ownership="none">
3092           <type name="none" c:type="void"/>
3093         </return-value>
3094         <parameters>
3095           <parameter name="action" transfer-ownership="none" allow-none="1">
3096             <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3097             <type name="Action" c:type="GtkAction*"/>
3098           </parameter>
3099         </parameters>
3100       </virtual-method>
3101       <virtual-method name="update">
3102         <return-value transfer-ownership="none">
3103           <type name="none" c:type="void"/>
3104         </return-value>
3105         <parameters>
3106           <parameter name="action" transfer-ownership="none">
3107             <type name="Action" c:type="GtkAction*"/>
3108           </parameter>
3109           <parameter name="property_name" transfer-ownership="none">
3110             <type name="utf8" c:type="gchar*"/>
3111           </parameter>
3112         </parameters>
3113       </virtual-method>
3114       <method name="do_set_related_action"
3115               c:identifier="gtk_activatable_do_set_related_action"
3116               version="2.16">
3117         <doc xml:whitespace="preserve">This is a utility function for #GtkActivatable implementors.
3118 When implementing #GtkActivatable you must call this when
3119 handling changes of the #GtkActivatable:related-action, and
3120 you must also use this to break references in #GObject-&gt;dispose().
3121 This function adds a reference to the currently set related
3122 action for you, it also makes sure the #GtkActivatable-&gt;update()
3123 method is called when the related #GtkAction properties change
3124 and registers to the action's proxy list.
3125 &lt;note&gt;&lt;para&gt;Be careful to call this before setting the local
3126 copy of the #GtkAction property, since this function uses 
3127 gtk_activatable_get_action() to retrieve the previous action&lt;/para&gt;&lt;/note&gt;</doc>
3128         <return-value transfer-ownership="none">
3129           <type name="none" c:type="void"/>
3130         </return-value>
3131         <parameters>
3132           <parameter name="action" transfer-ownership="none">
3133             <doc xml:whitespace="preserve">the #GtkAction to set</doc>
3134             <type name="Action" c:type="GtkAction*"/>
3135           </parameter>
3136         </parameters>
3137       </method>
3138       <method name="get_related_action"
3139               c:identifier="gtk_activatable_get_related_action"
3140               version="2.16">
3141         <doc xml:whitespace="preserve">Gets the related #GtkAction for @activatable.</doc>
3142         <return-value transfer-ownership="none">
3143           <doc xml:whitespace="preserve">the related #GtkAction if one is set.</doc>
3144           <type name="Action" c:type="GtkAction*"/>
3145         </return-value>
3146       </method>
3147       <method name="get_use_action_appearance"
3148               c:identifier="gtk_activatable_get_use_action_appearance"
3149               version="2.16">
3150         <doc xml:whitespace="preserve">Gets whether this activatable should reset its layout
3151 and appearance when setting the related action or when
3152 the action changes appearance.</doc>
3153         <return-value transfer-ownership="none">
3154           <doc xml:whitespace="preserve">whether @activatable uses its actions appearance.</doc>
3155           <type name="gboolean" c:type="gboolean"/>
3156         </return-value>
3157       </method>
3158       <method name="set_related_action"
3159               c:identifier="gtk_activatable_set_related_action"
3160               version="2.16">
3161         <doc xml:whitespace="preserve">Sets the related action on the @activatable object.
3162 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the #GtkActivatable:related-action
3163 property and call gtk_activatable_do_set_related_action() when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3164         <return-value transfer-ownership="none">
3165           <type name="none" c:type="void"/>
3166         </return-value>
3167         <parameters>
3168           <parameter name="action" transfer-ownership="none">
3169             <doc xml:whitespace="preserve">the #GtkAction to set</doc>
3170             <type name="Action" c:type="GtkAction*"/>
3171           </parameter>
3172         </parameters>
3173       </method>
3174       <method name="set_use_action_appearance"
3175               c:identifier="gtk_activatable_set_use_action_appearance"
3176               version="2.16">
3177         <doc xml:whitespace="preserve">Sets whether this activatable should reset its layout and appearance
3178 when setting the related action or when the action changes appearance
3179 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the
3180 #GtkActivatable:use-action-appearance property and call
3181 gtk_activatable_sync_action_properties() to update @activatable
3182 if needed.&lt;/para&gt;&lt;/note&gt;</doc>
3183         <return-value transfer-ownership="none">
3184           <type name="none" c:type="void"/>
3185         </return-value>
3186         <parameters>
3187           <parameter name="use_appearance" transfer-ownership="none">
3188             <doc xml:whitespace="preserve">whether to use the actions appearance</doc>
3189             <type name="gboolean" c:type="gboolean"/>
3190           </parameter>
3191         </parameters>
3192       </method>
3193       <method name="sync_action_properties"
3194               c:identifier="gtk_activatable_sync_action_properties"
3195               version="2.16">
3196         <doc xml:whitespace="preserve">This is called to update the activatable completely, this is called
3197 internally when the #GtkActivatable::related-action property is set
3198 or unset and by the implementing class when
3199 #GtkActivatable::use-action-appearance changes.</doc>
3200         <return-value transfer-ownership="none">
3201           <type name="none" c:type="void"/>
3202         </return-value>
3203         <parameters>
3204           <parameter name="action" transfer-ownership="none" allow-none="1">
3205             <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3206             <type name="Action" c:type="GtkAction*"/>
3207           </parameter>
3208         </parameters>
3209       </method>
3210       <property name="related-action"
3211                 version="2.16"
3212                 writable="1"
3213                 transfer-ownership="none">
3214         <doc xml:whitespace="preserve">The action that this activatable will activate and receive
3215 updates from for various states and possibly appearance.
3216 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the this property and 
3217 call gtk_activatable_do_set_related_action() when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3218         <type name="Action"/>
3219       </property>
3220       <property name="use-action-appearance"
3221                 version="2.16"
3222                 writable="1"
3223                 transfer-ownership="none">
3224         <doc xml:whitespace="preserve">Whether this activatable should reset its layout
3225 and appearance when setting the related action or when
3226 the action changes appearance.
3227 See the #GtkAction documentation directly to find which properties
3228 should be ignored by the #GtkActivatable when this property is %FALSE.
3229 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle this property
3230 and call gtk_activatable_sync_action_properties() on the activatable
3231 widget when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3232         <type name="gboolean"/>
3233       </property>
3234     </interface>
3235     <record name="ActivatableIface"
3236             c:type="GtkActivatableIface"
3237             glib:is-gtype-struct-for="Activatable"
3238             version="2.16">
3239       <field name="g_iface">
3240         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
3241       </field>
3242       <field name="update">
3243         <callback name="update">
3244           <return-value transfer-ownership="none">
3245             <type name="none" c:type="void"/>
3246           </return-value>
3247           <parameters>
3248             <parameter name="activatable" transfer-ownership="none">
3249               <type name="Activatable" c:type="GtkActivatable*"/>
3250             </parameter>
3251             <parameter name="action" transfer-ownership="none">
3252               <type name="Action" c:type="GtkAction*"/>
3253             </parameter>
3254             <parameter name="property_name" transfer-ownership="none">
3255               <type name="utf8" c:type="gchar*"/>
3256             </parameter>
3257           </parameters>
3258         </callback>
3259       </field>
3260       <field name="sync_action_properties">
3261         <callback name="sync_action_properties">
3262           <return-value transfer-ownership="none">
3263             <type name="none" c:type="void"/>
3264           </return-value>
3265           <parameters>
3266             <parameter name="activatable" transfer-ownership="none">
3267               <type name="Activatable" c:type="GtkActivatable*"/>
3268             </parameter>
3269             <parameter name="action" transfer-ownership="none" allow-none="1">
3270               <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3271               <type name="Action" c:type="GtkAction*"/>
3272             </parameter>
3273           </parameters>
3274         </callback>
3275       </field>
3276     </record>
3277     <class name="Adjustment"
3278            c:symbol-prefix="adjustment"
3279            c:type="GtkAdjustment"
3280            parent="Object"
3281            glib:type-name="GtkAdjustment"
3282            glib:get-type="gtk_adjustment_get_type"
3283            glib:type-struct="AdjustmentClass">
3284       <constructor name="new" c:identifier="gtk_adjustment_new">
3285         <return-value transfer-ownership="none">
3286           <type name="Object" c:type="GtkObject*"/>
3287         </return-value>
3288         <parameters>
3289           <parameter name="value" transfer-ownership="none">
3290             <type name="gdouble" c:type="gdouble"/>
3291           </parameter>
3292           <parameter name="lower" transfer-ownership="none">
3293             <type name="gdouble" c:type="gdouble"/>
3294           </parameter>
3295           <parameter name="upper" transfer-ownership="none">
3296             <type name="gdouble" c:type="gdouble"/>
3297           </parameter>
3298           <parameter name="step_increment" transfer-ownership="none">
3299             <type name="gdouble" c:type="gdouble"/>
3300           </parameter>
3301           <parameter name="page_increment" transfer-ownership="none">
3302             <type name="gdouble" c:type="gdouble"/>
3303           </parameter>
3304           <parameter name="page_size" transfer-ownership="none">
3305             <type name="gdouble" c:type="gdouble"/>
3306           </parameter>
3307         </parameters>
3308       </constructor>
3309       <method name="changed" c:identifier="gtk_adjustment_changed">
3310         <return-value transfer-ownership="none">
3311           <type name="none" c:type="void"/>
3312         </return-value>
3313       </method>
3314       <method name="clamp_page" c:identifier="gtk_adjustment_clamp_page">
3315         <return-value transfer-ownership="none">
3316           <type name="none" c:type="void"/>
3317         </return-value>
3318         <parameters>
3319           <parameter name="lower" transfer-ownership="none">
3320             <type name="gdouble" c:type="gdouble"/>
3321           </parameter>
3322           <parameter name="upper" transfer-ownership="none">
3323             <type name="gdouble" c:type="gdouble"/>
3324           </parameter>
3325         </parameters>
3326       </method>
3327       <method name="configure"
3328               c:identifier="gtk_adjustment_configure"
3329               version="2.14">
3330         <doc xml:whitespace="preserve">Sets all properties of the adjustment at once.
3331 Use this function to avoid multiple emissions of the "changed"
3332 signal. See gtk_adjustment_set_lower() for an alternative way
3333 of compressing multiple emissions of "changed" into one.</doc>
3334         <return-value transfer-ownership="none">
3335           <type name="none" c:type="void"/>
3336         </return-value>
3337         <parameters>
3338           <parameter name="value" transfer-ownership="none">
3339             <doc xml:whitespace="preserve">the new value</doc>
3340             <type name="gdouble" c:type="gdouble"/>
3341           </parameter>
3342           <parameter name="lower" transfer-ownership="none">
3343             <doc xml:whitespace="preserve">the new minimum value</doc>
3344             <type name="gdouble" c:type="gdouble"/>
3345           </parameter>
3346           <parameter name="upper" transfer-ownership="none">
3347             <doc xml:whitespace="preserve">the new maximum value</doc>
3348             <type name="gdouble" c:type="gdouble"/>
3349           </parameter>
3350           <parameter name="step_increment" transfer-ownership="none">
3351             <doc xml:whitespace="preserve">the new step increment</doc>
3352             <type name="gdouble" c:type="gdouble"/>
3353           </parameter>
3354           <parameter name="page_increment" transfer-ownership="none">
3355             <doc xml:whitespace="preserve">the new page increment</doc>
3356             <type name="gdouble" c:type="gdouble"/>
3357           </parameter>
3358           <parameter name="page_size" transfer-ownership="none">
3359             <doc xml:whitespace="preserve">the new page size</doc>
3360             <type name="gdouble" c:type="gdouble"/>
3361           </parameter>
3362         </parameters>
3363       </method>
3364       <method name="get_lower"
3365               c:identifier="gtk_adjustment_get_lower"
3366               version="2.14">
3367         <doc xml:whitespace="preserve">Retrieves the minimum value of the adjustment.</doc>
3368         <return-value transfer-ownership="none">
3369           <doc xml:whitespace="preserve">The current minimum value of the adjustment.</doc>
3370           <type name="gdouble" c:type="gdouble"/>
3371         </return-value>
3372       </method>
3373       <method name="get_page_increment"
3374               c:identifier="gtk_adjustment_get_page_increment"
3375               version="2.14">
3376         <doc xml:whitespace="preserve">Retrieves the page increment of the adjustment.</doc>
3377         <return-value transfer-ownership="none">
3378           <doc xml:whitespace="preserve">The current page increment of the adjustment.</doc>
3379           <type name="gdouble" c:type="gdouble"/>
3380         </return-value>
3381       </method>
3382       <method name="get_page_size"
3383               c:identifier="gtk_adjustment_get_page_size"
3384               version="2.14">
3385         <doc xml:whitespace="preserve">Retrieves the page size of the adjustment.</doc>
3386         <return-value transfer-ownership="none">
3387           <doc xml:whitespace="preserve">The current page size of the adjustment.</doc>
3388           <type name="gdouble" c:type="gdouble"/>
3389         </return-value>
3390       </method>
3391       <method name="get_step_increment"
3392               c:identifier="gtk_adjustment_get_step_increment"
3393               version="2.14">
3394         <doc xml:whitespace="preserve">Retrieves the step increment of the adjustment.</doc>
3395         <return-value transfer-ownership="none">
3396           <doc xml:whitespace="preserve">The current step increment of the adjustment.</doc>
3397           <type name="gdouble" c:type="gdouble"/>
3398         </return-value>
3399       </method>
3400       <method name="get_upper"
3401               c:identifier="gtk_adjustment_get_upper"
3402               version="2.14">
3403         <doc xml:whitespace="preserve">Retrieves the maximum value of the adjustment.</doc>
3404         <return-value transfer-ownership="none">
3405           <doc xml:whitespace="preserve">The current maximum value of the adjustment.</doc>
3406           <type name="gdouble" c:type="gdouble"/>
3407         </return-value>
3408       </method>
3409       <method name="get_value" c:identifier="gtk_adjustment_get_value">
3410         <doc xml:whitespace="preserve">Gets the current value of the adjustment. See
3411 gtk_adjustment_set_value ().</doc>
3412         <return-value transfer-ownership="none">
3413           <doc xml:whitespace="preserve">The current value of the adjustment.</doc>
3414           <type name="gdouble" c:type="gdouble"/>
3415         </return-value>
3416       </method>
3417       <method name="set_lower"
3418               c:identifier="gtk_adjustment_set_lower"
3419               version="2.14">
3420         <doc xml:whitespace="preserve">Sets the minimum value of the adjustment.
3421 When setting multiple adjustment properties via their individual
3422 setters, multiple "changed" signals will be emitted. However, since
3423 the emission of the "changed" signal is tied to the emission of the
3424 "GObject::notify" signals of the changed properties, it's possible
3425 to compress the "changed" signals into one by calling
3426 g_object_freeze_notify() and g_object_thaw_notify() around the
3427 calls to the individual setters.
3428 Alternatively, using a single g_object_set() for all the properties
3429 to change, or using gtk_adjustment_configure() has the same effect
3430 of compressing "changed" emissions.</doc>
3431         <return-value transfer-ownership="none">
3432           <type name="none" c:type="void"/>
3433         </return-value>
3434         <parameters>
3435           <parameter name="lower" transfer-ownership="none">
3436             <doc xml:whitespace="preserve">the new minimum value</doc>
3437             <type name="gdouble" c:type="gdouble"/>
3438           </parameter>
3439         </parameters>
3440       </method>
3441       <method name="set_page_increment"
3442               c:identifier="gtk_adjustment_set_page_increment"
3443               version="2.14">
3444         <doc xml:whitespace="preserve">Sets the page increment of the adjustment.
3445 See gtk_adjustment_set_lower() about how to compress multiple
3446 emissions of the "changed" signal when setting multiple adjustment
3447 properties.</doc>
3448         <return-value transfer-ownership="none">
3449           <type name="none" c:type="void"/>
3450         </return-value>
3451         <parameters>
3452           <parameter name="page_increment" transfer-ownership="none">
3453             <doc xml:whitespace="preserve">the new page increment</doc>
3454             <type name="gdouble" c:type="gdouble"/>
3455           </parameter>
3456         </parameters>
3457       </method>
3458       <method name="set_page_size"
3459               c:identifier="gtk_adjustment_set_page_size"
3460               version="2.14">
3461         <doc xml:whitespace="preserve">Sets the page size of the adjustment.
3462 See gtk_adjustment_set_lower() about how to compress multiple
3463 emissions of the "changed" signal when setting multiple adjustment
3464 properties.</doc>
3465         <return-value transfer-ownership="none">
3466           <type name="none" c:type="void"/>
3467         </return-value>
3468         <parameters>
3469           <parameter name="page_size" transfer-ownership="none">
3470             <doc xml:whitespace="preserve">the new page size</doc>
3471             <type name="gdouble" c:type="gdouble"/>
3472           </parameter>
3473         </parameters>
3474       </method>
3475       <method name="set_step_increment"
3476               c:identifier="gtk_adjustment_set_step_increment"
3477               version="2.14">
3478         <doc xml:whitespace="preserve">Sets the step increment of the adjustment.
3479 See gtk_adjustment_set_lower() about how to compress multiple
3480 emissions of the "changed" signal when setting multiple adjustment
3481 properties.</doc>
3482         <return-value transfer-ownership="none">
3483           <type name="none" c:type="void"/>
3484         </return-value>
3485         <parameters>
3486           <parameter name="step_increment" transfer-ownership="none">
3487             <doc xml:whitespace="preserve">the new step increment</doc>
3488             <type name="gdouble" c:type="gdouble"/>
3489           </parameter>
3490         </parameters>
3491       </method>
3492       <method name="set_upper"
3493               c:identifier="gtk_adjustment_set_upper"
3494               version="2.14">
3495         <doc xml:whitespace="preserve">Sets the maximum value of the adjustment.
3496 Note that values will be restricted by
3497 &lt;literal&gt;upper - page-size&lt;/literal&gt; if the page-size
3498 property is nonzero.
3499 See gtk_adjustment_set_lower() about how to compress multiple
3500 emissions of the "changed" signal when setting multiple adjustment
3501 properties.</doc>
3502         <return-value transfer-ownership="none">
3503           <type name="none" c:type="void"/>
3504         </return-value>
3505         <parameters>
3506           <parameter name="upper" transfer-ownership="none">
3507             <doc xml:whitespace="preserve">the new maximum value</doc>
3508             <type name="gdouble" c:type="gdouble"/>
3509           </parameter>
3510         </parameters>
3511       </method>
3512       <method name="set_value" c:identifier="gtk_adjustment_set_value">
3513         <return-value transfer-ownership="none">
3514           <type name="none" c:type="void"/>
3515         </return-value>
3516         <parameters>
3517           <parameter name="value" transfer-ownership="none">
3518             <type name="gdouble" c:type="gdouble"/>
3519           </parameter>
3520         </parameters>
3521       </method>
3522       <method name="value_changed" c:identifier="gtk_adjustment_value_changed">
3523         <return-value transfer-ownership="none">
3524           <type name="none" c:type="void"/>
3525         </return-value>
3526       </method>
3527       <property name="lower"
3528                 version="2.4"
3529                 writable="1"
3530                 transfer-ownership="none">
3531         <doc xml:whitespace="preserve">The minimum value of the adjustment.</doc>
3532         <type name="gdouble"/>
3533       </property>
3534       <property name="page-increment"
3535                 version="2.4"
3536                 writable="1"
3537                 transfer-ownership="none">
3538         <doc xml:whitespace="preserve">The page increment of the adjustment.</doc>
3539         <type name="gdouble"/>
3540       </property>
3541       <property name="page-size"
3542                 version="2.4"
3543                 writable="1"
3544                 transfer-ownership="none">
3545         <doc xml:whitespace="preserve">The page size of the adjustment. 
3546 Note that the page-size is irrelevant and should be set to zero
3547 if the adjustment is used for a simple scalar value, e.g. in a 
3548 #GtkSpinButton.</doc>
3549         <type name="gdouble"/>
3550       </property>
3551       <property name="step-increment"
3552                 version="2.4"
3553                 writable="1"
3554                 transfer-ownership="none">
3555         <doc xml:whitespace="preserve">The step increment of the adjustment.</doc>
3556         <type name="gdouble"/>
3557       </property>
3558       <property name="upper"
3559                 version="2.4"
3560                 writable="1"
3561                 transfer-ownership="none">
3562         <doc xml:whitespace="preserve">The maximum value of the adjustment. 
3563 Note that values will be restricted by 
3564 &lt;literal&gt;upper - page-size&lt;/literal&gt; if the page-size 
3565 property is nonzero.</doc>
3566         <type name="gdouble"/>
3567       </property>
3568       <property name="value"
3569                 version="2.4"
3570                 writable="1"
3571                 transfer-ownership="none">
3572         <doc xml:whitespace="preserve">The value of the adjustment.</doc>
3573         <type name="gdouble"/>
3574       </property>
3575       <field name="parent_instance">
3576         <type name="Object" c:type="GtkObject"/>
3577       </field>
3578       <field name="lower">
3579         <type name="gdouble" c:type="gdouble"/>
3580       </field>
3581       <field name="upper">
3582         <type name="gdouble" c:type="gdouble"/>
3583       </field>
3584       <field name="value">
3585         <type name="gdouble" c:type="gdouble"/>
3586       </field>
3587       <field name="step_increment">
3588         <type name="gdouble" c:type="gdouble"/>
3589       </field>
3590       <field name="page_increment">
3591         <type name="gdouble" c:type="gdouble"/>
3592       </field>
3593       <field name="page_size">
3594         <type name="gdouble" c:type="gdouble"/>
3595       </field>
3596       <glib:signal name="changed">
3597         <return-value transfer-ownership="none">
3598           <type name="none"/>
3599         </return-value>
3600       </glib:signal>
3601       <glib:signal name="value-changed">
3602         <return-value transfer-ownership="none">
3603           <type name="none"/>
3604         </return-value>
3605       </glib:signal>
3606     </class>
3607     <record name="AdjustmentClass"
3608             c:type="GtkAdjustmentClass"
3609             glib:is-gtype-struct-for="Adjustment">
3610       <field name="parent_class">
3611         <type name="ObjectClass" c:type="GtkObjectClass"/>
3612       </field>
3613       <field name="changed">
3614         <callback name="changed">
3615           <return-value transfer-ownership="none">
3616             <type name="none" c:type="void"/>
3617           </return-value>
3618           <parameters>
3619             <parameter name="adjustment" transfer-ownership="none">
3620               <type name="Adjustment" c:type="GtkAdjustment*"/>
3621             </parameter>
3622           </parameters>
3623         </callback>
3624       </field>
3625       <field name="value_changed">
3626         <callback name="value_changed">
3627           <return-value transfer-ownership="none">
3628             <type name="none" c:type="void"/>
3629           </return-value>
3630           <parameters>
3631             <parameter name="adjustment" transfer-ownership="none">
3632               <type name="Adjustment" c:type="GtkAdjustment*"/>
3633             </parameter>
3634           </parameters>
3635         </callback>
3636       </field>
3637       <field name="_gtk_reserved1" introspectable="0">
3638         <callback name="_gtk_reserved1">
3639           <return-value transfer-ownership="none">
3640             <type name="none" c:type="void"/>
3641           </return-value>
3642         </callback>
3643       </field>
3644       <field name="_gtk_reserved2" introspectable="0">
3645         <callback name="_gtk_reserved2">
3646           <return-value transfer-ownership="none">
3647             <type name="none" c:type="void"/>
3648           </return-value>
3649         </callback>
3650       </field>
3651       <field name="_gtk_reserved3" introspectable="0">
3652         <callback name="_gtk_reserved3">
3653           <return-value transfer-ownership="none">
3654             <type name="none" c:type="void"/>
3655           </return-value>
3656         </callback>
3657       </field>
3658       <field name="_gtk_reserved4" introspectable="0">
3659         <callback name="_gtk_reserved4">
3660           <return-value transfer-ownership="none">
3661             <type name="none" c:type="void"/>
3662           </return-value>
3663         </callback>
3664       </field>
3665     </record>
3666     <enumeration name="Align"
3667                  glib:type-name="GtkAlign"
3668                  glib:get-type="gtk_align_get_type"
3669                  c:type="GtkAlign">
3670       <doc xml:whitespace="preserve">no meaningful way to stretch
3671 or bottom
3672 or top
3673 allocation
3674 Controls how a widget deals with extra space in a single (x or y)
3675 dimension.
3676 Alignment only matters if the widget receives a "too large"
3677 allocation, for example if you packed the widget with the "expand"
3678 flag inside a #GtkBox, then the widget might get extra space.  If
3679 you have for example a 16x16 icon inside a 32x32 space, the icon
3680 could be scaled and stretched, it could be centered, or it could be
3681 positioned to one side of the space.</doc>
3682       <member name="fill"
3683               value="0"
3684               c:identifier="GTK_ALIGN_FILL"
3685               glib:nick="fill"/>
3686       <member name="start"
3687               value="1"
3688               c:identifier="GTK_ALIGN_START"
3689               glib:nick="start"/>
3690       <member name="end"
3691               value="2"
3692               c:identifier="GTK_ALIGN_END"
3693               glib:nick="end"/>
3694       <member name="center"
3695               value="3"
3696               c:identifier="GTK_ALIGN_CENTER"
3697               glib:nick="center"/>
3698     </enumeration>
3699     <class name="Alignment"
3700            c:symbol-prefix="alignment"
3701            c:type="GtkAlignment"
3702            parent="Bin"
3703            glib:type-name="GtkAlignment"
3704            glib:get-type="gtk_alignment_get_type"
3705            glib:type-struct="AlignmentClass">
3706       <implements name="Atk.ImplementorIface"/>
3707       <implements name="Buildable"/>
3708       <implements name="SizeRequest"/>
3709       <constructor name="new" c:identifier="gtk_alignment_new">
3710         <doc xml:whitespace="preserve">Creates a new #GtkAlignment.</doc>
3711         <return-value transfer-ownership="none">
3712           <doc xml:whitespace="preserve">the new #GtkAlignment.</doc>
3713           <type name="Widget" c:type="GtkWidget*"/>
3714         </return-value>
3715         <parameters>
3716           <parameter name="xalign" transfer-ownership="none">
3717             <doc xml:whitespace="preserve">the horizontal alignment of the child widget, from 0 (left) to 1 (right).</doc>
3718             <type name="gfloat" c:type="gfloat"/>
3719           </parameter>
3720           <parameter name="yalign" transfer-ownership="none">
3721             <doc xml:whitespace="preserve">the vertical alignment of the child widget, from 0 (top) to 1 (bottom).</doc>
3722             <type name="gfloat" c:type="gfloat"/>
3723           </parameter>
3724           <parameter name="xscale" transfer-ownership="none">
3725             <doc xml:whitespace="preserve">the amount that the child widget expands horizontally to fill up unused space, from 0 to 1. A value of 0 indicates that the child widget should never expand. A value of 1 indicates that the child widget will expand to fill all of the space allocated for the #GtkAlignment.</doc>
3726             <type name="gfloat" c:type="gfloat"/>
3727           </parameter>
3728           <parameter name="yscale" transfer-ownership="none">
3729             <doc xml:whitespace="preserve">the amount that the child widget expands vertically to fill up unused space, from 0 to 1. The values are similar to @xscale.</doc>
3730             <type name="gfloat" c:type="gfloat"/>
3731           </parameter>
3732         </parameters>
3733       </constructor>
3734       <method name="get_padding"
3735               c:identifier="gtk_alignment_get_padding"
3736               version="2.4">
3737         <doc xml:whitespace="preserve">Gets the padding on the different sides of the widget.
3738 See gtk_alignment_set_padding ().</doc>
3739         <return-value transfer-ownership="none">
3740           <type name="none" c:type="void"/>
3741         </return-value>
3742         <parameters>
3743           <parameter name="padding_top"
3744                      transfer-ownership="none"
3745                      allow-none="1">
3746             <doc xml:whitespace="preserve">location to store the padding for the top of the widget, or %NULL</doc>
3747             <type name="guint" c:type="guint*"/>
3748           </parameter>
3749           <parameter name="padding_bottom"
3750                      transfer-ownership="none"
3751                      allow-none="1">
3752             <doc xml:whitespace="preserve">location to store the padding for the bottom of the widget, or %NULL</doc>
3753             <type name="guint" c:type="guint*"/>
3754           </parameter>
3755           <parameter name="padding_left"
3756                      transfer-ownership="none"
3757                      allow-none="1">
3758             <doc xml:whitespace="preserve">location to store the padding for the left of the widget, or %NULL</doc>
3759             <type name="guint" c:type="guint*"/>
3760           </parameter>
3761           <parameter name="padding_right"
3762                      transfer-ownership="none"
3763                      allow-none="1">
3764             <doc xml:whitespace="preserve">location to store the padding for the right of the widget, or %NULL</doc>
3765             <type name="guint" c:type="guint*"/>
3766           </parameter>
3767         </parameters>
3768       </method>
3769       <method name="set" c:identifier="gtk_alignment_set">
3770         <doc xml:whitespace="preserve">Sets the #GtkAlignment values.</doc>
3771         <return-value transfer-ownership="none">
3772           <type name="none" c:type="void"/>
3773         </return-value>
3774         <parameters>
3775           <parameter name="xalign" transfer-ownership="none">
3776             <doc xml:whitespace="preserve">the horizontal alignment of the child widget, from 0 (left) to 1 (right).</doc>
3777             <type name="gfloat" c:type="gfloat"/>
3778           </parameter>
3779           <parameter name="yalign" transfer-ownership="none">
3780             <doc xml:whitespace="preserve">the vertical alignment of the child widget, from 0 (top) to 1 (bottom).</doc>
3781             <type name="gfloat" c:type="gfloat"/>
3782           </parameter>
3783           <parameter name="xscale" transfer-ownership="none">
3784             <doc xml:whitespace="preserve">the amount that the child widget expands horizontally to fill up unused space, from 0 to 1. A value of 0 indicates that the child widget should never expand. A value of 1 indicates that the child widget will expand to fill all of the space allocated for the #GtkAlignment.</doc>
3785             <type name="gfloat" c:type="gfloat"/>
3786           </parameter>
3787           <parameter name="yscale" transfer-ownership="none">
3788             <doc xml:whitespace="preserve">the amount that the child widget expands vertically to fill up unused space, from 0 to 1. The values are similar to @xscale.</doc>
3789             <type name="gfloat" c:type="gfloat"/>
3790           </parameter>
3791         </parameters>
3792       </method>
3793       <method name="set_padding"
3794               c:identifier="gtk_alignment_set_padding"
3795               version="2.4">
3796         <doc xml:whitespace="preserve">Sets the padding on the different sides of the widget.
3797 The padding adds blank space to the sides of the widget. For instance,
3798 this can be used to indent the child widget towards the right by adding
3799 padding on the left.</doc>
3800         <return-value transfer-ownership="none">
3801           <type name="none" c:type="void"/>
3802         </return-value>
3803         <parameters>
3804           <parameter name="padding_top" transfer-ownership="none">
3805             <doc xml:whitespace="preserve">the padding at the top of the widget</doc>
3806             <type name="guint" c:type="guint"/>
3807           </parameter>
3808           <parameter name="padding_bottom" transfer-ownership="none">
3809             <doc xml:whitespace="preserve">the padding at the bottom of the widget</doc>
3810             <type name="guint" c:type="guint"/>
3811           </parameter>
3812           <parameter name="padding_left" transfer-ownership="none">
3813             <doc xml:whitespace="preserve">the padding at the left of the widget</doc>
3814             <type name="guint" c:type="guint"/>
3815           </parameter>
3816           <parameter name="padding_right" transfer-ownership="none">
3817             <doc xml:whitespace="preserve">the padding at the right of the widget.</doc>
3818             <type name="guint" c:type="guint"/>
3819           </parameter>
3820         </parameters>
3821       </method>
3822       <property name="bottom-padding"
3823                 version="2.4"
3824                 writable="1"
3825                 transfer-ownership="none">
3826         <doc xml:whitespace="preserve">The padding to insert at the bottom of the widget.</doc>
3827         <type name="guint"/>
3828       </property>
3829       <property name="left-padding"
3830                 version="2.4"
3831                 writable="1"
3832                 transfer-ownership="none">
3833         <doc xml:whitespace="preserve">The padding to insert at the left of the widget.</doc>
3834         <type name="guint"/>
3835       </property>
3836       <property name="right-padding"
3837                 version="2.4"
3838                 writable="1"
3839                 transfer-ownership="none">
3840         <doc xml:whitespace="preserve">The padding to insert at the right of the widget.</doc>
3841         <type name="guint"/>
3842       </property>
3843       <property name="top-padding"
3844                 version="2.4"
3845                 writable="1"
3846                 transfer-ownership="none">
3847         <doc xml:whitespace="preserve">The padding to insert at the top of the widget.</doc>
3848         <type name="guint"/>
3849       </property>
3850       <property name="xalign" writable="1" transfer-ownership="none">
3851         <type name="gfloat"/>
3852       </property>
3853       <property name="xscale" writable="1" transfer-ownership="none">
3854         <type name="gfloat"/>
3855       </property>
3856       <property name="yalign" writable="1" transfer-ownership="none">
3857         <type name="gfloat"/>
3858       </property>
3859       <property name="yscale" writable="1" transfer-ownership="none">
3860         <type name="gfloat"/>
3861       </property>
3862       <field name="bin">
3863         <type name="Bin" c:type="GtkBin"/>
3864       </field>
3865       <field name="priv" readable="0" private="1">
3866         <type name="AlignmentPrivate" c:type="GtkAlignmentPrivate*"/>
3867       </field>
3868     </class>
3869     <record name="AlignmentClass"
3870             c:type="GtkAlignmentClass"
3871             glib:is-gtype-struct-for="Alignment">
3872       <field name="parent_class">
3873         <type name="BinClass" c:type="GtkBinClass"/>
3874       </field>
3875     </record>
3876     <record name="AlignmentPrivate" c:type="GtkAlignmentPrivate" disguised="1">
3877     </record>
3878     <class name="Application"
3879            c:symbol-prefix="application"
3880            c:type="GtkApplication"
3881            parent="Gio.Application"
3882            glib:type-name="GtkApplication"
3883            glib:get-type="gtk_application_get_type"
3884            glib:type-struct="ApplicationClass">
3885       <implements name="Gio.Initable"/>
3886       <constructor name="new" c:identifier="gtk_application_new" version="3.0">
3887         <doc xml:whitespace="preserve">Create a new #GtkApplication, or if one has already been initialized
3888 in this process, return the existing instance. This function will as
3889 a side effect initialize the display system; see gtk_init().
3890 For the behavior if this application is running in another process,
3891 see g_application_new().</doc>
3892         <return-value transfer-ownership="full">
3893           <doc xml:whitespace="preserve">A newly-referenced #GtkApplication</doc>
3894           <type name="Application" c:type="GtkApplication*"/>
3895         </return-value>
3896         <parameters>
3897           <parameter name="appid" transfer-ownership="none">
3898             <doc xml:whitespace="preserve">System-dependent application identifier</doc>
3899             <type name="utf8" c:type="gchar*"/>
3900           </parameter>
3901           <parameter name="argc"
3902                      direction="inout"
3903                      caller-allocates="0"
3904                      transfer-ownership="full"
3905                      allow-none="1">
3906             <doc xml:whitespace="preserve">System argument count</doc>
3907             <type name="gint" c:type="gint*"/>
3908           </parameter>
3909           <parameter name="argv"
3910                      direction="inout"
3911                      caller-allocates="0"
3912                      transfer-ownership="full"
3913                      allow-none="1">
3914             <doc xml:whitespace="preserve">System argument vector</doc>
3915             <type name="utf8" c:type="gchar***"/>
3916           </parameter>
3917         </parameters>
3918       </constructor>
3919       <virtual-method name="create_window"
3920                       invoker="create_window"
3921                       version="3.0">
3922         <doc xml:whitespace="preserve">Creates a new #GtkWindow for the application.
3923 This function calls the #GtkApplication::create_window() virtual function,
3924 which can be overridden by sub-classes, for instance to use #GtkBuilder to
3925 create the user interface. After creating a new #GtkWindow instance, it will
3926 be added to the list of toplevels associated to the application.</doc>
3927         <return-value transfer-ownership="none">
3928           <doc xml:whitespace="preserve">the newly created application #GtkWindow</doc>
3929           <type name="Window" c:type="GtkWindow*"/>
3930         </return-value>
3931       </virtual-method>
3932       <method name="add_window"
3933               c:identifier="gtk_application_add_window"
3934               version="3.0">
3935         <doc xml:whitespace="preserve">Adds a window to the #GtkApplication.
3936 If all the windows managed by #GtkApplication are closed, the
3937 #GtkApplication will call gtk_application_quit(), and quit
3938 the application.
3939 If your application uses only a single toplevel window, you can
3940 use gtk_application_get_window(). If you are using a sub-class
3941 of #GtkApplication you should call gtk_application_create_window()
3942 to let the #GtkApplication instance create a #GtkWindow and add
3943 it to the list of toplevels of the application. You should call
3944 this function only to add #GtkWindow&lt;!-- --&gt;s that you created
3945 directly using gtk_window_new().</doc>
3946         <return-value transfer-ownership="none">
3947           <type name="none" c:type="void"/>
3948         </return-value>
3949         <parameters>
3950           <parameter name="window" transfer-ownership="none">
3951             <doc xml:whitespace="preserve">a toplevel window to add to @app</doc>
3952             <type name="Window" c:type="GtkWindow*"/>
3953           </parameter>
3954         </parameters>
3955       </method>
3956       <method name="create_window"
3957               c:identifier="gtk_application_create_window"
3958               version="3.0">
3959         <doc xml:whitespace="preserve">Creates a new #GtkWindow for the application.
3960 This function calls the #GtkApplication::create_window() virtual function,
3961 which can be overridden by sub-classes, for instance to use #GtkBuilder to
3962 create the user interface. After creating a new #GtkWindow instance, it will
3963 be added to the list of toplevels associated to the application.</doc>
3964         <return-value transfer-ownership="none">
3965           <doc xml:whitespace="preserve">the newly created application #GtkWindow</doc>
3966           <type name="Window" c:type="GtkWindow*"/>
3967         </return-value>
3968       </method>
3969       <method name="get_window"
3970               c:identifier="gtk_application_get_window"
3971               version="3.0">
3972         <doc xml:whitespace="preserve">A simple #GtkApplication has a "default window". This window should
3973 act as the primary user interaction point with your application.
3974 The window returned by this function is of type #GTK_WINDOW_TYPE_TOPLEVEL
3975 and its properties such as "title" and "icon-name" will be initialized
3976 as appropriate for the platform.
3977 If the user closes this window, and your application hasn't created
3978 any other windows, the default action will be to call gtk_application_quit().
3979 If your application has more than one toplevel window (e.g. an
3980 single-document-interface application with multiple open documents),
3981 or if you are constructing your toplevel windows yourself (e.g. using
3982 #GtkBuilder), use gtk_application_create_window() or
3983 gtk_application_add_window() instead.</doc>
3984         <return-value transfer-ownership="none">
3985           <doc xml:whitespace="preserve">The default #GtkWindow for this application</doc>
3986           <type name="Window" c:type="GtkWindow*"/>
3987         </return-value>
3988       </method>
3989       <method name="get_windows"
3990               c:identifier="gtk_application_get_windows"
3991               version="3.0">
3992         <doc xml:whitespace="preserve">Retrieves the list of windows previously registered with
3993 gtk_application_create_window() or gtk_application_add_window().
3994 to the list of #GtkWindow&lt;!-- --&gt;s registered by this application,
3995 or %NULL. The returned #GSList is owned by the #GtkApplication
3996 and it should not be modified or freed directly.</doc>
3997         <return-value transfer-ownership="none">
3998           <doc xml:whitespace="preserve">A pointer</doc>
3999           <type name="GLib.SList" c:type="GSList*">
4000             <type name="Window"/>
4001           </type>
4002         </return-value>
4003       </method>
4004       <method name="quit" c:identifier="gtk_application_quit" version="3.0">
4005         <doc xml:whitespace="preserve">Request the application exit.  This function invokes
4006 g_application_quit_with_data(), which normally will
4007 in turn cause @app to emit #GtkApplication::quit.
4008 To control an application's quit behavior (for example, to ask for
4009 files to be saved), connect to the #GtkApplication::quit signal
4010 handler.</doc>
4011         <return-value transfer-ownership="none">
4012           <type name="none" c:type="void"/>
4013         </return-value>
4014       </method>
4015       <method name="run" c:identifier="gtk_application_run" version="3.0">
4016         <doc xml:whitespace="preserve">Runs the main loop; see g_application_run().
4017 The default implementation for #GtkApplication uses gtk_main().</doc>
4018         <return-value transfer-ownership="none">
4019           <type name="none" c:type="void"/>
4020         </return-value>
4021       </method>
4022       <method name="set_action_group"
4023               c:identifier="gtk_application_set_action_group"
4024               version="3.0">
4025         <doc xml:whitespace="preserve">Set @group as this application's global action group.
4026 This will ensure the operating system interface uses
4027 these actions as follows:
4028 &lt;itemizedlist&gt;
4029 &lt;listitem&gt;In GNOME 2 this exposes the actions for scripting.&lt;/listitem&gt;
4030 &lt;listitem&gt;In GNOME 3, this function populates the application menu.&lt;/listitem&gt;
4031 &lt;listitem&gt;In Windows prior to version 7, this function does nothing.&lt;/listitem&gt;
4032 &lt;listitem&gt;In Windows 7, this function adds "Tasks" to the Jump List.&lt;/listitem&gt;
4033 &lt;listitem&gt;In Mac OS X, this function extends the Dock menu.&lt;/listitem&gt;
4034 &lt;/itemizedlist&gt;
4035 It is an error to call this function more than once.</doc>
4036         <return-value transfer-ownership="none">
4037           <type name="none" c:type="void"/>
4038         </return-value>
4039         <parameters>
4040           <parameter name="group" transfer-ownership="none">
4041             <doc xml:whitespace="preserve">A #GtkActionGroup</doc>
4042             <type name="ActionGroup" c:type="GtkActionGroup*"/>
4043           </parameter>
4044         </parameters>
4045       </method>
4046       <field name="parent">
4047         <type name="Gio.Application" c:type="GApplication"/>
4048       </field>
4049       <field name="priv">
4050         <type name="ApplicationPrivate" c:type="GtkApplicationPrivate*"/>
4051       </field>
4052       <glib:signal name="action" version="3.0">
4053         <doc xml:whitespace="preserve">This signal is emitted when an action is activated. The action name
4054 is passed as the first argument, but also as signal detail, so it
4055 is possible to connect to this signal for individual actions.
4056 See also the #GApplication::action-with-data signal which may in
4057 turn trigger this signal.
4058 The signal is never emitted for disabled actions.</doc>
4059         <return-value transfer-ownership="none">
4060           <type name="none"/>
4061         </return-value>
4062         <parameters>
4063           <parameter name="object" transfer-ownership="none">
4064             <doc xml:whitespace="preserve">The name of the activated action</doc>
4065             <type name="utf8"/>
4066           </parameter>
4067         </parameters>
4068       </glib:signal>
4069       <glib:signal name="activated" version="3.0">
4070         <doc xml:whitespace="preserve">This signal is emitted when a non-primary process for a given
4071 application is invoked while your application is running; for
4072 example, when a file browser launches your program to open a
4073 file.  The raw operating system arguments are passed in the
4074 variant @arguments.</doc>
4075         <return-value transfer-ownership="none">
4076           <type name="none"/>
4077         </return-value>
4078         <parameters>
4079           <parameter name="object" transfer-ownership="none">
4080             <type name="GLib.Variant"/>
4081           </parameter>
4082         </parameters>
4083       </glib:signal>
4084       <glib:signal name="quit" version="3.0">
4085         <doc xml:whitespace="preserve">This signal is emitted when a quit is initiated.  See also
4086 the #GApplication::quit-with-data signal which may in
4087 turn trigger this signal.
4088 The default handler for this signal exits the mainloop of the
4089 application. It is possible to override the default handler
4090 by simply returning %TRUE from a callback, e.g.:
4091 |[
4092 static gboolean
4093 my_application_quit (GtkApplication *application)
4094 {
4095 /&amp;ast; if some_condition is TRUE, do not quit &amp;ast;/
4096 if (some_condition)
4097 return TRUE;
4098 /&amp;ast; this will cause the application to quit &amp;ast;
4099 return FALSE;
4100 }
4101 g_signal_connect (application, "quit",
4102 G_CALLBACK (my_application_quit),
4103 NULL);
4104 ]|
4105 signal emission</doc>
4106         <return-value transfer-ownership="none">
4107           <doc xml:whitespace="preserve">%TRUE if the signal has been handled, %FALSE to continue</doc>
4108           <type name="gboolean"/>
4109         </return-value>
4110       </glib:signal>
4111     </class>
4112     <record name="ApplicationClass"
4113             c:type="GtkApplicationClass"
4114             glib:is-gtype-struct-for="Application">
4115       <field name="parent_class">
4116         <type name="Gio.ApplicationClass" c:type="GApplicationClass"/>
4117       </field>
4118       <field name="create_window">
4119         <callback name="create_window">
4120           <return-value transfer-ownership="none">
4121             <doc xml:whitespace="preserve">the newly created application #GtkWindow</doc>
4122             <type name="Window" c:type="GtkWindow*"/>
4123           </return-value>
4124           <parameters>
4125             <parameter name="app" transfer-ownership="none">
4126               <type name="Application" c:type="GtkApplication*"/>
4127             </parameter>
4128           </parameters>
4129         </callback>
4130       </field>
4131       <field name="activated">
4132         <callback name="activated">
4133           <return-value transfer-ownership="none">
4134             <type name="none" c:type="void"/>
4135           </return-value>
4136           <parameters>
4137             <parameter name="app" transfer-ownership="none">
4138               <type name="Application" c:type="GtkApplication*"/>
4139             </parameter>
4140             <parameter name="args" transfer-ownership="none">
4141               <type name="GLib.Variant" c:type="GVariant*"/>
4142             </parameter>
4143           </parameters>
4144         </callback>
4145       </field>
4146       <field name="action">
4147         <callback name="action">
4148           <return-value transfer-ownership="none">
4149             <type name="none" c:type="void"/>
4150           </return-value>
4151           <parameters>
4152             <parameter name="app" transfer-ownership="none">
4153               <type name="Application" c:type="GtkApplication*"/>
4154             </parameter>
4155             <parameter name="action_name" transfer-ownership="none">
4156               <type name="utf8" c:type="gchar*"/>
4157             </parameter>
4158           </parameters>
4159         </callback>
4160       </field>
4161       <field name="quit">
4162         <callback name="quit">
4163           <return-value transfer-ownership="none">
4164             <type name="gboolean" c:type="gboolean"/>
4165           </return-value>
4166           <parameters>
4167             <parameter name="app" transfer-ownership="none">
4168               <type name="Application" c:type="GtkApplication*"/>
4169             </parameter>
4170           </parameters>
4171         </callback>
4172       </field>
4173       <field name="_gtk_reserved1" introspectable="0">
4174         <callback name="_gtk_reserved1">
4175           <return-value transfer-ownership="none">
4176             <type name="none" c:type="void"/>
4177           </return-value>
4178         </callback>
4179       </field>
4180       <field name="_gtk_reserved2" introspectable="0">
4181         <callback name="_gtk_reserved2">
4182           <return-value transfer-ownership="none">
4183             <type name="none" c:type="void"/>
4184           </return-value>
4185         </callback>
4186       </field>
4187       <field name="_gtk_reserved3" introspectable="0">
4188         <callback name="_gtk_reserved3">
4189           <return-value transfer-ownership="none">
4190             <type name="none" c:type="void"/>
4191           </return-value>
4192         </callback>
4193       </field>
4194       <field name="_gtk_reserved4" introspectable="0">
4195         <callback name="_gtk_reserved4">
4196           <return-value transfer-ownership="none">
4197             <type name="none" c:type="void"/>
4198           </return-value>
4199         </callback>
4200       </field>
4201       <field name="_gtk_reserved5" introspectable="0">
4202         <callback name="_gtk_reserved5">
4203           <return-value transfer-ownership="none">
4204             <type name="none" c:type="void"/>
4205           </return-value>
4206         </callback>
4207       </field>
4208       <field name="_gtk_reserved6" introspectable="0">
4209         <callback name="_gtk_reserved6">
4210           <return-value transfer-ownership="none">
4211             <type name="none" c:type="void"/>
4212           </return-value>
4213         </callback>
4214       </field>
4215       <field name="_gtk_reserved7" introspectable="0">
4216         <callback name="_gtk_reserved7">
4217           <return-value transfer-ownership="none">
4218             <type name="none" c:type="void"/>
4219           </return-value>
4220         </callback>
4221       </field>
4222       <field name="_gtk_reserved8" introspectable="0">
4223         <callback name="_gtk_reserved8">
4224           <return-value transfer-ownership="none">
4225             <type name="none" c:type="void"/>
4226           </return-value>
4227         </callback>
4228       </field>
4229       <field name="_gtk_reserved9" introspectable="0">
4230         <callback name="_gtk_reserved9">
4231           <return-value transfer-ownership="none">
4232             <type name="none" c:type="void"/>
4233           </return-value>
4234         </callback>
4235       </field>
4236       <field name="_gtk_reserved10" introspectable="0">
4237         <callback name="_gtk_reserved10">
4238           <return-value transfer-ownership="none">
4239             <type name="none" c:type="void"/>
4240           </return-value>
4241         </callback>
4242       </field>
4243     </record>
4244     <record name="ApplicationPrivate"
4245             c:type="GtkApplicationPrivate"
4246             disguised="1">
4247     </record>
4248     <record name="Arg" c:type="GtkArg">
4249       <doc xml:whitespace="preserve">This is a structure that we use to pass in typed values (and names).</doc>
4250       <field name="type" writable="1">
4251         <type name="GType" c:type="GType"/>
4252       </field>
4253       <field name="name" writable="1">
4254         <type name="utf8" c:type="gchar*"/>
4255       </field>
4256       <union name="d" c:type="d">
4257         <field name="char_data" writable="1">
4258           <type name="gchar" c:type="gchar"/>
4259         </field>
4260         <field name="uchar_data" writable="1">
4261           <type name="guint8" c:type="guchar"/>
4262         </field>
4263         <field name="bool_data" writable="1">
4264           <type name="gboolean" c:type="gboolean"/>
4265         </field>
4266         <field name="int_data" writable="1">
4267           <type name="gint" c:type="gint"/>
4268         </field>
4269         <field name="uint_data" writable="1">
4270           <type name="guint" c:type="guint"/>
4271         </field>
4272         <field name="long_data" writable="1">
4273           <type name="glong" c:type="glong"/>
4274         </field>
4275         <field name="ulong_data" writable="1">
4276           <type name="gulong" c:type="gulong"/>
4277         </field>
4278         <field name="float_data" writable="1">
4279           <type name="gfloat" c:type="gfloat"/>
4280         </field>
4281         <field name="double_data" writable="1">
4282           <type name="gdouble" c:type="gdouble"/>
4283         </field>
4284         <field name="string_data" writable="1">
4285           <type name="utf8" c:type="gchar*"/>
4286         </field>
4287         <field name="object_data" writable="1">
4288           <type name="Object" c:type="GtkObject*"/>
4289         </field>
4290         <field name="pointer_data" writable="1">
4291           <type name="gpointer" c:type="gpointer"/>
4292         </field>
4293         <record name="signal_data" c:type="signal_data">
4294           <field name="f" writable="1">
4295             <type name="GObject.Callback" c:type="GCallback"/>
4296           </field>
4297           <field name="d" writable="1">
4298             <type name="gpointer" c:type="gpointer"/>
4299           </field>
4300         </record>
4301       </union>
4302     </record>
4303     <class name="Arrow"
4304            c:symbol-prefix="arrow"
4305            c:type="GtkArrow"
4306            parent="Misc"
4307            glib:type-name="GtkArrow"
4308            glib:get-type="gtk_arrow_get_type"
4309            glib:type-struct="ArrowClass">
4310       <implements name="Atk.ImplementorIface"/>
4311       <implements name="Buildable"/>
4312       <implements name="SizeRequest"/>
4313       <constructor name="new" c:identifier="gtk_arrow_new">
4314         <doc xml:whitespace="preserve">Creates a new #GtkArrow widget.</doc>
4315         <return-value transfer-ownership="none">
4316           <doc xml:whitespace="preserve">the new #GtkArrow widget.</doc>
4317           <type name="Widget" c:type="GtkWidget*"/>
4318         </return-value>
4319         <parameters>
4320           <parameter name="arrow_type" transfer-ownership="none">
4321             <doc xml:whitespace="preserve">a valid #GtkArrowType.</doc>
4322             <type name="ArrowType" c:type="GtkArrowType"/>
4323           </parameter>
4324           <parameter name="shadow_type" transfer-ownership="none">
4325             <doc xml:whitespace="preserve">a valid #GtkShadowType.</doc>
4326             <type name="ShadowType" c:type="GtkShadowType"/>
4327           </parameter>
4328         </parameters>
4329       </constructor>
4330       <method name="set" c:identifier="gtk_arrow_set">
4331         <doc xml:whitespace="preserve">Sets the direction and style of the #GtkArrow, @arrow.</doc>
4332         <return-value transfer-ownership="none">
4333           <type name="none" c:type="void"/>
4334         </return-value>
4335         <parameters>
4336           <parameter name="arrow_type" transfer-ownership="none">
4337             <doc xml:whitespace="preserve">a valid #GtkArrowType.</doc>
4338             <type name="ArrowType" c:type="GtkArrowType"/>
4339           </parameter>
4340           <parameter name="shadow_type" transfer-ownership="none">
4341             <doc xml:whitespace="preserve">a valid #GtkShadowType.</doc>
4342             <type name="ShadowType" c:type="GtkShadowType"/>
4343           </parameter>
4344         </parameters>
4345       </method>
4346       <property name="arrow-type" writable="1" transfer-ownership="none">
4347         <type name="ArrowType"/>
4348       </property>
4349       <property name="shadow-type" writable="1" transfer-ownership="none">
4350         <type name="ShadowType"/>
4351       </property>
4352       <field name="misc">
4353         <type name="Misc" c:type="GtkMisc"/>
4354       </field>
4355       <field name="priv">
4356         <type name="ArrowPrivate" c:type="GtkArrowPrivate*"/>
4357       </field>
4358     </class>
4359     <record name="ArrowClass"
4360             c:type="GtkArrowClass"
4361             glib:is-gtype-struct-for="Arrow">
4362       <field name="parent_class">
4363         <type name="MiscClass" c:type="GtkMiscClass"/>
4364       </field>
4365     </record>
4366     <enumeration name="ArrowPlacement"
4367                  glib:type-name="GtkArrowPlacement"
4368                  glib:get-type="gtk_arrow_placement_get_type"
4369                  c:type="GtkArrowPlacement">
4370       <member name="both"
4371               value="0"
4372               c:identifier="GTK_ARROWS_BOTH"
4373               glib:nick="both"/>
4374       <member name="start"
4375               value="1"
4376               c:identifier="GTK_ARROWS_START"
4377               glib:nick="start"/>
4378       <member name="end"
4379               value="2"
4380               c:identifier="GTK_ARROWS_END"
4381               glib:nick="end"/>
4382     </enumeration>
4383     <record name="ArrowPrivate" c:type="GtkArrowPrivate" disguised="1">
4384     </record>
4385     <enumeration name="ArrowType"
4386                  glib:type-name="GtkArrowType"
4387                  glib:get-type="gtk_arrow_type_get_type"
4388                  c:type="GtkArrowType">
4389       <member name="up" value="0" c:identifier="GTK_ARROW_UP" glib:nick="up"/>
4390       <member name="down"
4391               value="1"
4392               c:identifier="GTK_ARROW_DOWN"
4393               glib:nick="down"/>
4394       <member name="left"
4395               value="2"
4396               c:identifier="GTK_ARROW_LEFT"
4397               glib:nick="left"/>
4398       <member name="right"
4399               value="3"
4400               c:identifier="GTK_ARROW_RIGHT"
4401               glib:nick="right"/>
4402       <member name="none"
4403               value="4"
4404               c:identifier="GTK_ARROW_NONE"
4405               glib:nick="none"/>
4406     </enumeration>
4407     <class name="AspectFrame"
4408            c:symbol-prefix="aspect_frame"
4409            c:type="GtkAspectFrame"
4410            parent="Frame"
4411            glib:type-name="GtkAspectFrame"
4412            glib:get-type="gtk_aspect_frame_get_type"
4413            glib:type-struct="AspectFrameClass">
4414       <implements name="Atk.ImplementorIface"/>
4415       <implements name="Buildable"/>
4416       <implements name="SizeRequest"/>
4417       <constructor name="new" c:identifier="gtk_aspect_frame_new">
4418         <doc xml:whitespace="preserve">Create a new #GtkAspectFrame.</doc>
4419         <return-value transfer-ownership="none">
4420           <doc xml:whitespace="preserve">the new #GtkAspectFrame.</doc>
4421           <type name="Widget" c:type="GtkWidget*"/>
4422         </return-value>
4423         <parameters>
4424           <parameter name="label" transfer-ownership="none">
4425             <doc xml:whitespace="preserve">Label text.</doc>
4426             <type name="utf8" c:type="gchar*"/>
4427           </parameter>
4428           <parameter name="xalign" transfer-ownership="none">
4429             <doc xml:whitespace="preserve">Horizontal alignment of the child within the allocation of the #GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned)</doc>
4430             <type name="gfloat" c:type="gfloat"/>
4431           </parameter>
4432           <parameter name="yalign" transfer-ownership="none">
4433             <doc xml:whitespace="preserve">Vertical alignment of the child within the allocation of the #GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned)</doc>
4434             <type name="gfloat" c:type="gfloat"/>
4435           </parameter>
4436           <parameter name="ratio" transfer-ownership="none">
4437             <doc xml:whitespace="preserve">The desired aspect ratio.</doc>
4438             <type name="gfloat" c:type="gfloat"/>
4439           </parameter>
4440           <parameter name="obey_child" transfer-ownership="none">
4441             <doc xml:whitespace="preserve">If %TRUE, @ratio is ignored, and the aspect ratio is taken from the requistion of the child.</doc>
4442             <type name="gboolean" c:type="gboolean"/>
4443           </parameter>
4444         </parameters>
4445       </constructor>
4446       <method name="set" c:identifier="gtk_aspect_frame_set">
4447         <doc xml:whitespace="preserve">Set parameters for an existing #GtkAspectFrame.</doc>
4448         <return-value transfer-ownership="none">
4449           <type name="none" c:type="void"/>
4450         </return-value>
4451         <parameters>
4452           <parameter name="xalign" transfer-ownership="none">
4453             <doc xml:whitespace="preserve">Horizontal alignment of the child within the allocation of the #GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned)</doc>
4454             <type name="gfloat" c:type="gfloat"/>
4455           </parameter>
4456           <parameter name="yalign" transfer-ownership="none">
4457             <doc xml:whitespace="preserve">Vertical alignment of the child within the allocation of the #GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned)</doc>
4458             <type name="gfloat" c:type="gfloat"/>
4459           </parameter>
4460           <parameter name="ratio" transfer-ownership="none">
4461             <doc xml:whitespace="preserve">The desired aspect ratio.</doc>
4462             <type name="gfloat" c:type="gfloat"/>
4463           </parameter>
4464           <parameter name="obey_child" transfer-ownership="none">
4465             <doc xml:whitespace="preserve">If %TRUE, @ratio is ignored, and the aspect ratio is taken from the requistion of the child.</doc>
4466             <type name="gboolean" c:type="gboolean"/>
4467           </parameter>
4468         </parameters>
4469       </method>
4470       <property name="obey-child" writable="1" transfer-ownership="none">
4471         <type name="gboolean"/>
4472       </property>
4473       <property name="ratio" writable="1" transfer-ownership="none">
4474         <type name="gfloat"/>
4475       </property>
4476       <property name="xalign" writable="1" transfer-ownership="none">
4477         <type name="gfloat"/>
4478       </property>
4479       <property name="yalign" writable="1" transfer-ownership="none">
4480         <type name="gfloat"/>
4481       </property>
4482       <field name="frame">
4483         <type name="Frame" c:type="GtkFrame"/>
4484       </field>
4485       <field name="priv">
4486         <type name="AspectFramePrivate" c:type="GtkAspectFramePrivate*"/>
4487       </field>
4488     </class>
4489     <record name="AspectFrameClass"
4490             c:type="GtkAspectFrameClass"
4491             glib:is-gtype-struct-for="AspectFrame">
4492       <field name="parent_class">
4493         <type name="FrameClass" c:type="GtkFrameClass"/>
4494       </field>
4495     </record>
4496     <record name="AspectFramePrivate"
4497             c:type="GtkAspectFramePrivate"
4498             disguised="1">
4499     </record>
4500     <class name="Assistant"
4501            c:symbol-prefix="assistant"
4502            c:type="GtkAssistant"
4503            parent="Window"
4504            glib:type-name="GtkAssistant"
4505            glib:get-type="gtk_assistant_get_type"
4506            glib:type-struct="AssistantClass">
4507       <implements name="Atk.ImplementorIface"/>
4508       <implements name="Buildable"/>
4509       <implements name="SizeRequest"/>
4510       <constructor name="new" c:identifier="gtk_assistant_new" version="2.10">
4511         <doc xml:whitespace="preserve">Creates a new #GtkAssistant.</doc>
4512         <return-value transfer-ownership="none">
4513           <doc xml:whitespace="preserve">a newly created #GtkAssistant</doc>
4514           <type name="Widget" c:type="GtkWidget*"/>
4515         </return-value>
4516       </constructor>
4517       <method name="add_action_widget"
4518               c:identifier="gtk_assistant_add_action_widget"
4519               version="2.10">
4520         <doc xml:whitespace="preserve">Adds a widget to the action area of a #GtkAssistant.</doc>
4521         <return-value transfer-ownership="none">
4522           <type name="none" c:type="void"/>
4523         </return-value>
4524         <parameters>
4525           <parameter name="child" transfer-ownership="none">
4526             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4527             <type name="Widget" c:type="GtkWidget*"/>
4528           </parameter>
4529         </parameters>
4530       </method>
4531       <method name="append_page"
4532               c:identifier="gtk_assistant_append_page"
4533               version="2.10">
4534         <doc xml:whitespace="preserve">Appends a page to the @assistant.</doc>
4535         <return-value transfer-ownership="none">
4536           <doc xml:whitespace="preserve">the index (starting at 0) of the inserted page</doc>
4537           <type name="gint" c:type="gint"/>
4538         </return-value>
4539         <parameters>
4540           <parameter name="page" transfer-ownership="none">
4541             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4542             <type name="Widget" c:type="GtkWidget*"/>
4543           </parameter>
4544         </parameters>
4545       </method>
4546       <method name="commit" c:identifier="gtk_assistant_commit" version="2.22">
4547         <doc xml:whitespace="preserve">Erases the visited page history so the back button is not
4548 shown on the current page, and removes the cancel button
4549 from subsequent pages.
4550 Use this when the information provided up to the current
4551 page is hereafter deemed permanent and cannot be modified
4552 or undone.  For example, showing a progress page to track
4553 a long-running, unreversible operation after the user has
4554 clicked apply on a confirmation page.</doc>
4555         <return-value transfer-ownership="none">
4556           <type name="none" c:type="void"/>
4557         </return-value>
4558       </method>
4559       <method name="get_current_page"
4560               c:identifier="gtk_assistant_get_current_page"
4561               version="2.10">
4562         <doc xml:whitespace="preserve">Returns the page number of the current page
4563 the @assistant, if the @assistant has no pages, -1 will be returned</doc>
4564         <return-value transfer-ownership="none">
4565           <doc xml:whitespace="preserve">The index (starting from 0) of the current page in</doc>
4566           <type name="gint" c:type="gint"/>
4567         </return-value>
4568       </method>
4569       <method name="get_n_pages"
4570               c:identifier="gtk_assistant_get_n_pages"
4571               version="2.10">
4572         <doc xml:whitespace="preserve">Returns the number of pages in the @assistant</doc>
4573         <return-value transfer-ownership="none">
4574           <doc xml:whitespace="preserve">The number of pages in the @assistant.</doc>
4575           <type name="gint" c:type="gint"/>
4576         </return-value>
4577       </method>
4578       <method name="get_nth_page"
4579               c:identifier="gtk_assistant_get_nth_page"
4580               version="2.10">
4581         <doc xml:whitespace="preserve">Returns the child widget contained in page number @page_num.
4582 if @page_num is out of bounds.</doc>
4583         <return-value transfer-ownership="none">
4584           <doc xml:whitespace="preserve">The child widget, or %NULL</doc>
4585           <type name="Widget" c:type="GtkWidget*"/>
4586         </return-value>
4587         <parameters>
4588           <parameter name="page_num" transfer-ownership="none">
4589             <doc xml:whitespace="preserve">The index of a page in the @assistant, or -1 to get the last page;</doc>
4590             <type name="gint" c:type="gint"/>
4591           </parameter>
4592         </parameters>
4593       </method>
4594       <method name="get_page_complete"
4595               c:identifier="gtk_assistant_get_page_complete"
4596               version="2.10">
4597         <doc xml:whitespace="preserve">Gets whether @page is complete.</doc>
4598         <return-value transfer-ownership="none">
4599           <doc xml:whitespace="preserve">%TRUE if @page is complete.</doc>
4600           <type name="gboolean" c:type="gboolean"/>
4601         </return-value>
4602         <parameters>
4603           <parameter name="page" transfer-ownership="none">
4604             <doc xml:whitespace="preserve">a page of @assistant</doc>
4605             <type name="Widget" c:type="GtkWidget*"/>
4606           </parameter>
4607         </parameters>
4608       </method>
4609       <method name="get_page_header_image"
4610               c:identifier="gtk_assistant_get_page_header_image"
4611               version="2.10">
4612         <doc xml:whitespace="preserve">Gets the header image for @page.
4613 if there's no header image for the page.</doc>
4614         <return-value transfer-ownership="none">
4615           <doc xml:whitespace="preserve">the header image for @page, or %NULL</doc>
4616           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4617         </return-value>
4618         <parameters>
4619           <parameter name="page" transfer-ownership="none">
4620             <doc xml:whitespace="preserve">a page of @assistant</doc>
4621             <type name="Widget" c:type="GtkWidget*"/>
4622           </parameter>
4623         </parameters>
4624       </method>
4625       <method name="get_page_side_image"
4626               c:identifier="gtk_assistant_get_page_side_image"
4627               version="2.10">
4628         <doc xml:whitespace="preserve">Gets the header image for @page.
4629 if there's no side image for the page.</doc>
4630         <return-value transfer-ownership="none">
4631           <doc xml:whitespace="preserve">the side image for @page, or %NULL</doc>
4632           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4633         </return-value>
4634         <parameters>
4635           <parameter name="page" transfer-ownership="none">
4636             <doc xml:whitespace="preserve">a page of @assistant</doc>
4637             <type name="Widget" c:type="GtkWidget*"/>
4638           </parameter>
4639         </parameters>
4640       </method>
4641       <method name="get_page_title"
4642               c:identifier="gtk_assistant_get_page_title"
4643               version="2.10">
4644         <doc xml:whitespace="preserve">Gets the title for @page.</doc>
4645         <return-value transfer-ownership="none">
4646           <doc xml:whitespace="preserve">the title for @page.</doc>
4647           <type name="utf8" c:type="gchar*"/>
4648         </return-value>
4649         <parameters>
4650           <parameter name="page" transfer-ownership="none">
4651             <doc xml:whitespace="preserve">a page of @assistant</doc>
4652             <type name="Widget" c:type="GtkWidget*"/>
4653           </parameter>
4654         </parameters>
4655       </method>
4656       <method name="get_page_type"
4657               c:identifier="gtk_assistant_get_page_type"
4658               version="2.10">
4659         <doc xml:whitespace="preserve">Gets the page type of @page.</doc>
4660         <return-value transfer-ownership="none">
4661           <doc xml:whitespace="preserve">the page type of @page.</doc>
4662           <type name="AssistantPageType" c:type="GtkAssistantPageType"/>
4663         </return-value>
4664         <parameters>
4665           <parameter name="page" transfer-ownership="none">
4666             <doc xml:whitespace="preserve">a page of @assistant</doc>
4667             <type name="Widget" c:type="GtkWidget*"/>
4668           </parameter>
4669         </parameters>
4670       </method>
4671       <method name="insert_page"
4672               c:identifier="gtk_assistant_insert_page"
4673               version="2.10">
4674         <doc xml:whitespace="preserve">Inserts a page in the @assistant at a given position.</doc>
4675         <return-value transfer-ownership="none">
4676           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted page</doc>
4677           <type name="gint" c:type="gint"/>
4678         </return-value>
4679         <parameters>
4680           <parameter name="page" transfer-ownership="none">
4681             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4682             <type name="Widget" c:type="GtkWidget*"/>
4683           </parameter>
4684           <parameter name="position" transfer-ownership="none">
4685             <doc xml:whitespace="preserve">the index (starting at 0) at which to insert the page, or -1 to append the page to the @assistant</doc>
4686             <type name="gint" c:type="gint"/>
4687           </parameter>
4688         </parameters>
4689       </method>
4690       <method name="prepend_page"
4691               c:identifier="gtk_assistant_prepend_page"
4692               version="2.10">
4693         <doc xml:whitespace="preserve">Prepends a page to the @assistant.</doc>
4694         <return-value transfer-ownership="none">
4695           <doc xml:whitespace="preserve">the index (starting at 0) of the inserted page</doc>
4696           <type name="gint" c:type="gint"/>
4697         </return-value>
4698         <parameters>
4699           <parameter name="page" transfer-ownership="none">
4700             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4701             <type name="Widget" c:type="GtkWidget*"/>
4702           </parameter>
4703         </parameters>
4704       </method>
4705       <method name="remove_action_widget"
4706               c:identifier="gtk_assistant_remove_action_widget"
4707               version="2.10">
4708         <doc xml:whitespace="preserve">Removes a widget from the action area of a #GtkAssistant.</doc>
4709         <return-value transfer-ownership="none">
4710           <type name="none" c:type="void"/>
4711         </return-value>
4712         <parameters>
4713           <parameter name="child" transfer-ownership="none">
4714             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4715             <type name="Widget" c:type="GtkWidget*"/>
4716           </parameter>
4717         </parameters>
4718       </method>
4719       <method name="set_current_page"
4720               c:identifier="gtk_assistant_set_current_page"
4721               version="2.10">
4722         <doc xml:whitespace="preserve">Switches the page to @page_num. Note that this will only be necessary
4723 in custom buttons, as the @assistant flow can be set with
4724 gtk_assistant_set_forward_page_func().</doc>
4725         <return-value transfer-ownership="none">
4726           <type name="none" c:type="void"/>
4727         </return-value>
4728         <parameters>
4729           <parameter name="page_num" transfer-ownership="none">
4730             <doc xml:whitespace="preserve">index of the page to switch to, starting from 0. If negative, the last page will be used. If greater than the number of pages in the @assistant, nothing will be done.</doc>
4731             <type name="gint" c:type="gint"/>
4732           </parameter>
4733         </parameters>
4734       </method>
4735       <method name="set_forward_page_func"
4736               c:identifier="gtk_assistant_set_forward_page_func"
4737               version="2.10">
4738         <doc xml:whitespace="preserve">Sets the page forwarding function to be @page_func, this function will
4739 be used to determine what will be the next page when the user presses
4740 the forward button. Setting @page_func to %NULL will make the assistant
4741 to use the default forward function, which just goes to the next visible 
4742 page.</doc>
4743         <return-value transfer-ownership="none">
4744           <type name="none" c:type="void"/>
4745         </return-value>
4746         <parameters>
4747           <parameter name="page_func"
4748                      transfer-ownership="none"
4749                      allow-none="1"
4750                      scope="notified"
4751                      closure="1"
4752                      destroy="2">
4753             <doc xml:whitespace="preserve">the #GtkAssistantPageFunc, or %NULL to use the default one</doc>
4754             <type name="AssistantPageFunc" c:type="GtkAssistantPageFunc"/>
4755           </parameter>
4756           <parameter name="data" transfer-ownership="none">
4757             <doc xml:whitespace="preserve">user data for @page_func</doc>
4758             <type name="gpointer" c:type="gpointer"/>
4759           </parameter>
4760           <parameter name="destroy" transfer-ownership="none" scope="async">
4761             <doc xml:whitespace="preserve">destroy notifier for @data</doc>
4762             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
4763           </parameter>
4764         </parameters>
4765       </method>
4766       <method name="set_page_complete"
4767               c:identifier="gtk_assistant_set_page_complete"
4768               version="2.10">
4769         <doc xml:whitespace="preserve">Sets whether @page contents are complete. This will make</doc>
4770         <return-value transfer-ownership="none">
4771           <type name="none" c:type="void"/>
4772         </return-value>
4773         <parameters>
4774           <parameter name="page" transfer-ownership="none">
4775             <doc xml:whitespace="preserve">a page of @assistant</doc>
4776             <type name="Widget" c:type="GtkWidget*"/>
4777           </parameter>
4778           <parameter name="complete" transfer-ownership="none">
4779             <doc xml:whitespace="preserve">the completeness status of the page</doc>
4780             <type name="gboolean" c:type="gboolean"/>
4781           </parameter>
4782         </parameters>
4783       </method>
4784       <method name="set_page_header_image"
4785               c:identifier="gtk_assistant_set_page_header_image"
4786               version="2.10">
4787         <doc xml:whitespace="preserve">Sets a header image for @page. This image is displayed in the header
4788 area of the assistant when @page is the current page.</doc>
4789         <return-value transfer-ownership="none">
4790           <type name="none" c:type="void"/>
4791         </return-value>
4792         <parameters>
4793           <parameter name="page" transfer-ownership="none">
4794             <doc xml:whitespace="preserve">a page of @assistant</doc>
4795             <type name="Widget" c:type="GtkWidget*"/>
4796           </parameter>
4797           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
4798             <doc xml:whitespace="preserve">the new header image @page</doc>
4799             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4800           </parameter>
4801         </parameters>
4802       </method>
4803       <method name="set_page_side_image"
4804               c:identifier="gtk_assistant_set_page_side_image"
4805               version="2.10">
4806         <doc xml:whitespace="preserve">Sets a header image for @page. This image is displayed in the side
4807 area of the assistant when @page is the current page.</doc>
4808         <return-value transfer-ownership="none">
4809           <type name="none" c:type="void"/>
4810         </return-value>
4811         <parameters>
4812           <parameter name="page" transfer-ownership="none">
4813             <doc xml:whitespace="preserve">a page of @assistant</doc>
4814             <type name="Widget" c:type="GtkWidget*"/>
4815           </parameter>
4816           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
4817             <doc xml:whitespace="preserve">the new header image @page</doc>
4818             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4819           </parameter>
4820         </parameters>
4821       </method>
4822       <method name="set_page_title"
4823               c:identifier="gtk_assistant_set_page_title"
4824               version="2.10">
4825         <doc xml:whitespace="preserve">Sets a title for @page. The title is displayed in the header
4826 area of the assistant when @page is the current page.</doc>
4827         <return-value transfer-ownership="none">
4828           <type name="none" c:type="void"/>
4829         </return-value>
4830         <parameters>
4831           <parameter name="page" transfer-ownership="none">
4832             <doc xml:whitespace="preserve">a page of @assistant</doc>
4833             <type name="Widget" c:type="GtkWidget*"/>
4834           </parameter>
4835           <parameter name="title" transfer-ownership="none">
4836             <doc xml:whitespace="preserve">the new title for @page</doc>
4837             <type name="utf8" c:type="gchar*"/>
4838           </parameter>
4839         </parameters>
4840       </method>
4841       <method name="set_page_type"
4842               c:identifier="gtk_assistant_set_page_type"
4843               version="2.10">
4844         <doc xml:whitespace="preserve">Sets the page type for @page. The page type determines the page
4845 behavior in the @assistant.</doc>
4846         <return-value transfer-ownership="none">
4847           <type name="none" c:type="void"/>
4848         </return-value>
4849         <parameters>
4850           <parameter name="page" transfer-ownership="none">
4851             <doc xml:whitespace="preserve">a page of @assistant</doc>
4852             <type name="Widget" c:type="GtkWidget*"/>
4853           </parameter>
4854           <parameter name="type" transfer-ownership="none">
4855             <doc xml:whitespace="preserve">the new type for @page</doc>
4856             <type name="AssistantPageType" c:type="GtkAssistantPageType"/>
4857           </parameter>
4858         </parameters>
4859       </method>
4860       <method name="update_buttons_state"
4861               c:identifier="gtk_assistant_update_buttons_state"
4862               version="2.10">
4863         <doc xml:whitespace="preserve">Forces @assistant to recompute the buttons state.
4864 GTK+ automatically takes care of this in most situations, 
4865 e.g. when the user goes to a different page, or when the
4866 visibility or completeness of a page changes.
4867 One situation where it can be necessary to call this
4868 function is when changing a value on the current page
4869 affects the future page flow of the assistant.</doc>
4870         <return-value transfer-ownership="none">
4871           <type name="none" c:type="void"/>
4872         </return-value>
4873       </method>
4874       <field name="parent">
4875         <type name="Window" c:type="GtkWindow"/>
4876       </field>
4877       <field name="priv">
4878         <type name="AssistantPrivate" c:type="GtkAssistantPrivate*"/>
4879       </field>
4880       <glib:signal name="apply" version="2.10">
4881         <doc xml:whitespace="preserve">The ::apply signal is emitted when the apply button is clicked. The default
4882 behavior of the #GtkAssistant is to switch to the page after the current
4883 page, unless the current page is the last one.
4884 A handler for the ::apply signal should carry out the actions for which
4885 the wizard has collected data. If the action takes a long time to complete,
4886 you might consider putting a page of type %GTK_ASSISTANT_PAGE_PROGRESS
4887 after the confirmation page and handle this operation within the
4888 #GtkAssistant::prepare signal of the progress page.</doc>
4889         <return-value transfer-ownership="none">
4890           <type name="none"/>
4891         </return-value>
4892       </glib:signal>
4893       <glib:signal name="cancel" version="2.10">
4894         <doc xml:whitespace="preserve">The ::cancel signal is emitted when then the cancel button is clicked.</doc>
4895         <return-value transfer-ownership="none">
4896           <type name="none"/>
4897         </return-value>
4898       </glib:signal>
4899       <glib:signal name="close" version="2.10">
4900         <doc xml:whitespace="preserve">The ::close signal is emitted either when the close button of
4901 a summary page is clicked, or when the apply button in the last
4902 page in the flow (of type %GTK_ASSISTANT_PAGE_CONFIRM) is clicked.</doc>
4903         <return-value transfer-ownership="none">
4904           <type name="none"/>
4905         </return-value>
4906       </glib:signal>
4907       <glib:signal name="prepare" version="2.10">
4908         <doc xml:whitespace="preserve">The ::prepare signal is emitted when a new page is set as the assistant's
4909 current page, before making the new page visible. A handler for this signal
4910 can do any preparation which are necessary before showing @page.</doc>
4911         <return-value transfer-ownership="none">
4912           <type name="none"/>
4913         </return-value>
4914         <parameters>
4915           <parameter name="object" transfer-ownership="none">
4916             <doc xml:whitespace="preserve">the current page</doc>
4917             <type name="Widget"/>
4918           </parameter>
4919         </parameters>
4920       </glib:signal>
4921     </class>
4922     <record name="AssistantClass"
4923             c:type="GtkAssistantClass"
4924             glib:is-gtype-struct-for="Assistant">
4925       <field name="parent_class">
4926         <type name="WindowClass" c:type="GtkWindowClass"/>
4927       </field>
4928       <field name="prepare">
4929         <callback name="prepare">
4930           <return-value transfer-ownership="none">
4931             <type name="none" c:type="void"/>
4932           </return-value>
4933           <parameters>
4934             <parameter name="assistant" transfer-ownership="none">
4935               <type name="Assistant" c:type="GtkAssistant*"/>
4936             </parameter>
4937             <parameter name="page" transfer-ownership="none">
4938               <type name="Widget" c:type="GtkWidget*"/>
4939             </parameter>
4940           </parameters>
4941         </callback>
4942       </field>
4943       <field name="apply">
4944         <callback name="apply">
4945           <return-value transfer-ownership="none">
4946             <type name="none" c:type="void"/>
4947           </return-value>
4948           <parameters>
4949             <parameter name="assistant" transfer-ownership="none">
4950               <type name="Assistant" c:type="GtkAssistant*"/>
4951             </parameter>
4952           </parameters>
4953         </callback>
4954       </field>
4955       <field name="close">
4956         <callback name="close">
4957           <return-value transfer-ownership="none">
4958             <type name="none" c:type="void"/>
4959           </return-value>
4960           <parameters>
4961             <parameter name="assistant" transfer-ownership="none">
4962               <type name="Assistant" c:type="GtkAssistant*"/>
4963             </parameter>
4964           </parameters>
4965         </callback>
4966       </field>
4967       <field name="cancel">
4968         <callback name="cancel">
4969           <return-value transfer-ownership="none">
4970             <type name="none" c:type="void"/>
4971           </return-value>
4972           <parameters>
4973             <parameter name="assistant" transfer-ownership="none">
4974               <type name="Assistant" c:type="GtkAssistant*"/>
4975             </parameter>
4976           </parameters>
4977         </callback>
4978       </field>
4979       <field name="_gtk_reserved1" introspectable="0">
4980         <callback name="_gtk_reserved1">
4981           <return-value transfer-ownership="none">
4982             <type name="none" c:type="void"/>
4983           </return-value>
4984         </callback>
4985       </field>
4986       <field name="_gtk_reserved2" introspectable="0">
4987         <callback name="_gtk_reserved2">
4988           <return-value transfer-ownership="none">
4989             <type name="none" c:type="void"/>
4990           </return-value>
4991         </callback>
4992       </field>
4993       <field name="_gtk_reserved3" introspectable="0">
4994         <callback name="_gtk_reserved3">
4995           <return-value transfer-ownership="none">
4996             <type name="none" c:type="void"/>
4997           </return-value>
4998         </callback>
4999       </field>
5000       <field name="_gtk_reserved4" introspectable="0">
5001         <callback name="_gtk_reserved4">
5002           <return-value transfer-ownership="none">
5003             <type name="none" c:type="void"/>
5004           </return-value>
5005         </callback>
5006       </field>
5007       <field name="_gtk_reserved5" introspectable="0">
5008         <callback name="_gtk_reserved5">
5009           <return-value transfer-ownership="none">
5010             <type name="none" c:type="void"/>
5011           </return-value>
5012         </callback>
5013       </field>
5014     </record>
5015     <callback name="AssistantPageFunc" c:type="GtkAssistantPageFunc">
5016       <doc xml:whitespace="preserve">A function used by gtk_assistant_set_forward_page_func() to know which
5017 is the next page given a current one. It's called both for computing the
5018 next page when the user presses the "forward" button and for handling
5019 the behavior of the "last" button.</doc>
5020       <return-value transfer-ownership="none">
5021         <doc xml:whitespace="preserve">The next page number.</doc>
5022         <type name="gint" c:type="gint"/>
5023       </return-value>
5024       <parameters>
5025         <parameter name="current_page" transfer-ownership="none">
5026           <doc xml:whitespace="preserve">The page number used to calculate the next page.</doc>
5027           <type name="gint" c:type="gint"/>
5028         </parameter>
5029         <parameter name="data" transfer-ownership="none">
5030           <doc xml:whitespace="preserve">user data.</doc>
5031           <type name="gpointer" c:type="gpointer"/>
5032         </parameter>
5033       </parameters>
5034     </callback>
5035     <enumeration name="AssistantPageType"
5036                  glib:type-name="GtkAssistantPageType"
5037                  glib:get-type="gtk_assistant_page_type_get_type"
5038                  c:type="GtkAssistantPageType">
5039       <doc xml:whitespace="preserve">An enum for determining the page role inside the #GtkAssistant. It's
5040 used to handle buttons sensitivity and visibility.
5041 Note that an assistant needs to end its page flow with a page of type
5042 %GTK_ASSISTANT_PAGE_CONFIRM, %GTK_ASSISTANT_PAGE_SUMMARY or
5043 %GTK_ASSISTANT_PAGE_PROGRESS to be correct.</doc>
5044       <member name="content"
5045               value="0"
5046               c:identifier="GTK_ASSISTANT_PAGE_CONTENT"
5047               glib:nick="content"/>
5048       <member name="intro"
5049               value="1"
5050               c:identifier="GTK_ASSISTANT_PAGE_INTRO"
5051               glib:nick="intro"/>
5052       <member name="confirm"
5053               value="2"
5054               c:identifier="GTK_ASSISTANT_PAGE_CONFIRM"
5055               glib:nick="confirm"/>
5056       <member name="summary"
5057               value="3"
5058               c:identifier="GTK_ASSISTANT_PAGE_SUMMARY"
5059               glib:nick="summary"/>
5060       <member name="progress"
5061               value="4"
5062               c:identifier="GTK_ASSISTANT_PAGE_PROGRESS"
5063               glib:nick="progress"/>
5064     </enumeration>
5065     <record name="AssistantPrivate" c:type="GtkAssistantPrivate" disguised="1">
5066     </record>
5067     <bitfield name="AttachOptions"
5068               glib:type-name="GtkAttachOptions"
5069               glib:get-type="gtk_attach_options_get_type"
5070               c:type="GtkAttachOptions">
5071       <member name="expand"
5072               value="1"
5073               c:identifier="GTK_EXPAND"
5074               glib:nick="expand"/>
5075       <member name="shrink"
5076               value="2"
5077               c:identifier="GTK_SHRINK"
5078               glib:nick="shrink"/>
5079       <member name="fill" value="4" c:identifier="GTK_FILL" glib:nick="fill"/>
5080     </bitfield>
5081     <constant name="BINARY_AGE" value="9008">
5082       <type name="gint" c:type="gint"/>
5083     </constant>
5084     <class name="Bin"
5085            c:symbol-prefix="bin"
5086            c:type="GtkBin"
5087            parent="Container"
5088            abstract="1"
5089            glib:type-name="GtkBin"
5090            glib:get-type="gtk_bin_get_type"
5091            glib:type-struct="BinClass">
5092       <implements name="Atk.ImplementorIface"/>
5093       <implements name="Buildable"/>
5094       <implements name="SizeRequest"/>
5095       <method name="get_child" c:identifier="gtk_bin_get_child">
5096         <doc xml:whitespace="preserve">Gets the child of the #GtkBin, or %NULL if the bin contains
5097 no child widget. The returned widget does not have a reference
5098 added, so you do not need to unref it.</doc>
5099         <return-value transfer-ownership="none">
5100           <doc xml:whitespace="preserve">pointer to child of the #GtkBin</doc>
5101           <type name="Widget" c:type="GtkWidget*"/>
5102         </return-value>
5103       </method>
5104       <field name="container">
5105         <type name="Container" c:type="GtkContainer"/>
5106       </field>
5107       <field name="priv">
5108         <type name="BinPrivate" c:type="GtkBinPrivate*"/>
5109       </field>
5110     </class>
5111     <record name="BinClass"
5112             c:type="GtkBinClass"
5113             glib:is-gtype-struct-for="Bin">
5114       <field name="parent_class">
5115         <type name="ContainerClass" c:type="GtkContainerClass"/>
5116       </field>
5117     </record>
5118     <record name="BinPrivate" c:type="GtkBinPrivate" disguised="1">
5119     </record>
5120     <record name="BindingArg" c:type="GtkBindingArg">
5121       <field name="arg_type" writable="1">
5122         <type name="GType" c:type="GType"/>
5123       </field>
5124       <union name="d" c:type="d">
5125         <field name="long_data" writable="1">
5126           <type name="glong" c:type="glong"/>
5127         </field>
5128         <field name="double_data" writable="1">
5129           <type name="gdouble" c:type="gdouble"/>
5130         </field>
5131         <field name="string_data" writable="1">
5132           <type name="utf8" c:type="gchar*"/>
5133         </field>
5134       </union>
5135     </record>
5136     <record name="BindingEntry" c:type="GtkBindingEntry">
5137       <field name="keyval" writable="1">
5138         <type name="guint" c:type="guint"/>
5139       </field>
5140       <field name="modifiers" writable="1">
5141         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
5142       </field>
5143       <field name="binding_set" writable="1">
5144         <type name="BindingSet" c:type="GtkBindingSet*"/>
5145       </field>
5146       <field name="destroyed" writable="1" bits="1">
5147         <type name="guint" c:type="guint"/>
5148       </field>
5149       <field name="in_emission" writable="1" bits="1">
5150         <type name="guint" c:type="guint"/>
5151       </field>
5152       <field name="marks_unbound" writable="1" bits="1">
5153         <type name="guint" c:type="guint"/>
5154       </field>
5155       <field name="set_next" writable="1">
5156         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5157       </field>
5158       <field name="hash_next" writable="1">
5159         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5160       </field>
5161       <field name="signals" writable="1">
5162         <type name="BindingSignal" c:type="GtkBindingSignal*"/>
5163       </field>
5164     </record>
5165     <record name="BindingSet" c:type="GtkBindingSet">
5166       <field name="set_name" writable="1">
5167         <type name="utf8" c:type="gchar*"/>
5168       </field>
5169       <field name="priority" writable="1">
5170         <type name="gint" c:type="gint"/>
5171       </field>
5172       <field name="widget_path_pspecs" writable="1">
5173         <type name="GLib.SList" c:type="GSList*">
5174           <type name="gpointer" c:type="gpointer"/>
5175         </type>
5176       </field>
5177       <field name="widget_class_pspecs" writable="1">
5178         <type name="GLib.SList" c:type="GSList*">
5179           <type name="gpointer" c:type="gpointer"/>
5180         </type>
5181       </field>
5182       <field name="class_branch_pspecs" writable="1">
5183         <type name="GLib.SList" c:type="GSList*">
5184           <type name="gpointer" c:type="gpointer"/>
5185         </type>
5186       </field>
5187       <field name="entries" writable="1">
5188         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5189       </field>
5190       <field name="current" writable="1">
5191         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5192       </field>
5193       <field name="parsed" writable="1" bits="1">
5194         <type name="guint" c:type="guint"/>
5195       </field>
5196       <method name="activate" c:identifier="gtk_binding_set_activate">
5197         <doc xml:whitespace="preserve">Find a key binding matching @keyval and @modifiers within</doc>
5198         <return-value transfer-ownership="none">
5199           <doc xml:whitespace="preserve">%TRUE if a binding was found and activated</doc>
5200           <type name="gboolean" c:type="gboolean"/>
5201         </return-value>
5202         <parameters>
5203           <parameter name="keyval" transfer-ownership="none">
5204             <doc xml:whitespace="preserve">key value of the binding</doc>
5205             <type name="guint" c:type="guint"/>
5206           </parameter>
5207           <parameter name="modifiers" transfer-ownership="none">
5208             <doc xml:whitespace="preserve">key modifier of the binding</doc>
5209             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
5210           </parameter>
5211           <parameter name="object" transfer-ownership="none">
5212             <doc xml:whitespace="preserve">object to activate when binding found</doc>
5213             <type name="Object" c:type="GtkObject*"/>
5214           </parameter>
5215         </parameters>
5216       </method>
5217       <method name="add_path" c:identifier="gtk_binding_set_add_path">
5218         <doc xml:whitespace="preserve">This function is used internally by the GtkRC parsing mechanism to
5219 assign match patterns to #GtkBindingSet structures.</doc>
5220         <return-value transfer-ownership="none">
5221           <type name="none" c:type="void"/>
5222         </return-value>
5223         <parameters>
5224           <parameter name="path_type" transfer-ownership="none">
5225             <doc xml:whitespace="preserve">path type the pattern applies to</doc>
5226             <type name="PathType" c:type="GtkPathType"/>
5227           </parameter>
5228           <parameter name="path_pattern" transfer-ownership="none">
5229             <doc xml:whitespace="preserve">the actual match pattern</doc>
5230             <type name="utf8" c:type="gchar*"/>
5231           </parameter>
5232           <parameter name="priority" transfer-ownership="none">
5233             <doc xml:whitespace="preserve">binding priority</doc>
5234             <type name="PathPriorityType" c:type="GtkPathPriorityType"/>
5235           </parameter>
5236         </parameters>
5237       </method>
5238     </record>
5239     <record name="BindingSignal" c:type="GtkBindingSignal">
5240       <field name="next" writable="1">
5241         <type name="BindingSignal" c:type="GtkBindingSignal*"/>
5242       </field>
5243       <field name="signal_name" writable="1">
5244         <type name="utf8" c:type="gchar*"/>
5245       </field>
5246       <field name="n_args" writable="1">
5247         <type name="guint" c:type="guint"/>
5248       </field>
5249       <field name="args" writable="1">
5250         <type name="BindingArg" c:type="GtkBindingArg*"/>
5251       </field>
5252     </record>
5253     <record name="Border"
5254             c:type="GtkBorder"
5255             glib:type-name="GtkBorder"
5256             glib:get-type="gtk_border_get_type"
5257             c:symbol-prefix="border">
5258       <doc xml:whitespace="preserve">A struct that specifies a border around a rectangular area that can
5259 be of different width on each side.</doc>
5260       <field name="left" writable="1">
5261         <type name="gint16" c:type="gint16"/>
5262       </field>
5263       <field name="right" writable="1">
5264         <type name="gint16" c:type="gint16"/>
5265       </field>
5266       <field name="top" writable="1">
5267         <type name="gint16" c:type="gint16"/>
5268       </field>
5269       <field name="bottom" writable="1">
5270         <type name="gint16" c:type="gint16"/>
5271       </field>
5272       <constructor name="new" c:identifier="gtk_border_new" version="2.14">
5273         <doc xml:whitespace="preserve">Allocates a new #GtkBorder structure and initializes its elements to zero.
5274 freed with gtk_border_free()</doc>
5275         <return-value transfer-ownership="full">
5276           <doc xml:whitespace="preserve">a new empty #GtkBorder. The newly allocated #GtkBorder should be</doc>
5277           <type name="Border" c:type="GtkBorder*"/>
5278         </return-value>
5279       </constructor>
5280       <method name="copy" c:identifier="gtk_border_copy">
5281         <doc xml:whitespace="preserve">Copies a #GtkBorder structure.</doc>
5282         <return-value transfer-ownership="full">
5283           <doc xml:whitespace="preserve">a copy of @border_.</doc>
5284           <type name="Border" c:type="GtkBorder*"/>
5285         </return-value>
5286       </method>
5287       <method name="free" c:identifier="gtk_border_free">
5288         <doc xml:whitespace="preserve">Frees a #GtkBorder structure.</doc>
5289         <return-value transfer-ownership="none">
5290           <type name="none" c:type="void"/>
5291         </return-value>
5292       </method>
5293     </record>
5294     <class name="Box"
5295            c:symbol-prefix="box"
5296            c:type="GtkBox"
5297            parent="Container"
5298            glib:type-name="GtkBox"
5299            glib:get-type="gtk_box_get_type"
5300            glib:type-struct="BoxClass">
5301       <implements name="Atk.ImplementorIface"/>
5302       <implements name="Buildable"/>
5303       <implements name="Orientable"/>
5304       <implements name="SizeRequest"/>
5305       <constructor name="new" c:identifier="gtk_box_new" version="3.0">
5306         <doc xml:whitespace="preserve">Creates a new #GtkBox.</doc>
5307         <return-value transfer-ownership="none">
5308           <doc xml:whitespace="preserve">a new #GtkBox.</doc>
5309           <type name="Widget" c:type="GtkWidget*"/>
5310         </return-value>
5311         <parameters>
5312           <parameter name="orientation" transfer-ownership="none">
5313             <doc xml:whitespace="preserve">the box' orientation.</doc>
5314             <type name="Orientation" c:type="GtkOrientation"/>
5315           </parameter>
5316           <parameter name="homogeneous" transfer-ownership="none">
5317             <doc xml:whitespace="preserve">%TRUE if all children are to be given equal space allocations.</doc>
5318             <type name="gboolean" c:type="gboolean"/>
5319           </parameter>
5320           <parameter name="spacing" transfer-ownership="none">
5321             <doc xml:whitespace="preserve">the number of pixels to place by default between children.</doc>
5322             <type name="gint" c:type="gint"/>
5323           </parameter>
5324         </parameters>
5325       </constructor>
5326       <method name="get_homogeneous" c:identifier="gtk_box_get_homogeneous">
5327         <doc xml:whitespace="preserve">Returns whether the box is homogeneous (all children are the
5328 same size). See gtk_box_set_homogeneous().</doc>
5329         <return-value transfer-ownership="none">
5330           <doc xml:whitespace="preserve">%TRUE if the box is homogeneous.</doc>
5331           <type name="gboolean" c:type="gboolean"/>
5332         </return-value>
5333       </method>
5334       <method name="get_spacing" c:identifier="gtk_box_get_spacing">
5335         <doc xml:whitespace="preserve">Gets the value set by gtk_box_set_spacing().</doc>
5336         <return-value transfer-ownership="none">
5337           <doc xml:whitespace="preserve">spacing between children</doc>
5338           <type name="gint" c:type="gint"/>
5339         </return-value>
5340       </method>
5341       <method name="pack_end" c:identifier="gtk_box_pack_end">
5342         <doc xml:whitespace="preserve">Adds @child to @box, packed with reference to the end of @box.  
5343 The @child is packed after (away from end of) any other child 
5344 packed with reference to the end of @box.</doc>
5345         <return-value transfer-ownership="none">
5346           <type name="none" c:type="void"/>
5347         </return-value>
5348         <parameters>
5349           <parameter name="child" transfer-ownership="none">
5350             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5351             <type name="Widget" c:type="GtkWidget*"/>
5352           </parameter>
5353           <parameter name="expand" transfer-ownership="none">
5354             <doc xml:whitespace="preserve">%TRUE if the new child is to be given extra space allocated to @box. The extra space will be divided evenly between all children of @box that use this option</doc>
5355             <type name="gboolean" c:type="gboolean"/>
5356           </parameter>
5357           <parameter name="fill" transfer-ownership="none">
5358             <doc xml:whitespace="preserve">%TRUE if space given to @child by the @expand option is actually allocated to @child, rather than just padding it.  This parameter has no effect if @expand is set to %FALSE.  A child is always allocated the full height of a #GtkHBox and the full width of a #GtkVBox.  This option affects the other dimension</doc>
5359             <type name="gboolean" c:type="gboolean"/>
5360           </parameter>
5361           <parameter name="padding" transfer-ownership="none">
5362             <doc xml:whitespace="preserve">extra space in pixels to put between this child and its neighbors, over and above the global amount specified by #GtkBox:spacing property.  If @child is a widget at one of the reference ends of @box, then @padding pixels are also put between</doc>
5363             <type name="guint" c:type="guint"/>
5364           </parameter>
5365         </parameters>
5366       </method>
5367       <method name="pack_start" c:identifier="gtk_box_pack_start">
5368         <doc xml:whitespace="preserve">Adds @child to @box, packed with reference to the start of @box.
5369 The @child is packed after any other child packed with reference 
5370 to the start of @box.</doc>
5371         <return-value transfer-ownership="none">
5372           <type name="none" c:type="void"/>
5373         </return-value>
5374         <parameters>
5375           <parameter name="child" transfer-ownership="none">
5376             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5377             <type name="Widget" c:type="GtkWidget*"/>
5378           </parameter>
5379           <parameter name="expand" transfer-ownership="none">
5380             <doc xml:whitespace="preserve">%TRUE if the new child is to be given extra space allocated to</doc>
5381             <type name="gboolean" c:type="gboolean"/>
5382           </parameter>
5383           <parameter name="fill" transfer-ownership="none">
5384             <doc xml:whitespace="preserve">%TRUE if space given to @child by the @expand option is actually allocated to @child, rather than just padding it.  This parameter has no effect if @expand is set to %FALSE.  A child is always allocated the full height of a #GtkHBox and the full width of a #GtkVBox. This option affects the other dimension</doc>
5385             <type name="gboolean" c:type="gboolean"/>
5386           </parameter>
5387           <parameter name="padding" transfer-ownership="none">
5388             <doc xml:whitespace="preserve">extra space in pixels to put between this child and its neighbors, over and above the global amount specified by #GtkBox:spacing property.  If @child is a widget at one of the reference ends of @box, then @padding pixels are also put between</doc>
5389             <type name="guint" c:type="guint"/>
5390           </parameter>
5391         </parameters>
5392       </method>
5393       <method name="query_child_packing"
5394               c:identifier="gtk_box_query_child_packing">
5395         <doc xml:whitespace="preserve">Obtains information about how @child is packed into @box.</doc>
5396         <return-value transfer-ownership="none">
5397           <type name="none" c:type="void"/>
5398         </return-value>
5399         <parameters>
5400           <parameter name="child" transfer-ownership="none">
5401             <doc xml:whitespace="preserve">the #GtkWidget of the child to query</doc>
5402             <type name="Widget" c:type="GtkWidget*"/>
5403           </parameter>
5404           <parameter name="expand" transfer-ownership="none">
5405             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:expand child property</doc>
5406             <type name="gboolean" c:type="gboolean*"/>
5407           </parameter>
5408           <parameter name="fill" transfer-ownership="none">
5409             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:fill child property</doc>
5410             <type name="gboolean" c:type="gboolean*"/>
5411           </parameter>
5412           <parameter name="padding" transfer-ownership="none">
5413             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:padding child property</doc>
5414             <type name="guint" c:type="guint*"/>
5415           </parameter>
5416           <parameter name="pack_type" transfer-ownership="none">
5417             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:pack-type child property</doc>
5418             <type name="PackType" c:type="GtkPackType*"/>
5419           </parameter>
5420         </parameters>
5421       </method>
5422       <method name="reorder_child" c:identifier="gtk_box_reorder_child">
5423         <doc xml:whitespace="preserve">Moves @child to a new @position in the list of @box children.  
5424 The list is the &lt;structfield&gt;children&lt;/structfield&gt; field of
5425 #GtkBox-struct, and contains both widgets packed #GTK_PACK_START 
5426 as well as widgets packed #GTK_PACK_END, in the order that these 
5427 widgets were added to @box.
5428 A widget's position in the @box children list determines where 
5429 the widget is packed into @box.  A child widget at some position 
5430 in the list will be packed just after all other widgets of the 
5431 same packing type that appear earlier in the list.</doc>
5432         <return-value transfer-ownership="none">
5433           <type name="none" c:type="void"/>
5434         </return-value>
5435         <parameters>
5436           <parameter name="child" transfer-ownership="none">
5437             <doc xml:whitespace="preserve">the #GtkWidget to move</doc>
5438             <type name="Widget" c:type="GtkWidget*"/>
5439           </parameter>
5440           <parameter name="position" transfer-ownership="none">
5441             <doc xml:whitespace="preserve">the new position for @child in the list of children of @box, starting from 0. If negative, indicates the end of the list</doc>
5442             <type name="gint" c:type="gint"/>
5443           </parameter>
5444         </parameters>
5445       </method>
5446       <method name="set_child_packing"
5447               c:identifier="gtk_box_set_child_packing">
5448         <doc xml:whitespace="preserve">Sets the way @child is packed into @box.</doc>
5449         <return-value transfer-ownership="none">
5450           <type name="none" c:type="void"/>
5451         </return-value>
5452         <parameters>
5453           <parameter name="child" transfer-ownership="none">
5454             <doc xml:whitespace="preserve">the #GtkWidget of the child to set</doc>
5455             <type name="Widget" c:type="GtkWidget*"/>
5456           </parameter>
5457           <parameter name="expand" transfer-ownership="none">
5458             <doc xml:whitespace="preserve">the new value of the #GtkBox:expand child property</doc>
5459             <type name="gboolean" c:type="gboolean"/>
5460           </parameter>
5461           <parameter name="fill" transfer-ownership="none">
5462             <doc xml:whitespace="preserve">the new value of the #GtkBox:fill child property</doc>
5463             <type name="gboolean" c:type="gboolean"/>
5464           </parameter>
5465           <parameter name="padding" transfer-ownership="none">
5466             <doc xml:whitespace="preserve">the new value of the #GtkBox:padding child property</doc>
5467             <type name="guint" c:type="guint"/>
5468           </parameter>
5469           <parameter name="pack_type" transfer-ownership="none">
5470             <doc xml:whitespace="preserve">the new value of the #GtkBox:pack-type child property</doc>
5471             <type name="PackType" c:type="GtkPackType"/>
5472           </parameter>
5473         </parameters>
5474       </method>
5475       <method name="set_homogeneous" c:identifier="gtk_box_set_homogeneous">
5476         <doc xml:whitespace="preserve">Sets the #GtkBox:homogeneous property of @box, controlling 
5477 whether or not all children of @box are given equal space 
5478 in the box.</doc>
5479         <return-value transfer-ownership="none">
5480           <type name="none" c:type="void"/>
5481         </return-value>
5482         <parameters>
5483           <parameter name="homogeneous" transfer-ownership="none">
5484             <doc xml:whitespace="preserve">a boolean value, %TRUE to create equal allotments, %FALSE for variable allotments</doc>
5485             <type name="gboolean" c:type="gboolean"/>
5486           </parameter>
5487         </parameters>
5488       </method>
5489       <method name="set_spacing" c:identifier="gtk_box_set_spacing">
5490         <doc xml:whitespace="preserve">Sets the #GtkBox:spacing property of @box, which is the 
5491 number of pixels to place between children of @box.</doc>
5492         <return-value transfer-ownership="none">
5493           <type name="none" c:type="void"/>
5494         </return-value>
5495         <parameters>
5496           <parameter name="spacing" transfer-ownership="none">
5497             <doc xml:whitespace="preserve">the number of pixels to put between children</doc>
5498             <type name="gint" c:type="gint"/>
5499           </parameter>
5500         </parameters>
5501       </method>
5502       <property name="homogeneous" writable="1" transfer-ownership="none">
5503         <type name="gboolean"/>
5504       </property>
5505       <property name="spacing" writable="1" transfer-ownership="none">
5506         <type name="gint"/>
5507       </property>
5508       <field name="container">
5509         <type name="Container" c:type="GtkContainer"/>
5510       </field>
5511       <field name="priv">
5512         <type name="BoxPrivate" c:type="GtkBoxPrivate*"/>
5513       </field>
5514     </class>
5515     <record name="BoxClass"
5516             c:type="GtkBoxClass"
5517             glib:is-gtype-struct-for="Box">
5518       <field name="parent_class">
5519         <type name="ContainerClass" c:type="GtkContainerClass"/>
5520       </field>
5521     </record>
5522     <record name="BoxPrivate" c:type="GtkBoxPrivate" disguised="1">
5523     </record>
5524     <interface name="Buildable"
5525                c:symbol-prefix="buildable"
5526                c:type="GtkBuildable"
5527                glib:type-name="GtkBuildable"
5528                glib:get-type="gtk_buildable_get_type"
5529                glib:type-struct="BuildableIface">
5530       <virtual-method name="add_child" invoker="add_child" version="2.12">
5531         <doc xml:whitespace="preserve">Adds a child to @buildable. @type is an optional string
5532 describing how the child should be added.</doc>
5533         <return-value transfer-ownership="none">
5534           <type name="none" c:type="void"/>
5535         </return-value>
5536         <parameters>
5537           <parameter name="builder" transfer-ownership="none">
5538             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5539             <type name="Builder" c:type="GtkBuilder*"/>
5540           </parameter>
5541           <parameter name="child" transfer-ownership="none">
5542             <doc xml:whitespace="preserve">child to add</doc>
5543             <type name="GObject.Object" c:type="GObject*"/>
5544           </parameter>
5545           <parameter name="type" transfer-ownership="none" allow-none="1">
5546             <doc xml:whitespace="preserve">kind of child or %NULL</doc>
5547             <type name="utf8" c:type="gchar*"/>
5548           </parameter>
5549         </parameters>
5550       </virtual-method>
5551       <virtual-method name="construct_child"
5552                       invoker="construct_child"
5553                       version="2.12">
5554         <doc xml:whitespace="preserve">Constructs a child of @buildable with the name @name.
5555 #GtkBuilder calls this function if a "constructor" has been
5556 specified in the UI definition.</doc>
5557         <return-value transfer-ownership="full">
5558           <doc xml:whitespace="preserve">the constructed child</doc>
5559           <type name="GObject.Object" c:type="GObject*"/>
5560         </return-value>
5561         <parameters>
5562           <parameter name="builder" transfer-ownership="none">
5563             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5564             <type name="Builder" c:type="GtkBuilder*"/>
5565           </parameter>
5566           <parameter name="name" transfer-ownership="none">
5567             <doc xml:whitespace="preserve">name of child to construct</doc>
5568             <type name="utf8" c:type="gchar*"/>
5569           </parameter>
5570         </parameters>
5571       </virtual-method>
5572       <virtual-method name="custom_finished"
5573                       invoker="custom_finished"
5574                       version="2.12">
5575         <doc xml:whitespace="preserve">This is similar to gtk_buildable_parser_finished() but is
5576 called once for each custom tag handled by the @buildable.</doc>
5577         <return-value transfer-ownership="none">
5578           <type name="none" c:type="void"/>
5579         </return-value>
5580         <parameters>
5581           <parameter name="builder" transfer-ownership="none">
5582             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5583             <type name="Builder" c:type="GtkBuilder*"/>
5584           </parameter>
5585           <parameter name="child" transfer-ownership="none" allow-none="1">
5586             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5587             <type name="GObject.Object" c:type="GObject*"/>
5588           </parameter>
5589           <parameter name="tagname" transfer-ownership="none">
5590             <doc xml:whitespace="preserve">the name of the tag</doc>
5591             <type name="utf8" c:type="gchar*"/>
5592           </parameter>
5593           <parameter name="data" transfer-ownership="none">
5594             <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
5595             <type name="gpointer" c:type="gpointer"/>
5596           </parameter>
5597         </parameters>
5598       </virtual-method>
5599       <virtual-method name="custom_tag_end"
5600                       invoker="custom_tag_end"
5601                       version="2.12">
5602         <doc xml:whitespace="preserve">This is called at the end of each custom element handled by 
5603 the buildable.</doc>
5604         <return-value transfer-ownership="none">
5605           <type name="none" c:type="void"/>
5606         </return-value>
5607         <parameters>
5608           <parameter name="builder" transfer-ownership="none">
5609             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5610             <type name="Builder" c:type="GtkBuilder*"/>
5611           </parameter>
5612           <parameter name="child" transfer-ownership="none" allow-none="1">
5613             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5614             <type name="GObject.Object" c:type="GObject*"/>
5615           </parameter>
5616           <parameter name="tagname" transfer-ownership="none">
5617             <doc xml:whitespace="preserve">name of tag</doc>
5618             <type name="utf8" c:type="gchar*"/>
5619           </parameter>
5620           <parameter name="data" transfer-ownership="none">
5621             <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
5622             <type name="gpointer" c:type="gpointer*"/>
5623           </parameter>
5624         </parameters>
5625       </virtual-method>
5626       <virtual-method name="custom_tag_start"
5627                       invoker="custom_tag_start"
5628                       version="2.12">
5629         <doc xml:whitespace="preserve">This is called for each unknown element under &amp;lt;child&amp;gt;.
5630 if it doesn't.</doc>
5631         <return-value transfer-ownership="none">
5632           <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
5633           <type name="gboolean" c:type="gboolean"/>
5634         </return-value>
5635         <parameters>
5636           <parameter name="builder" transfer-ownership="none">
5637             <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
5638             <type name="Builder" c:type="GtkBuilder*"/>
5639           </parameter>
5640           <parameter name="child" transfer-ownership="none" allow-none="1">
5641             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5642             <type name="GObject.Object" c:type="GObject*"/>
5643           </parameter>
5644           <parameter name="tagname" transfer-ownership="none">
5645             <doc xml:whitespace="preserve">name of tag</doc>
5646             <type name="utf8" c:type="gchar*"/>
5647           </parameter>
5648           <parameter name="parser" transfer-ownership="none">
5649             <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
5650             <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
5651           </parameter>
5652           <parameter name="data" transfer-ownership="none">
5653             <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
5654             <type name="gpointer" c:type="gpointer*"/>
5655           </parameter>
5656         </parameters>
5657       </virtual-method>
5658       <virtual-method name="get_internal_child"
5659                       invoker="get_internal_child"
5660                       version="2.12">
5661         <doc xml:whitespace="preserve">Get the internal child called @childname of the @buildable object.</doc>
5662         <return-value transfer-ownership="none">
5663           <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
5664           <type name="GObject.Object" c:type="GObject*"/>
5665         </return-value>
5666         <parameters>
5667           <parameter name="builder" transfer-ownership="none">
5668             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5669             <type name="Builder" c:type="GtkBuilder*"/>
5670           </parameter>
5671           <parameter name="childname" transfer-ownership="none">
5672             <doc xml:whitespace="preserve">name of child</doc>
5673             <type name="utf8" c:type="gchar*"/>
5674           </parameter>
5675         </parameters>
5676       </virtual-method>
5677       <virtual-method name="get_name" invoker="get_name" version="2.12">
5678         <doc xml:whitespace="preserve">Gets the name of the @buildable object. 
5679 #GtkBuilder sets the name based on the the 
5680 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt; 
5681 used to construct the @buildable.</doc>
5682         <return-value transfer-ownership="none">
5683           <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5684           <type name="utf8" c:type="gchar*"/>
5685         </return-value>
5686       </virtual-method>
5687       <virtual-method name="parser_finished"
5688                       invoker="parser_finished"
5689                       version="2.12">
5690         <doc xml:whitespace="preserve">Called when the builder finishes the parsing of a 
5691 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt;. 
5692 Note that this will be called once for each time 
5693 gtk_builder_add_from_file() or gtk_builder_add_from_string() 
5694 is called on a builder.</doc>
5695         <return-value transfer-ownership="none">
5696           <type name="none" c:type="void"/>
5697         </return-value>
5698         <parameters>
5699           <parameter name="builder" transfer-ownership="none">
5700             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5701             <type name="Builder" c:type="GtkBuilder*"/>
5702           </parameter>
5703         </parameters>
5704       </virtual-method>
5705       <virtual-method name="set_buildable_property"
5706                       invoker="set_buildable_property"
5707                       version="2.12">
5708         <doc xml:whitespace="preserve">Sets the property name @name to @value on the @buildable object.</doc>
5709         <return-value transfer-ownership="none">
5710           <type name="none" c:type="void"/>
5711         </return-value>
5712         <parameters>
5713           <parameter name="builder" transfer-ownership="none">
5714             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5715             <type name="Builder" c:type="GtkBuilder*"/>
5716           </parameter>
5717           <parameter name="name" transfer-ownership="none">
5718             <doc xml:whitespace="preserve">name of property</doc>
5719             <type name="utf8" c:type="gchar*"/>
5720           </parameter>
5721           <parameter name="value" transfer-ownership="none">
5722             <doc xml:whitespace="preserve">value of property</doc>
5723             <type name="GObject.Value" c:type="GValue*"/>
5724           </parameter>
5725         </parameters>
5726       </virtual-method>
5727       <virtual-method name="set_name" invoker="set_name" version="2.12">
5728         <doc xml:whitespace="preserve">Sets the name of the @buildable object.</doc>
5729         <return-value transfer-ownership="none">
5730           <type name="none" c:type="void"/>
5731         </return-value>
5732         <parameters>
5733           <parameter name="name" transfer-ownership="none">
5734             <doc xml:whitespace="preserve">name to set</doc>
5735             <type name="utf8" c:type="gchar*"/>
5736           </parameter>
5737         </parameters>
5738       </virtual-method>
5739       <method name="add_child"
5740               c:identifier="gtk_buildable_add_child"
5741               version="2.12">
5742         <doc xml:whitespace="preserve">Adds a child to @buildable. @type is an optional string
5743 describing how the child should be added.</doc>
5744         <return-value transfer-ownership="none">
5745           <type name="none" c:type="void"/>
5746         </return-value>
5747         <parameters>
5748           <parameter name="builder" transfer-ownership="none">
5749             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5750             <type name="Builder" c:type="GtkBuilder*"/>
5751           </parameter>
5752           <parameter name="child" transfer-ownership="none">
5753             <doc xml:whitespace="preserve">child to add</doc>
5754             <type name="GObject.Object" c:type="GObject*"/>
5755           </parameter>
5756           <parameter name="type" transfer-ownership="none" allow-none="1">
5757             <doc xml:whitespace="preserve">kind of child or %NULL</doc>
5758             <type name="utf8" c:type="gchar*"/>
5759           </parameter>
5760         </parameters>
5761       </method>
5762       <method name="construct_child"
5763               c:identifier="gtk_buildable_construct_child"
5764               version="2.12">
5765         <doc xml:whitespace="preserve">Constructs a child of @buildable with the name @name.
5766 #GtkBuilder calls this function if a "constructor" has been
5767 specified in the UI definition.</doc>
5768         <return-value transfer-ownership="full">
5769           <doc xml:whitespace="preserve">the constructed child</doc>
5770           <type name="GObject.Object" c:type="GObject*"/>
5771         </return-value>
5772         <parameters>
5773           <parameter name="builder" transfer-ownership="none">
5774             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5775             <type name="Builder" c:type="GtkBuilder*"/>
5776           </parameter>
5777           <parameter name="name" transfer-ownership="none">
5778             <doc xml:whitespace="preserve">name of child to construct</doc>
5779             <type name="utf8" c:type="gchar*"/>
5780           </parameter>
5781         </parameters>
5782       </method>
5783       <method name="custom_finished"
5784               c:identifier="gtk_buildable_custom_finished"
5785               version="2.12">
5786         <doc xml:whitespace="preserve">This is similar to gtk_buildable_parser_finished() but is
5787 called once for each custom tag handled by the @buildable.</doc>
5788         <return-value transfer-ownership="none">
5789           <type name="none" c:type="void"/>
5790         </return-value>
5791         <parameters>
5792           <parameter name="builder" transfer-ownership="none">
5793             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5794             <type name="Builder" c:type="GtkBuilder*"/>
5795           </parameter>
5796           <parameter name="child" transfer-ownership="none" allow-none="1">
5797             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5798             <type name="GObject.Object" c:type="GObject*"/>
5799           </parameter>
5800           <parameter name="tagname" transfer-ownership="none">
5801             <doc xml:whitespace="preserve">the name of the tag</doc>
5802             <type name="utf8" c:type="gchar*"/>
5803           </parameter>
5804           <parameter name="data" transfer-ownership="none">
5805             <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
5806             <type name="gpointer" c:type="gpointer"/>
5807           </parameter>
5808         </parameters>
5809       </method>
5810       <method name="custom_tag_end"
5811               c:identifier="gtk_buildable_custom_tag_end"
5812               version="2.12">
5813         <doc xml:whitespace="preserve">This is called at the end of each custom element handled by 
5814 the buildable.</doc>
5815         <return-value transfer-ownership="none">
5816           <type name="none" c:type="void"/>
5817         </return-value>
5818         <parameters>
5819           <parameter name="builder" transfer-ownership="none">
5820             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5821             <type name="Builder" c:type="GtkBuilder*"/>
5822           </parameter>
5823           <parameter name="child" transfer-ownership="none" allow-none="1">
5824             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5825             <type name="GObject.Object" c:type="GObject*"/>
5826           </parameter>
5827           <parameter name="tagname" transfer-ownership="none">
5828             <doc xml:whitespace="preserve">name of tag</doc>
5829             <type name="utf8" c:type="gchar*"/>
5830           </parameter>
5831           <parameter name="data" transfer-ownership="none">
5832             <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
5833             <type name="gpointer" c:type="gpointer*"/>
5834           </parameter>
5835         </parameters>
5836       </method>
5837       <method name="custom_tag_start"
5838               c:identifier="gtk_buildable_custom_tag_start"
5839               version="2.12">
5840         <doc xml:whitespace="preserve">This is called for each unknown element under &amp;lt;child&amp;gt;.
5841 if it doesn't.</doc>
5842         <return-value transfer-ownership="none">
5843           <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
5844           <type name="gboolean" c:type="gboolean"/>
5845         </return-value>
5846         <parameters>
5847           <parameter name="builder" transfer-ownership="none">
5848             <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
5849             <type name="Builder" c:type="GtkBuilder*"/>
5850           </parameter>
5851           <parameter name="child" transfer-ownership="none" allow-none="1">
5852             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5853             <type name="GObject.Object" c:type="GObject*"/>
5854           </parameter>
5855           <parameter name="tagname" transfer-ownership="none">
5856             <doc xml:whitespace="preserve">name of tag</doc>
5857             <type name="utf8" c:type="gchar*"/>
5858           </parameter>
5859           <parameter name="parser" transfer-ownership="none">
5860             <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
5861             <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
5862           </parameter>
5863           <parameter name="data" transfer-ownership="none">
5864             <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
5865             <type name="gpointer" c:type="gpointer*"/>
5866           </parameter>
5867         </parameters>
5868       </method>
5869       <method name="get_internal_child"
5870               c:identifier="gtk_buildable_get_internal_child"
5871               version="2.12">
5872         <doc xml:whitespace="preserve">Get the internal child called @childname of the @buildable object.</doc>
5873         <return-value transfer-ownership="none">
5874           <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
5875           <type name="GObject.Object" c:type="GObject*"/>
5876         </return-value>
5877         <parameters>
5878           <parameter name="builder" transfer-ownership="none">
5879             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5880             <type name="Builder" c:type="GtkBuilder*"/>
5881           </parameter>
5882           <parameter name="childname" transfer-ownership="none">
5883             <doc xml:whitespace="preserve">name of child</doc>
5884             <type name="utf8" c:type="gchar*"/>
5885           </parameter>
5886         </parameters>
5887       </method>
5888       <method name="get_name"
5889               c:identifier="gtk_buildable_get_name"
5890               version="2.12">
5891         <doc xml:whitespace="preserve">Gets the name of the @buildable object. 
5892 #GtkBuilder sets the name based on the the 
5893 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt; 
5894 used to construct the @buildable.</doc>
5895         <return-value transfer-ownership="none">
5896           <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5897           <type name="utf8" c:type="gchar*"/>
5898         </return-value>
5899       </method>
5900       <method name="parser_finished"
5901               c:identifier="gtk_buildable_parser_finished"
5902               version="2.12">
5903         <doc xml:whitespace="preserve">Called when the builder finishes the parsing of a 
5904 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt;. 
5905 Note that this will be called once for each time 
5906 gtk_builder_add_from_file() or gtk_builder_add_from_string() 
5907 is called on a builder.</doc>
5908         <return-value transfer-ownership="none">
5909           <type name="none" c:type="void"/>
5910         </return-value>
5911         <parameters>
5912           <parameter name="builder" transfer-ownership="none">
5913             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5914             <type name="Builder" c:type="GtkBuilder*"/>
5915           </parameter>
5916         </parameters>
5917       </method>
5918       <method name="set_buildable_property"
5919               c:identifier="gtk_buildable_set_buildable_property"
5920               version="2.12">
5921         <doc xml:whitespace="preserve">Sets the property name @name to @value on the @buildable object.</doc>
5922         <return-value transfer-ownership="none">
5923           <type name="none" c:type="void"/>
5924         </return-value>
5925         <parameters>
5926           <parameter name="builder" transfer-ownership="none">
5927             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5928             <type name="Builder" c:type="GtkBuilder*"/>
5929           </parameter>
5930           <parameter name="name" transfer-ownership="none">
5931             <doc xml:whitespace="preserve">name of property</doc>
5932             <type name="utf8" c:type="gchar*"/>
5933           </parameter>
5934           <parameter name="value" transfer-ownership="none">
5935             <doc xml:whitespace="preserve">value of property</doc>
5936             <type name="GObject.Value" c:type="GValue*"/>
5937           </parameter>
5938         </parameters>
5939       </method>
5940       <method name="set_name"
5941               c:identifier="gtk_buildable_set_name"
5942               version="2.12">
5943         <doc xml:whitespace="preserve">Sets the name of the @buildable object.</doc>
5944         <return-value transfer-ownership="none">
5945           <type name="none" c:type="void"/>
5946         </return-value>
5947         <parameters>
5948           <parameter name="name" transfer-ownership="none">
5949             <doc xml:whitespace="preserve">name to set</doc>
5950             <type name="utf8" c:type="gchar*"/>
5951           </parameter>
5952         </parameters>
5953       </method>
5954     </interface>
5955     <record name="BuildableIface"
5956             c:type="GtkBuildableIface"
5957             glib:is-gtype-struct-for="Buildable">
5958       <doc xml:whitespace="preserve">The GtkBuildableIface interface contains method that are
5959 necessary to allow #GtkBuilder to construct an object from
5960 a GtkBuilder UI definition.</doc>
5961       <field name="g_iface">
5962         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
5963       </field>
5964       <field name="set_name">
5965         <callback name="set_name">
5966           <return-value transfer-ownership="none">
5967             <type name="none" c:type="void"/>
5968           </return-value>
5969           <parameters>
5970             <parameter name="buildable" transfer-ownership="none">
5971               <type name="Buildable" c:type="GtkBuildable*"/>
5972             </parameter>
5973             <parameter name="name" transfer-ownership="none">
5974               <doc xml:whitespace="preserve">name to set</doc>
5975               <type name="utf8" c:type="gchar*"/>
5976             </parameter>
5977           </parameters>
5978         </callback>
5979       </field>
5980       <field name="get_name">
5981         <callback name="get_name">
5982           <return-value transfer-ownership="none">
5983             <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5984             <type name="utf8" c:type="gchar*"/>
5985           </return-value>
5986           <parameters>
5987             <parameter name="buildable" transfer-ownership="none">
5988               <type name="Buildable" c:type="GtkBuildable*"/>
5989             </parameter>
5990           </parameters>
5991         </callback>
5992       </field>
5993       <field name="add_child">
5994         <callback name="add_child">
5995           <return-value transfer-ownership="none">
5996             <type name="none" c:type="void"/>
5997           </return-value>
5998           <parameters>
5999             <parameter name="buildable" transfer-ownership="none">
6000               <type name="Buildable" c:type="GtkBuildable*"/>
6001             </parameter>
6002             <parameter name="builder" transfer-ownership="none">
6003               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6004               <type name="Builder" c:type="GtkBuilder*"/>
6005             </parameter>
6006             <parameter name="child" transfer-ownership="none">
6007               <doc xml:whitespace="preserve">child to add</doc>
6008               <type name="GObject.Object" c:type="GObject*"/>
6009             </parameter>
6010             <parameter name="type" transfer-ownership="none" allow-none="1">
6011               <doc xml:whitespace="preserve">kind of child or %NULL</doc>
6012               <type name="utf8" c:type="gchar*"/>
6013             </parameter>
6014           </parameters>
6015         </callback>
6016       </field>
6017       <field name="set_buildable_property">
6018         <callback name="set_buildable_property">
6019           <return-value transfer-ownership="none">
6020             <type name="none" c:type="void"/>
6021           </return-value>
6022           <parameters>
6023             <parameter name="buildable" transfer-ownership="none">
6024               <type name="Buildable" c:type="GtkBuildable*"/>
6025             </parameter>
6026             <parameter name="builder" transfer-ownership="none">
6027               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6028               <type name="Builder" c:type="GtkBuilder*"/>
6029             </parameter>
6030             <parameter name="name" transfer-ownership="none">
6031               <doc xml:whitespace="preserve">name of property</doc>
6032               <type name="utf8" c:type="gchar*"/>
6033             </parameter>
6034             <parameter name="value" transfer-ownership="none">
6035               <doc xml:whitespace="preserve">value of property</doc>
6036               <type name="GObject.Value" c:type="GValue*"/>
6037             </parameter>
6038           </parameters>
6039         </callback>
6040       </field>
6041       <field name="construct_child">
6042         <callback name="construct_child">
6043           <return-value transfer-ownership="full">
6044             <doc xml:whitespace="preserve">the constructed child</doc>
6045             <type name="GObject.Object" c:type="GObject*"/>
6046           </return-value>
6047           <parameters>
6048             <parameter name="buildable" transfer-ownership="none">
6049               <type name="Buildable" c:type="GtkBuildable*"/>
6050             </parameter>
6051             <parameter name="builder" transfer-ownership="none">
6052               <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
6053               <type name="Builder" c:type="GtkBuilder*"/>
6054             </parameter>
6055             <parameter name="name" transfer-ownership="none">
6056               <doc xml:whitespace="preserve">name of child to construct</doc>
6057               <type name="utf8" c:type="gchar*"/>
6058             </parameter>
6059           </parameters>
6060         </callback>
6061       </field>
6062       <field name="custom_tag_start">
6063         <callback name="custom_tag_start">
6064           <return-value transfer-ownership="none">
6065             <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
6066             <type name="gboolean" c:type="gboolean"/>
6067           </return-value>
6068           <parameters>
6069             <parameter name="buildable" transfer-ownership="none">
6070               <type name="Buildable" c:type="GtkBuildable*"/>
6071             </parameter>
6072             <parameter name="builder" transfer-ownership="none">
6073               <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
6074               <type name="Builder" c:type="GtkBuilder*"/>
6075             </parameter>
6076             <parameter name="child" transfer-ownership="none" allow-none="1">
6077               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
6078               <type name="GObject.Object" c:type="GObject*"/>
6079             </parameter>
6080             <parameter name="tagname" transfer-ownership="none">
6081               <doc xml:whitespace="preserve">name of tag</doc>
6082               <type name="utf8" c:type="gchar*"/>
6083             </parameter>
6084             <parameter name="parser" transfer-ownership="none">
6085               <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
6086               <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
6087             </parameter>
6088             <parameter name="data" transfer-ownership="none">
6089               <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
6090               <type name="gpointer" c:type="gpointer*"/>
6091             </parameter>
6092           </parameters>
6093         </callback>
6094       </field>
6095       <field name="custom_tag_end">
6096         <callback name="custom_tag_end">
6097           <return-value transfer-ownership="none">
6098             <type name="none" c:type="void"/>
6099           </return-value>
6100           <parameters>
6101             <parameter name="buildable" transfer-ownership="none">
6102               <type name="Buildable" c:type="GtkBuildable*"/>
6103             </parameter>
6104             <parameter name="builder" transfer-ownership="none">
6105               <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
6106               <type name="Builder" c:type="GtkBuilder*"/>
6107             </parameter>
6108             <parameter name="child" transfer-ownership="none" allow-none="1">
6109               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
6110               <type name="GObject.Object" c:type="GObject*"/>
6111             </parameter>
6112             <parameter name="tagname" transfer-ownership="none">
6113               <doc xml:whitespace="preserve">name of tag</doc>
6114               <type name="utf8" c:type="gchar*"/>
6115             </parameter>
6116             <parameter name="data" transfer-ownership="none">
6117               <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
6118               <type name="gpointer" c:type="gpointer*"/>
6119             </parameter>
6120           </parameters>
6121         </callback>
6122       </field>
6123       <field name="custom_finished">
6124         <callback name="custom_finished">
6125           <return-value transfer-ownership="none">
6126             <type name="none" c:type="void"/>
6127           </return-value>
6128           <parameters>
6129             <parameter name="buildable" transfer-ownership="none">
6130               <type name="Buildable" c:type="GtkBuildable*"/>
6131             </parameter>
6132             <parameter name="builder" transfer-ownership="none">
6133               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6134               <type name="Builder" c:type="GtkBuilder*"/>
6135             </parameter>
6136             <parameter name="child" transfer-ownership="none" allow-none="1">
6137               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
6138               <type name="GObject.Object" c:type="GObject*"/>
6139             </parameter>
6140             <parameter name="tagname" transfer-ownership="none">
6141               <doc xml:whitespace="preserve">the name of the tag</doc>
6142               <type name="utf8" c:type="gchar*"/>
6143             </parameter>
6144             <parameter name="data" transfer-ownership="none">
6145               <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
6146               <type name="gpointer" c:type="gpointer"/>
6147             </parameter>
6148           </parameters>
6149         </callback>
6150       </field>
6151       <field name="parser_finished">
6152         <callback name="parser_finished">
6153           <return-value transfer-ownership="none">
6154             <type name="none" c:type="void"/>
6155           </return-value>
6156           <parameters>
6157             <parameter name="buildable" transfer-ownership="none">
6158               <type name="Buildable" c:type="GtkBuildable*"/>
6159             </parameter>
6160             <parameter name="builder" transfer-ownership="none">
6161               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6162               <type name="Builder" c:type="GtkBuilder*"/>
6163             </parameter>
6164           </parameters>
6165         </callback>
6166       </field>
6167       <field name="get_internal_child">
6168         <callback name="get_internal_child">
6169           <return-value transfer-ownership="none">
6170             <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
6171             <type name="GObject.Object" c:type="GObject*"/>
6172           </return-value>
6173           <parameters>
6174             <parameter name="buildable" transfer-ownership="none">
6175               <type name="Buildable" c:type="GtkBuildable*"/>
6176             </parameter>
6177             <parameter name="builder" transfer-ownership="none">
6178               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6179               <type name="Builder" c:type="GtkBuilder*"/>
6180             </parameter>
6181             <parameter name="childname" transfer-ownership="none">
6182               <doc xml:whitespace="preserve">name of child</doc>
6183               <type name="utf8" c:type="gchar*"/>
6184             </parameter>
6185           </parameters>
6186         </callback>
6187       </field>
6188     </record>
6189     <class name="Builder"
6190            c:symbol-prefix="builder"
6191            c:type="GtkBuilder"
6192            parent="GObject.Object"
6193            glib:type-name="GtkBuilder"
6194            glib:get-type="gtk_builder_get_type"
6195            glib:type-struct="BuilderClass">
6196       <constructor name="new" c:identifier="gtk_builder_new" version="2.12">
6197         <doc xml:whitespace="preserve">Creates a new builder object.</doc>
6198         <return-value transfer-ownership="full">
6199           <doc xml:whitespace="preserve">a new #GtkBuilder object</doc>
6200           <type name="Builder" c:type="GtkBuilder*"/>
6201         </return-value>
6202       </constructor>
6203       <virtual-method name="get_type_from_name"
6204                       invoker="get_type_from_name"
6205                       version="2.12">
6206         <doc xml:whitespace="preserve">Looks up a type by name, using the virtual function that 
6207 #GtkBuilder has for that purpose. This is mainly used when
6208 implementing the #GtkBuildable interface on a type.
6209 if no type was found</doc>
6210         <return-value transfer-ownership="none">
6211           <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6212           <type name="GType" c:type="GType"/>
6213         </return-value>
6214         <parameters>
6215           <parameter name="type_name" transfer-ownership="none">
6216             <doc xml:whitespace="preserve">type name to lookup</doc>
6217             <type name="utf8" c:type="char*"/>
6218           </parameter>
6219         </parameters>
6220       </virtual-method>
6221       <method name="add_from_file"
6222               c:identifier="gtk_builder_add_from_file"
6223               version="2.12"
6224               throws="1">
6225         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6226 UI definition&lt;/link&gt; and merges it with the current contents of @builder. 
6227 Upon errors 0 will be returned and @error will be assigned a
6228 #GError from the #GTK_BUILDER_ERROR, #G_MARKUP_ERROR or #G_FILE_ERROR 
6229 domain.</doc>
6230         <return-value transfer-ownership="none">
6231           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6232           <type name="guint" c:type="guint"/>
6233         </return-value>
6234         <parameters>
6235           <parameter name="filename" transfer-ownership="none">
6236             <doc xml:whitespace="preserve">the name of the file to parse</doc>
6237             <type name="utf8" c:type="gchar*"/>
6238           </parameter>
6239         </parameters>
6240       </method>
6241       <method name="add_from_string"
6242               c:identifier="gtk_builder_add_from_string"
6243               version="2.12"
6244               throws="1">
6245         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6246 UI definition&lt;/link&gt; and merges it with the current contents of @builder. 
6247 Upon errors 0 will be returned and @error will be assigned a
6248 #GError from the #GTK_BUILDER_ERROR or #G_MARKUP_ERROR domain.</doc>
6249         <return-value transfer-ownership="none">
6250           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6251           <type name="guint" c:type="guint"/>
6252         </return-value>
6253         <parameters>
6254           <parameter name="buffer" transfer-ownership="none">
6255             <doc xml:whitespace="preserve">the string to parse</doc>
6256             <type name="utf8" c:type="gchar*"/>
6257           </parameter>
6258           <parameter name="length" transfer-ownership="none">
6259             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
6260             <type name="gulong" c:type="gsize"/>
6261           </parameter>
6262         </parameters>
6263       </method>
6264       <method name="add_objects_from_file"
6265               c:identifier="gtk_builder_add_objects_from_file"
6266               version="2.14"
6267               throws="1">
6268         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6269 UI definition&lt;/link&gt; building only the requested objects and merges
6270 them with the current contents of @builder. 
6271 Upon errors 0 will be returned and @error will be assigned a
6272 #GError from the #GTK_BUILDER_ERROR, #G_MARKUP_ERROR or #G_FILE_ERROR 
6273 domain.
6274 &lt;note&gt;&lt;para&gt;
6275 If you are adding an object that depends on an object that is not 
6276 its child (for instance a #GtkTreeView that depends on its
6277 #GtkTreeModel), you have to explicitely list all of them in @object_ids. 
6278 &lt;/para&gt;&lt;/note&gt;</doc>
6279         <return-value transfer-ownership="none">
6280           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6281           <type name="guint" c:type="guint"/>
6282         </return-value>
6283         <parameters>
6284           <parameter name="filename" transfer-ownership="none">
6285             <doc xml:whitespace="preserve">the name of the file to parse</doc>
6286             <type name="utf8" c:type="gchar*"/>
6287           </parameter>
6288           <parameter name="object_ids" transfer-ownership="none">
6289             <doc xml:whitespace="preserve">nul-terminated array of objects to build</doc>
6290             <type name="utf8" c:type="gchar**"/>
6291           </parameter>
6292         </parameters>
6293       </method>
6294       <method name="add_objects_from_string"
6295               c:identifier="gtk_builder_add_objects_from_string"
6296               version="2.14"
6297               throws="1">
6298         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6299 UI definition&lt;/link&gt; building only the requested objects and merges
6300 them with the current contents of @builder. 
6301 Upon errors 0 will be returned and @error will be assigned a
6302 #GError from the #GTK_BUILDER_ERROR or #G_MARKUP_ERROR domain.
6303 &lt;note&gt;&lt;para&gt;
6304 If you are adding an object that depends on an object that is not 
6305 its child (for instance a #GtkTreeView that depends on its
6306 #GtkTreeModel), you have to explicitely list all of them in @object_ids. 
6307 &lt;/para&gt;&lt;/note&gt;</doc>
6308         <return-value transfer-ownership="none">
6309           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6310           <type name="guint" c:type="guint"/>
6311         </return-value>
6312         <parameters>
6313           <parameter name="buffer" transfer-ownership="none">
6314             <doc xml:whitespace="preserve">the string to parse</doc>
6315             <type name="utf8" c:type="gchar*"/>
6316           </parameter>
6317           <parameter name="length" transfer-ownership="none">
6318             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
6319             <type name="gulong" c:type="gsize"/>
6320           </parameter>
6321           <parameter name="object_ids" transfer-ownership="none">
6322             <doc xml:whitespace="preserve">nul-terminated array of objects to build</doc>
6323             <array c:type="gchar**">
6324               <type name="utf8"/>
6325             </array>
6326           </parameter>
6327         </parameters>
6328       </method>
6329       <method name="connect_signals"
6330               c:identifier="gtk_builder_connect_signals"
6331               version="2.12">
6332         <doc xml:whitespace="preserve">This method is a simpler variation of gtk_builder_connect_signals_full().
6333 It uses #GModule's introspective features (by opening the module %NULL) 
6334 to look at the application's symbol table. From here it tries to match
6335 the signal handler names given in the interface description with
6336 symbols in the application and connects the signals.
6337 Note that this function will not work correctly if #GModule is not
6338 supported on the platform.
6339 When compiling applications for Windows, you must declare signal callbacks
6340 with #G_MODULE_EXPORT, or they will not be put in the symbol table.
6341 On Linux and Unices, this is not necessary; applications should instead
6342 be compiled with the -Wl,--export-dynamic CFLAGS, and linked against
6343 gmodule-export-2.0.</doc>
6344         <return-value transfer-ownership="none">
6345           <type name="none" c:type="void"/>
6346         </return-value>
6347         <parameters>
6348           <parameter name="user_data" transfer-ownership="none">
6349             <doc xml:whitespace="preserve">a pointer to a structure sent in as user data to all signals</doc>
6350             <type name="gpointer" c:type="gpointer"/>
6351           </parameter>
6352         </parameters>
6353       </method>
6354       <method name="connect_signals_full"
6355               c:identifier="gtk_builder_connect_signals_full"
6356               version="2.12">
6357         <doc xml:whitespace="preserve">This function can be thought of the interpreted language binding
6358 version of gtk_builder_connect_signals(), except that it does not
6359 require GModule to function correctly.</doc>
6360         <return-value transfer-ownership="none">
6361           <type name="none" c:type="void"/>
6362         </return-value>
6363         <parameters>
6364           <parameter name="func"
6365                      transfer-ownership="none"
6366                      scope="call"
6367                      closure="1">
6368             <doc xml:whitespace="preserve">the function used to connect the signals</doc>
6369             <type name="BuilderConnectFunc" c:type="GtkBuilderConnectFunc"/>
6370           </parameter>
6371           <parameter name="user_data" transfer-ownership="none">
6372             <doc xml:whitespace="preserve">arbitrary data that will be passed to the connection function</doc>
6373             <type name="gpointer" c:type="gpointer"/>
6374           </parameter>
6375         </parameters>
6376       </method>
6377       <method name="get_object"
6378               c:identifier="gtk_builder_get_object"
6379               version="2.12">
6380         <doc xml:whitespace="preserve">Gets the object named @name. Note that this function does not
6381 increment the reference count of the returned object. 
6382 it could not be found in the object tree.</doc>
6383         <return-value transfer-ownership="none">
6384           <doc xml:whitespace="preserve">the object named @name or %NULL if</doc>
6385           <type name="GObject.Object" c:type="GObject*"/>
6386         </return-value>
6387         <parameters>
6388           <parameter name="name" transfer-ownership="none">
6389             <doc xml:whitespace="preserve">name of object to get</doc>
6390             <type name="utf8" c:type="gchar*"/>
6391           </parameter>
6392         </parameters>
6393       </method>
6394       <method name="get_objects"
6395               c:identifier="gtk_builder_get_objects"
6396               version="2.12">
6397         <doc xml:whitespace="preserve">Gets all objects that have been constructed by @builder. Note that 
6398 this function does not increment the reference counts of the returned
6399 objects.
6400 constructed by the #GtkBuilder instance. It should be freed by
6401 g_slist_free()</doc>
6402         <return-value transfer-ownership="container">
6403           <doc xml:whitespace="preserve">a newly-allocated #GSList containing all the objects</doc>
6404           <type name="GLib.SList" c:type="GSList*">
6405             <type name="GObject.Object"/>
6406           </type>
6407         </return-value>
6408       </method>
6409       <method name="get_translation_domain"
6410               c:identifier="gtk_builder_get_translation_domain"
6411               version="2.12">
6412         <doc xml:whitespace="preserve">Gets the translation domain of @builder.
6413 by the builder object and must not be modified or freed.</doc>
6414         <return-value transfer-ownership="none">
6415           <doc xml:whitespace="preserve">the translation domain. This string is owned</doc>
6416           <type name="utf8" c:type="gchar*"/>
6417         </return-value>
6418       </method>
6419       <method name="get_type_from_name"
6420               c:identifier="gtk_builder_get_type_from_name"
6421               version="2.12">
6422         <doc xml:whitespace="preserve">Looks up a type by name, using the virtual function that 
6423 #GtkBuilder has for that purpose. This is mainly used when
6424 implementing the #GtkBuildable interface on a type.
6425 if no type was found</doc>
6426         <return-value transfer-ownership="none">
6427           <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6428           <type name="GType" c:type="GType"/>
6429         </return-value>
6430         <parameters>
6431           <parameter name="type_name" transfer-ownership="none">
6432             <doc xml:whitespace="preserve">type name to lookup</doc>
6433             <type name="utf8" c:type="char*"/>
6434           </parameter>
6435         </parameters>
6436       </method>
6437       <method name="set_translation_domain"
6438               c:identifier="gtk_builder_set_translation_domain"
6439               version="2.12">
6440         <doc xml:whitespace="preserve">Sets the translation domain of @builder. 
6441 See #GtkBuilder:translation-domain.</doc>
6442         <return-value transfer-ownership="none">
6443           <type name="none" c:type="void"/>
6444         </return-value>
6445         <parameters>
6446           <parameter name="domain" transfer-ownership="none" allow-none="1">
6447             <doc xml:whitespace="preserve">the translation domain or %NULL</doc>
6448             <type name="utf8" c:type="gchar*"/>
6449           </parameter>
6450         </parameters>
6451       </method>
6452       <method name="value_from_string"
6453               c:identifier="gtk_builder_value_from_string"
6454               version="2.12"
6455               throws="1">
6456         <doc xml:whitespace="preserve">This function demarshals a value from a string. This function
6457 calls g_value_init() on the @value argument, so it need not be
6458 initialised beforehand.
6459 This function can handle char, uchar, boolean, int, uint, long,
6460 ulong, enum, flags, float, double, string, #GdkColor and
6461 #GtkAdjustment type values. Support for #GtkWidget type values is
6462 still to come.
6463 Upon errors %FALSE will be returned and @error will be assigned a
6464 #GError from the #GTK_BUILDER_ERROR domain.</doc>
6465         <return-value transfer-ownership="none">
6466           <doc xml:whitespace="preserve">%TRUE on success</doc>
6467           <type name="gboolean" c:type="gboolean"/>
6468         </return-value>
6469         <parameters>
6470           <parameter name="pspec" transfer-ownership="none">
6471             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
6472             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
6473           </parameter>
6474           <parameter name="string" transfer-ownership="none">
6475             <doc xml:whitespace="preserve">the string representation of the value</doc>
6476             <type name="utf8" c:type="gchar*"/>
6477           </parameter>
6478           <parameter name="value" transfer-ownership="none">
6479             <doc xml:whitespace="preserve">the #GValue to store the result in</doc>
6480             <type name="GObject.Value" c:type="GValue*"/>
6481           </parameter>
6482         </parameters>
6483       </method>
6484       <method name="value_from_string_type"
6485               c:identifier="gtk_builder_value_from_string_type"
6486               version="2.12"
6487               throws="1">
6488         <doc xml:whitespace="preserve">Like gtk_builder_value_from_string(), this function demarshals 
6489 a value from a string, but takes a #GType instead of #GParamSpec.
6490 This function calls g_value_init() on the @value argument, so it 
6491 need not be initialised beforehand.
6492 Upon errors %FALSE will be returned and @error will be assigned a
6493 #GError from the #GTK_BUILDER_ERROR domain.</doc>
6494         <return-value transfer-ownership="none">
6495           <doc xml:whitespace="preserve">%TRUE on success</doc>
6496           <type name="gboolean" c:type="gboolean"/>
6497         </return-value>
6498         <parameters>
6499           <parameter name="type" transfer-ownership="none">
6500             <doc xml:whitespace="preserve">the #GType of the value</doc>
6501             <type name="GType" c:type="GType"/>
6502           </parameter>
6503           <parameter name="string" transfer-ownership="none">
6504             <doc xml:whitespace="preserve">the string representation of the value</doc>
6505             <type name="utf8" c:type="gchar*"/>
6506           </parameter>
6507           <parameter name="value" transfer-ownership="none">
6508             <doc xml:whitespace="preserve">the #GValue to store the result in</doc>
6509             <type name="GObject.Value" c:type="GValue*"/>
6510           </parameter>
6511         </parameters>
6512       </method>
6513       <property name="translation-domain"
6514                 writable="1"
6515                 transfer-ownership="none">
6516         <type name="utf8"/>
6517       </property>
6518       <field name="parent_instance">
6519         <type name="GObject.Object" c:type="GObject"/>
6520       </field>
6521       <field name="priv">
6522         <type name="BuilderPrivate" c:type="GtkBuilderPrivate*"/>
6523       </field>
6524     </class>
6525     <record name="BuilderClass"
6526             c:type="GtkBuilderClass"
6527             glib:is-gtype-struct-for="Builder">
6528       <field name="parent_class">
6529         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
6530       </field>
6531       <field name="get_type_from_name">
6532         <callback name="get_type_from_name">
6533           <return-value transfer-ownership="none">
6534             <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6535             <type name="GType" c:type="GType"/>
6536           </return-value>
6537           <parameters>
6538             <parameter name="builder" transfer-ownership="none">
6539               <type name="Builder" c:type="GtkBuilder*"/>
6540             </parameter>
6541             <parameter name="type_name" transfer-ownership="none">
6542               <doc xml:whitespace="preserve">type name to lookup</doc>
6543               <type name="utf8" c:type="char*"/>
6544             </parameter>
6545           </parameters>
6546         </callback>
6547       </field>
6548       <field name="_gtk_reserved1" introspectable="0">
6549         <callback name="_gtk_reserved1">
6550           <return-value transfer-ownership="none">
6551             <type name="none" c:type="void"/>
6552           </return-value>
6553         </callback>
6554       </field>
6555       <field name="_gtk_reserved2" introspectable="0">
6556         <callback name="_gtk_reserved2">
6557           <return-value transfer-ownership="none">
6558             <type name="none" c:type="void"/>
6559           </return-value>
6560         </callback>
6561       </field>
6562       <field name="_gtk_reserved3" introspectable="0">
6563         <callback name="_gtk_reserved3">
6564           <return-value transfer-ownership="none">
6565             <type name="none" c:type="void"/>
6566           </return-value>
6567         </callback>
6568       </field>
6569       <field name="_gtk_reserved4" introspectable="0">
6570         <callback name="_gtk_reserved4">
6571           <return-value transfer-ownership="none">
6572             <type name="none" c:type="void"/>
6573           </return-value>
6574         </callback>
6575       </field>
6576       <field name="_gtk_reserved5" introspectable="0">
6577         <callback name="_gtk_reserved5">
6578           <return-value transfer-ownership="none">
6579             <type name="none" c:type="void"/>
6580           </return-value>
6581         </callback>
6582       </field>
6583       <field name="_gtk_reserved6" introspectable="0">
6584         <callback name="_gtk_reserved6">
6585           <return-value transfer-ownership="none">
6586             <type name="none" c:type="void"/>
6587           </return-value>
6588         </callback>
6589       </field>
6590       <field name="_gtk_reserved7" introspectable="0">
6591         <callback name="_gtk_reserved7">
6592           <return-value transfer-ownership="none">
6593             <type name="none" c:type="void"/>
6594           </return-value>
6595         </callback>
6596       </field>
6597       <field name="_gtk_reserved8" introspectable="0">
6598         <callback name="_gtk_reserved8">
6599           <return-value transfer-ownership="none">
6600             <type name="none" c:type="void"/>
6601           </return-value>
6602         </callback>
6603       </field>
6604     </record>
6605     <callback name="BuilderConnectFunc"
6606               c:type="GtkBuilderConnectFunc"
6607               version="2.12">
6608       <doc xml:whitespace="preserve">This is the signature of a function used to connect signals.  It is used
6609 by the gtk_builder_connect_signals() and gtk_builder_connect_signals_full()
6610 methods.  It is mainly intended for interpreted language bindings, but
6611 could be useful where the programmer wants more control over the signal
6612 connection process.</doc>
6613       <return-value transfer-ownership="none">
6614         <type name="none" c:type="void"/>
6615       </return-value>
6616       <parameters>
6617         <parameter name="builder" transfer-ownership="none">
6618           <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6619           <type name="Builder" c:type="GtkBuilder*"/>
6620         </parameter>
6621         <parameter name="object" transfer-ownership="none">
6622           <doc xml:whitespace="preserve">object to connect a signal to</doc>
6623           <type name="GObject.Object" c:type="GObject*"/>
6624         </parameter>
6625         <parameter name="signal_name" transfer-ownership="none">
6626           <doc xml:whitespace="preserve">name of the signal</doc>
6627           <type name="utf8" c:type="gchar*"/>
6628         </parameter>
6629         <parameter name="handler_name" transfer-ownership="none">
6630           <doc xml:whitespace="preserve">name of the handler</doc>
6631           <type name="utf8" c:type="gchar*"/>
6632         </parameter>
6633         <parameter name="connect_object" transfer-ownership="none">
6634           <doc xml:whitespace="preserve">a #GObject, if non-%NULL, use g_signal_connect_object()</doc>
6635           <type name="GObject.Object" c:type="GObject*"/>
6636         </parameter>
6637         <parameter name="flags" transfer-ownership="none">
6638           <doc xml:whitespace="preserve">#GConnectFlags to use</doc>
6639           <type name="GObject.ConnectFlags" c:type="GConnectFlags"/>
6640         </parameter>
6641         <parameter name="user_data" transfer-ownership="none" closure="6">
6642           <doc xml:whitespace="preserve">user data</doc>
6643           <type name="gpointer" c:type="gpointer"/>
6644         </parameter>
6645       </parameters>
6646     </callback>
6647     <enumeration name="BuilderError"
6648                  glib:type-name="GtkBuilderError"
6649                  glib:get-type="gtk_builder_error_get_type"
6650                  c:type="GtkBuilderError"
6651                  glib:error-quark="gtk_builder_error_quark">
6652       <doc xml:whitespace="preserve">Error codes that identify various errors that can occur while using
6653 #GtkBuilder.</doc>
6654       <member name="invalid_type_function"
6655               value="0"
6656               c:identifier="GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION"
6657               glib:nick="invalid-type-function"/>
6658       <member name="unhandled_tag"
6659               value="1"
6660               c:identifier="GTK_BUILDER_ERROR_UNHANDLED_TAG"
6661               glib:nick="unhandled-tag"/>
6662       <member name="missing_attribute"
6663               value="2"
6664               c:identifier="GTK_BUILDER_ERROR_MISSING_ATTRIBUTE"
6665               glib:nick="missing-attribute"/>
6666       <member name="invalid_attribute"
6667               value="3"
6668               c:identifier="GTK_BUILDER_ERROR_INVALID_ATTRIBUTE"
6669               glib:nick="invalid-attribute"/>
6670       <member name="invalid_tag"
6671               value="4"
6672               c:identifier="GTK_BUILDER_ERROR_INVALID_TAG"
6673               glib:nick="invalid-tag"/>
6674       <member name="missing_property_value"
6675               value="5"
6676               c:identifier="GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE"
6677               glib:nick="missing-property-value"/>
6678       <member name="invalid_value"
6679               value="6"
6680               c:identifier="GTK_BUILDER_ERROR_INVALID_VALUE"
6681               glib:nick="invalid-value"/>
6682       <member name="version_mismatch"
6683               value="7"
6684               c:identifier="GTK_BUILDER_ERROR_VERSION_MISMATCH"
6685               glib:nick="version-mismatch"/>
6686       <member name="duplicate_id"
6687               value="8"
6688               c:identifier="GTK_BUILDER_ERROR_DUPLICATE_ID"
6689               glib:nick="duplicate-id"/>
6690     </enumeration>
6691     <record name="BuilderPrivate" c:type="GtkBuilderPrivate" disguised="1">
6692     </record>
6693     <class name="Button"
6694            c:symbol-prefix="button"
6695            c:type="GtkButton"
6696            parent="Bin"
6697            glib:type-name="GtkButton"
6698            glib:get-type="gtk_button_get_type"
6699            glib:type-struct="ButtonClass">
6700       <implements name="Atk.ImplementorIface"/>
6701       <implements name="Activatable"/>
6702       <implements name="Buildable"/>
6703       <implements name="SizeRequest"/>
6704       <constructor name="new" c:identifier="gtk_button_new">
6705         <doc xml:whitespace="preserve">Creates a new #GtkButton widget. To add a child widget to the button,
6706 use gtk_container_add().</doc>
6707         <return-value transfer-ownership="none">
6708           <doc xml:whitespace="preserve">The newly created #GtkButton widget.</doc>
6709           <type name="Widget" c:type="GtkWidget*"/>
6710         </return-value>
6711       </constructor>
6712       <constructor name="new_from_stock"
6713                    c:identifier="gtk_button_new_from_stock">
6714         <doc xml:whitespace="preserve">Creates a new #GtkButton containing the image and text from a stock item.
6715 Some stock ids have preprocessor macros like #GTK_STOCK_OK and
6716 #GTK_STOCK_APPLY.
6717 If @stock_id is unknown, then it will be treated as a mnemonic
6718 label (as for gtk_button_new_with_mnemonic()).</doc>
6719         <return-value transfer-ownership="none">
6720           <doc xml:whitespace="preserve">a new #GtkButton</doc>
6721           <type name="Widget" c:type="GtkWidget*"/>
6722         </return-value>
6723         <parameters>
6724           <parameter name="stock_id" transfer-ownership="none">
6725             <doc xml:whitespace="preserve">the name of the stock item</doc>
6726             <type name="utf8" c:type="gchar*"/>
6727           </parameter>
6728         </parameters>
6729       </constructor>
6730       <constructor name="new_with_label"
6731                    c:identifier="gtk_button_new_with_label">
6732         <doc xml:whitespace="preserve">Creates a #GtkButton widget with a #GtkLabel child containing the given
6733 text.</doc>
6734         <return-value transfer-ownership="none">
6735           <doc xml:whitespace="preserve">The newly created #GtkButton widget.</doc>
6736           <type name="Widget" c:type="GtkWidget*"/>
6737         </return-value>
6738         <parameters>
6739           <parameter name="label" transfer-ownership="none">
6740             <doc xml:whitespace="preserve">The text you want the #GtkLabel to hold.</doc>
6741             <type name="utf8" c:type="gchar*"/>
6742           </parameter>
6743         </parameters>
6744       </constructor>
6745       <constructor name="new_with_mnemonic"
6746                    c:identifier="gtk_button_new_with_mnemonic">
6747         <doc xml:whitespace="preserve">Creates a new #GtkButton containing a label.
6748 If characters in @label are preceded by an underscore, they are underlined.
6749 If you need a literal underscore character in a label, use '__' (two 
6750 underscores). The first underlined character represents a keyboard 
6751 accelerator called a mnemonic.
6752 Pressing Alt and that key activates the button.</doc>
6753         <return-value transfer-ownership="none">
6754           <doc xml:whitespace="preserve">a new #GtkButton</doc>
6755           <type name="Widget" c:type="GtkWidget*"/>
6756         </return-value>
6757         <parameters>
6758           <parameter name="label" transfer-ownership="none">
6759             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
6760             <type name="utf8" c:type="gchar*"/>
6761           </parameter>
6762         </parameters>
6763       </constructor>
6764       <method name="clicked" c:identifier="gtk_button_clicked">
6765         <doc xml:whitespace="preserve">Emits a #GtkButton::clicked signal to the given #GtkButton.</doc>
6766         <return-value transfer-ownership="none">
6767           <type name="none" c:type="void"/>
6768         </return-value>
6769       </method>
6770       <method name="enter"
6771               c:identifier="gtk_button_enter"
6772               deprecated="Use the #GtkWidget::enter-notify-event signal."
6773               deprecated-version="2.20">
6774         <doc xml:whitespace="preserve">Emits a #GtkButton::enter signal to the given #GtkButton.</doc>
6775         <return-value transfer-ownership="none">
6776           <type name="none" c:type="void"/>
6777         </return-value>
6778       </method>
6779       <method name="get_alignment"
6780               c:identifier="gtk_button_get_alignment"
6781               version="2.4">
6782         <doc xml:whitespace="preserve">Gets the alignment of the child in the button.</doc>
6783         <return-value transfer-ownership="none">
6784           <type name="none" c:type="void"/>
6785         </return-value>
6786         <parameters>
6787           <parameter name="xalign" transfer-ownership="none">
6788             <doc xml:whitespace="preserve">return location for horizontal alignment</doc>
6789             <type name="gfloat" c:type="gfloat*"/>
6790           </parameter>
6791           <parameter name="yalign" transfer-ownership="none">
6792             <doc xml:whitespace="preserve">return location for vertical alignment</doc>
6793             <type name="gfloat" c:type="gfloat*"/>
6794           </parameter>
6795         </parameters>
6796       </method>
6797       <method name="get_event_window"
6798               c:identifier="gtk_button_get_event_window"
6799               version="2.22">
6800         <doc xml:whitespace="preserve">Returns the button's event window if it is realized, %NULL otherwise.
6801 This function should be rarely needed.</doc>
6802         <return-value transfer-ownership="none">
6803           <doc xml:whitespace="preserve">@button's event window.</doc>
6804           <type name="Gdk.Window" c:type="GdkWindow*"/>
6805         </return-value>
6806       </method>
6807       <method name="get_focus_on_click"
6808               c:identifier="gtk_button_get_focus_on_click"
6809               version="2.4">
6810         <doc xml:whitespace="preserve">Returns whether the button grabs focus when it is clicked with the mouse.
6811 See gtk_button_set_focus_on_click().
6812 the mouse.</doc>
6813         <return-value transfer-ownership="none">
6814           <doc xml:whitespace="preserve">%TRUE if the button grabs focus when it is clicked with</doc>
6815           <type name="gboolean" c:type="gboolean"/>
6816         </return-value>
6817       </method>
6818       <method name="get_image"
6819               c:identifier="gtk_button_get_image"
6820               version="2.6">
6821         <doc xml:whitespace="preserve">Gets the widget that is currenty set as the image of @button.
6822 This may have been explicitly set by gtk_button_set_image()
6823 or constructed by gtk_button_new_from_stock().</doc>
6824         <return-value transfer-ownership="none">
6825           <doc xml:whitespace="preserve">a #GtkWidget or %NULL in case there is no image</doc>
6826           <type name="Widget" c:type="GtkWidget*"/>
6827         </return-value>
6828       </method>
6829       <method name="get_image_position"
6830               c:identifier="gtk_button_get_image_position"
6831               version="2.10">
6832         <doc xml:whitespace="preserve">Gets the position of the image relative to the text 
6833 inside the button.</doc>
6834         <return-value transfer-ownership="none">
6835           <doc xml:whitespace="preserve">the position</doc>
6836           <type name="PositionType" c:type="GtkPositionType"/>
6837         </return-value>
6838       </method>
6839       <method name="get_label" c:identifier="gtk_button_get_label">
6840         <doc xml:whitespace="preserve">Fetches the text from the label of the button, as set by
6841 gtk_button_set_label(). If the label text has not 
6842 been set the return value will be %NULL. This will be the 
6843 case if you create an empty button with gtk_button_new() to 
6844 use as a container.
6845 by the widget and must not be modified or freed.</doc>
6846         <return-value transfer-ownership="none">
6847           <doc xml:whitespace="preserve">The text of the label widget. This string is owned</doc>
6848           <type name="utf8" c:type="gchar*"/>
6849         </return-value>
6850       </method>
6851       <method name="get_relief" c:identifier="gtk_button_get_relief">
6852         <doc xml:whitespace="preserve">Returns the current relief style of the given #GtkButton.</doc>
6853         <return-value transfer-ownership="none">
6854           <doc xml:whitespace="preserve">The current #GtkReliefStyle</doc>
6855           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
6856         </return-value>
6857       </method>
6858       <method name="get_use_stock" c:identifier="gtk_button_get_use_stock">
6859         <doc xml:whitespace="preserve">Returns whether the button label is a stock item.
6860 select a stock item instead of being
6861 used directly as the label text.</doc>
6862         <return-value transfer-ownership="none">
6863           <doc xml:whitespace="preserve">%TRUE if the button label is used to</doc>
6864           <type name="gboolean" c:type="gboolean"/>
6865         </return-value>
6866       </method>
6867       <method name="get_use_underline"
6868               c:identifier="gtk_button_get_use_underline">
6869         <doc xml:whitespace="preserve">Returns whether an embedded underline in the button label indicates a
6870 mnemonic. See gtk_button_set_use_underline ().
6871 indicates the mnemonic accelerator keys.</doc>
6872         <return-value transfer-ownership="none">
6873           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the button label</doc>
6874           <type name="gboolean" c:type="gboolean"/>
6875         </return-value>
6876       </method>
6877       <method name="leave"
6878               c:identifier="gtk_button_leave"
6879               deprecated="Use the #GtkWidget::leave-notify-event signal."
6880               deprecated-version="2.20">
6881         <doc xml:whitespace="preserve">Emits a #GtkButton::leave signal to the given #GtkButton.</doc>
6882         <return-value transfer-ownership="none">
6883           <type name="none" c:type="void"/>
6884         </return-value>
6885       </method>
6886       <method name="pressed"
6887               c:identifier="gtk_button_pressed"
6888               deprecated="Use the #GtkWidget::button-press-event signal."
6889               deprecated-version="2.20">
6890         <doc xml:whitespace="preserve">Emits a #GtkButton::pressed signal to the given #GtkButton.</doc>
6891         <return-value transfer-ownership="none">
6892           <type name="none" c:type="void"/>
6893         </return-value>
6894       </method>
6895       <method name="released"
6896               c:identifier="gtk_button_released"
6897               deprecated="Use the #GtkWidget::button-release-event signal."
6898               deprecated-version="2.20">
6899         <doc xml:whitespace="preserve">Emits a #GtkButton::released signal to the given #GtkButton.</doc>
6900         <return-value transfer-ownership="none">
6901           <type name="none" c:type="void"/>
6902         </return-value>
6903       </method>
6904       <method name="set_alignment"
6905               c:identifier="gtk_button_set_alignment"
6906               version="2.4">
6907         <doc xml:whitespace="preserve">Sets the alignment of the child. This property has no effect unless 
6908 the child is a #GtkMisc or a #GtkAligment.</doc>
6909         <return-value transfer-ownership="none">
6910           <type name="none" c:type="void"/>
6911         </return-value>
6912         <parameters>
6913           <parameter name="xalign" transfer-ownership="none">
6914             <doc xml:whitespace="preserve">the horizontal position of the child, 0.0 is left aligned, 1.0 is right aligned</doc>
6915             <type name="gfloat" c:type="gfloat"/>
6916           </parameter>
6917           <parameter name="yalign" transfer-ownership="none">
6918             <doc xml:whitespace="preserve">the vertical position of the child, 0.0 is top aligned, 1.0 is bottom aligned</doc>
6919             <type name="gfloat" c:type="gfloat"/>
6920           </parameter>
6921         </parameters>
6922       </method>
6923       <method name="set_focus_on_click"
6924               c:identifier="gtk_button_set_focus_on_click"
6925               version="2.4">
6926         <doc xml:whitespace="preserve">Sets whether the button will grab focus when it is clicked with the mouse.
6927 Making mouse clicks not grab focus is useful in places like toolbars where
6928 you don't want the keyboard focus removed from the main area of the
6929 application.</doc>
6930         <return-value transfer-ownership="none">
6931           <type name="none" c:type="void"/>
6932         </return-value>
6933         <parameters>
6934           <parameter name="focus_on_click" transfer-ownership="none">
6935             <doc xml:whitespace="preserve">whether the button grabs focus when clicked with the mouse</doc>
6936             <type name="gboolean" c:type="gboolean"/>
6937           </parameter>
6938         </parameters>
6939       </method>
6940       <method name="set_image"
6941               c:identifier="gtk_button_set_image"
6942               version="2.6">
6943         <doc xml:whitespace="preserve">Set the image of @button to the given widget. Note that
6944 it depends on the #GtkSettings:gtk-button-images setting whether the
6945 image will be displayed or not, you don't have to call
6946 gtk_widget_show() on @image yourself.</doc>
6947         <return-value transfer-ownership="none">
6948           <type name="none" c:type="void"/>
6949         </return-value>
6950         <parameters>
6951           <parameter name="image" transfer-ownership="none">
6952             <doc xml:whitespace="preserve">a widget to set as the image for the button</doc>
6953             <type name="Widget" c:type="GtkWidget*"/>
6954           </parameter>
6955         </parameters>
6956       </method>
6957       <method name="set_image_position"
6958               c:identifier="gtk_button_set_image_position"
6959               version="2.10">
6960         <doc xml:whitespace="preserve">Sets the position of the image relative to the text 
6961 inside the button.</doc>
6962         <return-value transfer-ownership="none">
6963           <type name="none" c:type="void"/>
6964         </return-value>
6965         <parameters>
6966           <parameter name="position" transfer-ownership="none">
6967             <doc xml:whitespace="preserve">the position</doc>
6968             <type name="PositionType" c:type="GtkPositionType"/>
6969           </parameter>
6970         </parameters>
6971       </method>
6972       <method name="set_label" c:identifier="gtk_button_set_label">
6973         <doc xml:whitespace="preserve">Sets the text of the label of the button to @str. This text is
6974 also used to select the stock item if gtk_button_set_use_stock()
6975 is used.
6976 This will also clear any previously set labels.</doc>
6977         <return-value transfer-ownership="none">
6978           <type name="none" c:type="void"/>
6979         </return-value>
6980         <parameters>
6981           <parameter name="label" transfer-ownership="none">
6982             <doc xml:whitespace="preserve">a string</doc>
6983             <type name="utf8" c:type="gchar*"/>
6984           </parameter>
6985         </parameters>
6986       </method>
6987       <method name="set_relief" c:identifier="gtk_button_set_relief">
6988         <doc xml:whitespace="preserve">Sets the relief style of the edges of the given #GtkButton widget.
6989 Three styles exist, GTK_RELIEF_NORMAL, GTK_RELIEF_HALF, GTK_RELIEF_NONE.
6990 The default style is, as one can guess, GTK_RELIEF_NORMAL.
6991 &lt;!-- FIXME: put pictures of each style --&gt;</doc>
6992         <return-value transfer-ownership="none">
6993           <type name="none" c:type="void"/>
6994         </return-value>
6995         <parameters>
6996           <parameter name="newstyle" transfer-ownership="none">
6997             <doc xml:whitespace="preserve">The GtkReliefStyle as described above.</doc>
6998             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
6999           </parameter>
7000         </parameters>
7001       </method>
7002       <method name="set_use_stock" c:identifier="gtk_button_set_use_stock">
7003         <doc xml:whitespace="preserve">If %TRUE, the label set on the button is used as a
7004 stock id to select the stock item for the button.</doc>
7005         <return-value transfer-ownership="none">
7006           <type name="none" c:type="void"/>
7007         </return-value>
7008         <parameters>
7009           <parameter name="use_stock" transfer-ownership="none">
7010             <doc xml:whitespace="preserve">%TRUE if the button should use a stock item</doc>
7011             <type name="gboolean" c:type="gboolean"/>
7012           </parameter>
7013         </parameters>
7014       </method>
7015       <method name="set_use_underline"
7016               c:identifier="gtk_button_set_use_underline">
7017         <doc xml:whitespace="preserve">If true, an underline in the text of the button label indicates
7018 the next character should be used for the mnemonic accelerator key.</doc>
7019         <return-value transfer-ownership="none">
7020           <type name="none" c:type="void"/>
7021         </return-value>
7022         <parameters>
7023           <parameter name="use_underline" transfer-ownership="none">
7024             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
7025             <type name="gboolean" c:type="gboolean"/>
7026           </parameter>
7027         </parameters>
7028       </method>
7029       <property name="focus-on-click" writable="1" transfer-ownership="none">
7030         <type name="gboolean"/>
7031       </property>
7032       <property name="image" writable="1" transfer-ownership="none">
7033         <type name="Widget"/>
7034       </property>
7035       <property name="image-position"
7036                 version="2.10"
7037                 writable="1"
7038                 transfer-ownership="none">
7039         <doc xml:whitespace="preserve">The position of the image relative to the text inside the button.</doc>
7040         <type name="PositionType"/>
7041       </property>
7042       <property name="label"
7043                 writable="1"
7044                 construct="1"
7045                 transfer-ownership="none">
7046         <type name="utf8"/>
7047       </property>
7048       <property name="relief" writable="1" transfer-ownership="none">
7049         <type name="ReliefStyle"/>
7050       </property>
7051       <property name="use-stock"
7052                 writable="1"
7053                 construct="1"
7054                 transfer-ownership="none">
7055         <type name="gboolean"/>
7056       </property>
7057       <property name="use-underline"
7058                 writable="1"
7059                 construct="1"
7060                 transfer-ownership="none">
7061         <type name="gboolean"/>
7062       </property>
7063       <property name="xalign"
7064                 version="2.4"
7065                 writable="1"
7066                 transfer-ownership="none">
7067         <doc xml:whitespace="preserve">If the child of the button is a #GtkMisc or #GtkAlignment, this property 
7068 can be used to control it's horizontal alignment. 0.0 is left aligned, 
7069 1.0 is right aligned.</doc>
7070         <type name="gfloat"/>
7071       </property>
7072       <property name="yalign"
7073                 version="2.4"
7074                 writable="1"
7075                 transfer-ownership="none">
7076         <doc xml:whitespace="preserve">If the child of the button is a #GtkMisc or #GtkAlignment, this property 
7077 can be used to control it's vertical alignment. 0.0 is top aligned, 
7078 1.0 is bottom aligned.</doc>
7079         <type name="gfloat"/>
7080       </property>
7081       <field name="bin">
7082         <type name="Bin" c:type="GtkBin"/>
7083       </field>
7084       <field name="event_window">
7085         <type name="Gdk.Window" c:type="GdkWindow*"/>
7086       </field>
7087       <field name="label_text">
7088         <type name="utf8" c:type="gchar*"/>
7089       </field>
7090       <field name="activate_timeout">
7091         <type name="guint" c:type="guint"/>
7092       </field>
7093       <field name="constructed" bits="1">
7094         <type name="guint" c:type="guint"/>
7095       </field>
7096       <field name="in_button" bits="1">
7097         <type name="guint" c:type="guint"/>
7098       </field>
7099       <field name="button_down" bits="1">
7100         <type name="guint" c:type="guint"/>
7101       </field>
7102       <field name="relief" bits="2">
7103         <type name="guint" c:type="guint"/>
7104       </field>
7105       <field name="use_underline" bits="1">
7106         <type name="guint" c:type="guint"/>
7107       </field>
7108       <field name="use_stock" bits="1">
7109         <type name="guint" c:type="guint"/>
7110       </field>
7111       <field name="depressed" bits="1">
7112         <type name="guint" c:type="guint"/>
7113       </field>
7114       <field name="depress_on_activate" bits="1">
7115         <type name="guint" c:type="guint"/>
7116       </field>
7117       <field name="focus_on_click" bits="1">
7118         <type name="guint" c:type="guint"/>
7119       </field>
7120       <glib:signal name="activate">
7121         <doc xml:whitespace="preserve">The ::activate signal on GtkButton is an action signal and
7122 emitting it causes the button to animate press then release. 
7123 Applications should never connect to this signal, but use the
7124 #GtkButton::clicked signal.</doc>
7125         <return-value transfer-ownership="none">
7126           <type name="none"/>
7127         </return-value>
7128       </glib:signal>
7129       <glib:signal name="clicked">
7130         <doc xml:whitespace="preserve">Emitted when the button has been activated (pressed and released).</doc>
7131         <return-value transfer-ownership="none">
7132           <type name="none"/>
7133         </return-value>
7134       </glib:signal>
7135       <glib:signal name="enter"
7136                    deprecated="Use the #GtkWidget::enter-notify-event signal."
7137                    deprecated-version="2.8">
7138         <doc xml:whitespace="preserve">Emitted when the pointer enters the button.</doc>
7139         <return-value transfer-ownership="none">
7140           <type name="none"/>
7141         </return-value>
7142       </glib:signal>
7143       <glib:signal name="leave"
7144                    deprecated="Use the #GtkWidget::leave-notify-event signal."
7145                    deprecated-version="2.8">
7146         <doc xml:whitespace="preserve">Emitted when the pointer leaves the button.</doc>
7147         <return-value transfer-ownership="none">
7148           <type name="none"/>
7149         </return-value>
7150       </glib:signal>
7151       <glib:signal name="pressed"
7152                    deprecated="Use the #GtkWidget::button-press-event signal."
7153                    deprecated-version="2.8">
7154         <doc xml:whitespace="preserve">Emitted when the button is pressed.</doc>
7155         <return-value transfer-ownership="none">
7156           <type name="none"/>
7157         </return-value>
7158       </glib:signal>
7159       <glib:signal name="released"
7160                    deprecated="Use the #GtkWidget::button-release-event signal."
7161                    deprecated-version="2.8">
7162         <doc xml:whitespace="preserve">Emitted when the button is released.</doc>
7163         <return-value transfer-ownership="none">
7164           <type name="none"/>
7165         </return-value>
7166       </glib:signal>
7167     </class>
7168     <class name="ButtonBox"
7169            c:symbol-prefix="button_box"
7170            c:type="GtkButtonBox"
7171            parent="Box"
7172            glib:type-name="GtkButtonBox"
7173            glib:get-type="gtk_button_box_get_type"
7174            glib:type-struct="ButtonBoxClass">
7175       <implements name="Atk.ImplementorIface"/>
7176       <implements name="Buildable"/>
7177       <implements name="Orientable"/>
7178       <implements name="SizeRequest"/>
7179       <constructor name="new" c:identifier="gtk_button_box_new" version="3.0">
7180         <doc xml:whitespace="preserve">Creates a new #GtkButtonBox.</doc>
7181         <return-value transfer-ownership="none">
7182           <doc xml:whitespace="preserve">a new #GtkButtonBox.</doc>
7183           <type name="Widget" c:type="GtkWidget*"/>
7184         </return-value>
7185         <parameters>
7186           <parameter name="orientation" transfer-ownership="none">
7187             <doc xml:whitespace="preserve">the box' orientation.</doc>
7188             <type name="Orientation" c:type="GtkOrientation"/>
7189           </parameter>
7190         </parameters>
7191       </constructor>
7192       <method name="get_child_secondary"
7193               c:identifier="gtk_button_box_get_child_secondary"
7194               version="2.4">
7195         <doc xml:whitespace="preserve">Returns whether @child should appear in a secondary group of children.</doc>
7196         <return-value transfer-ownership="none">
7197           <doc xml:whitespace="preserve">whether @child should appear in a secondary group of children.</doc>
7198           <type name="gboolean" c:type="gboolean"/>
7199         </return-value>
7200         <parameters>
7201           <parameter name="child" transfer-ownership="none">
7202             <doc xml:whitespace="preserve">a child of @widget</doc>
7203             <type name="Widget" c:type="GtkWidget*"/>
7204           </parameter>
7205         </parameters>
7206       </method>
7207       <method name="get_layout" c:identifier="gtk_button_box_get_layout">
7208         <doc xml:whitespace="preserve">Retrieves the method being used to arrange the buttons in a button box.</doc>
7209         <return-value transfer-ownership="none">
7210           <doc xml:whitespace="preserve">the method used to lay out buttons in @widget.</doc>
7211           <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7212         </return-value>
7213       </method>
7214       <method name="set_child_secondary"
7215               c:identifier="gtk_button_box_set_child_secondary">
7216         <return-value transfer-ownership="none">
7217           <type name="none" c:type="void"/>
7218         </return-value>
7219         <parameters>
7220           <parameter name="child" transfer-ownership="none">
7221             <type name="Widget" c:type="GtkWidget*"/>
7222           </parameter>
7223           <parameter name="is_secondary" transfer-ownership="none">
7224             <type name="gboolean" c:type="gboolean"/>
7225           </parameter>
7226         </parameters>
7227       </method>
7228       <method name="set_layout" c:identifier="gtk_button_box_set_layout">
7229         <doc xml:whitespace="preserve">Changes the way buttons are arranged in their container.</doc>
7230         <return-value transfer-ownership="none">
7231           <type name="none" c:type="void"/>
7232         </return-value>
7233         <parameters>
7234           <parameter name="layout_style" transfer-ownership="none">
7235             <doc xml:whitespace="preserve">the new layout style</doc>
7236             <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7237           </parameter>
7238         </parameters>
7239       </method>
7240       <property name="layout-style" writable="1" transfer-ownership="none">
7241         <type name="ButtonBoxStyle"/>
7242       </property>
7243       <field name="box">
7244         <type name="Box" c:type="GtkBox"/>
7245       </field>
7246       <field name="priv">
7247         <type name="ButtonBoxPrivate" c:type="GtkButtonBoxPrivate*"/>
7248       </field>
7249     </class>
7250     <record name="ButtonBoxClass"
7251             c:type="GtkButtonBoxClass"
7252             glib:is-gtype-struct-for="ButtonBox">
7253       <field name="parent_class">
7254         <type name="BoxClass" c:type="GtkBoxClass"/>
7255       </field>
7256     </record>
7257     <record name="ButtonBoxPrivate" c:type="GtkButtonBoxPrivate" disguised="1">
7258     </record>
7259     <enumeration name="ButtonBoxStyle"
7260                  glib:type-name="GtkButtonBoxStyle"
7261                  glib:get-type="gtk_button_box_style_get_type"
7262                  c:type="GtkButtonBoxStyle">
7263       <member name="spread"
7264               value="1"
7265               c:identifier="GTK_BUTTONBOX_SPREAD"
7266               glib:nick="spread"/>
7267       <member name="edge"
7268               value="2"
7269               c:identifier="GTK_BUTTONBOX_EDGE"
7270               glib:nick="edge"/>
7271       <member name="start"
7272               value="3"
7273               c:identifier="GTK_BUTTONBOX_START"
7274               glib:nick="start"/>
7275       <member name="end"
7276               value="4"
7277               c:identifier="GTK_BUTTONBOX_END"
7278               glib:nick="end"/>
7279       <member name="center"
7280               value="5"
7281               c:identifier="GTK_BUTTONBOX_CENTER"
7282               glib:nick="center"/>
7283     </enumeration>
7284     <record name="ButtonClass"
7285             c:type="GtkButtonClass"
7286             glib:is-gtype-struct-for="Button">
7287       <field name="parent_class">
7288         <type name="BinClass" c:type="GtkBinClass"/>
7289       </field>
7290       <field name="pressed">
7291         <callback name="pressed">
7292           <return-value transfer-ownership="none">
7293             <type name="none" c:type="void"/>
7294           </return-value>
7295           <parameters>
7296             <parameter name="button" transfer-ownership="none">
7297               <type name="Button" c:type="GtkButton*"/>
7298             </parameter>
7299           </parameters>
7300         </callback>
7301       </field>
7302       <field name="released">
7303         <callback name="released">
7304           <return-value transfer-ownership="none">
7305             <type name="none" c:type="void"/>
7306           </return-value>
7307           <parameters>
7308             <parameter name="button" transfer-ownership="none">
7309               <type name="Button" c:type="GtkButton*"/>
7310             </parameter>
7311           </parameters>
7312         </callback>
7313       </field>
7314       <field name="clicked">
7315         <callback name="clicked">
7316           <return-value transfer-ownership="none">
7317             <type name="none" c:type="void"/>
7318           </return-value>
7319           <parameters>
7320             <parameter name="button" transfer-ownership="none">
7321               <type name="Button" c:type="GtkButton*"/>
7322             </parameter>
7323           </parameters>
7324         </callback>
7325       </field>
7326       <field name="enter">
7327         <callback name="enter">
7328           <return-value transfer-ownership="none">
7329             <type name="none" c:type="void"/>
7330           </return-value>
7331           <parameters>
7332             <parameter name="button" transfer-ownership="none">
7333               <type name="Button" c:type="GtkButton*"/>
7334             </parameter>
7335           </parameters>
7336         </callback>
7337       </field>
7338       <field name="leave">
7339         <callback name="leave">
7340           <return-value transfer-ownership="none">
7341             <type name="none" c:type="void"/>
7342           </return-value>
7343           <parameters>
7344             <parameter name="button" transfer-ownership="none">
7345               <type name="Button" c:type="GtkButton*"/>
7346             </parameter>
7347           </parameters>
7348         </callback>
7349       </field>
7350       <field name="activate">
7351         <callback name="activate">
7352           <return-value transfer-ownership="none">
7353             <type name="none" c:type="void"/>
7354           </return-value>
7355           <parameters>
7356             <parameter name="button" transfer-ownership="none">
7357               <type name="Button" c:type="GtkButton*"/>
7358             </parameter>
7359           </parameters>
7360         </callback>
7361       </field>
7362       <field name="_gtk_reserved1" introspectable="0">
7363         <callback name="_gtk_reserved1">
7364           <return-value transfer-ownership="none">
7365             <type name="none" c:type="void"/>
7366           </return-value>
7367         </callback>
7368       </field>
7369       <field name="_gtk_reserved2" introspectable="0">
7370         <callback name="_gtk_reserved2">
7371           <return-value transfer-ownership="none">
7372             <type name="none" c:type="void"/>
7373           </return-value>
7374         </callback>
7375       </field>
7376       <field name="_gtk_reserved3" introspectable="0">
7377         <callback name="_gtk_reserved3">
7378           <return-value transfer-ownership="none">
7379             <type name="none" c:type="void"/>
7380           </return-value>
7381         </callback>
7382       </field>
7383       <field name="_gtk_reserved4" introspectable="0">
7384         <callback name="_gtk_reserved4">
7385           <return-value transfer-ownership="none">
7386             <type name="none" c:type="void"/>
7387           </return-value>
7388         </callback>
7389       </field>
7390     </record>
7391     <enumeration name="ButtonsType"
7392                  glib:type-name="GtkButtonsType"
7393                  glib:get-type="gtk_buttons_type_get_type"
7394                  c:type="GtkButtonsType">
7395       <doc xml:whitespace="preserve">Prebuilt sets of buttons for the dialog. If
7396 none of these choices are appropriate, simply use %GTK_BUTTONS_NONE
7397 then call gtk_dialog_add_buttons().
7398 &lt;note&gt;
7399 Please note that %GTK_BUTTONS_OK, %GTK_BUTTONS_YES_NO
7400 and %GTK_BUTTONS_OK_CANCEL are discouraged by the
7401 &lt;ulink url="http://library.gnome.org/devel/hig-book/stable/"&gt;GNOME HIG&lt;/ulink&gt;.
7402 &lt;/note&gt;</doc>
7403       <member name="none"
7404               value="0"
7405               c:identifier="GTK_BUTTONS_NONE"
7406               glib:nick="none"/>
7407       <member name="ok"
7408               value="1"
7409               c:identifier="GTK_BUTTONS_OK"
7410               glib:nick="ok"/>
7411       <member name="close"
7412               value="2"
7413               c:identifier="GTK_BUTTONS_CLOSE"
7414               glib:nick="close"/>
7415       <member name="cancel"
7416               value="3"
7417               c:identifier="GTK_BUTTONS_CANCEL"
7418               glib:nick="cancel"/>
7419       <member name="yes_no"
7420               value="4"
7421               c:identifier="GTK_BUTTONS_YES_NO"
7422               glib:nick="yes-no"/>
7423       <member name="ok_cancel"
7424               value="5"
7425               c:identifier="GTK_BUTTONS_OK_CANCEL"
7426               glib:nick="ok-cancel"/>
7427     </enumeration>
7428     <class name="Calendar"
7429            c:symbol-prefix="calendar"
7430            c:type="GtkCalendar"
7431            parent="Widget"
7432            glib:type-name="GtkCalendar"
7433            glib:get-type="gtk_calendar_get_type"
7434            glib:type-struct="CalendarClass">
7435       <implements name="Atk.ImplementorIface"/>
7436       <implements name="Buildable"/>
7437       <implements name="SizeRequest"/>
7438       <constructor name="new" c:identifier="gtk_calendar_new">
7439         <doc xml:whitespace="preserve">Creates a new calendar, with the current date being selected.</doc>
7440         <return-value transfer-ownership="none">
7441           <doc xml:whitespace="preserve">a newly #GtkCalendar widget</doc>
7442           <type name="Widget" c:type="GtkWidget*"/>
7443         </return-value>
7444       </constructor>
7445       <method name="clear_marks" c:identifier="gtk_calendar_clear_marks">
7446         <doc xml:whitespace="preserve">Remove all visual markers.</doc>
7447         <return-value transfer-ownership="none">
7448           <type name="none" c:type="void"/>
7449         </return-value>
7450       </method>
7451       <method name="get_date" c:identifier="gtk_calendar_get_date">
7452         <doc xml:whitespace="preserve">Obtains the selected date from a #GtkCalendar.</doc>
7453         <return-value transfer-ownership="none">
7454           <type name="none" c:type="void"/>
7455         </return-value>
7456         <parameters>
7457           <parameter name="year" transfer-ownership="none" allow-none="1">
7458             <doc xml:whitespace="preserve">location to store the year number, or %NULL</doc>
7459             <type name="guint" c:type="guint*"/>
7460           </parameter>
7461           <parameter name="month" transfer-ownership="none" allow-none="1">
7462             <doc xml:whitespace="preserve">location to store the month number (between 0 and 11), or %NULL</doc>
7463             <type name="guint" c:type="guint*"/>
7464           </parameter>
7465           <parameter name="day" transfer-ownership="none" allow-none="1">
7466             <doc xml:whitespace="preserve">location to store the day number (between 1 and 31), or %NULL</doc>
7467             <type name="guint" c:type="guint*"/>
7468           </parameter>
7469         </parameters>
7470       </method>
7471       <method name="get_day_is_marked"
7472               c:identifier="gtk_calendar_get_day_is_marked"
7473               version="3.0">
7474         <doc xml:whitespace="preserve">Returns if the @day of the @calendar is already marked.</doc>
7475         <return-value transfer-ownership="none">
7476           <doc xml:whitespace="preserve">whether the day is marked.</doc>
7477           <type name="gboolean" c:type="gboolean"/>
7478         </return-value>
7479         <parameters>
7480           <parameter name="day" transfer-ownership="none">
7481             <doc xml:whitespace="preserve">the day number between 1 and 31.</doc>
7482             <type name="guint" c:type="guint"/>
7483           </parameter>
7484         </parameters>
7485       </method>
7486       <method name="get_detail_height_rows"
7487               c:identifier="gtk_calendar_get_detail_height_rows"
7488               version="2.14">
7489         <doc xml:whitespace="preserve">Queries the height of detail cells, in rows.
7490 See #GtkCalendar:detail-width-chars.</doc>
7491         <return-value transfer-ownership="none">
7492           <doc xml:whitespace="preserve">The height of detail cells, in rows.</doc>
7493           <type name="gint" c:type="gint"/>
7494         </return-value>
7495       </method>
7496       <method name="get_detail_width_chars"
7497               c:identifier="gtk_calendar_get_detail_width_chars"
7498               version="2.14">
7499         <doc xml:whitespace="preserve">Queries the width of detail cells, in characters.
7500 See #GtkCalendar:detail-width-chars.</doc>
7501         <return-value transfer-ownership="none">
7502           <doc xml:whitespace="preserve">The width of detail cells, in characters.</doc>
7503           <type name="gint" c:type="gint"/>
7504         </return-value>
7505       </method>
7506       <method name="get_display_options"
7507               c:identifier="gtk_calendar_get_display_options"
7508               version="2.4">
7509         <doc xml:whitespace="preserve">Returns the current display options of @calendar.</doc>
7510         <return-value transfer-ownership="none">
7511           <doc xml:whitespace="preserve">the display options.</doc>
7512           <type name="CalendarDisplayOptions"
7513                 c:type="GtkCalendarDisplayOptions"/>
7514         </return-value>
7515       </method>
7516       <method name="mark_day" c:identifier="gtk_calendar_mark_day">
7517         <doc xml:whitespace="preserve">Places a visual marker on a particular day.</doc>
7518         <return-value transfer-ownership="none">
7519           <type name="none" c:type="void"/>
7520         </return-value>
7521         <parameters>
7522           <parameter name="day" transfer-ownership="none">
7523             <doc xml:whitespace="preserve">the day number to mark between 1 and 31.</doc>
7524             <type name="guint" c:type="guint"/>
7525           </parameter>
7526         </parameters>
7527       </method>
7528       <method name="select_day" c:identifier="gtk_calendar_select_day">
7529         <doc xml:whitespace="preserve">Selects a day from the current month.</doc>
7530         <return-value transfer-ownership="none">
7531           <type name="none" c:type="void"/>
7532         </return-value>
7533         <parameters>
7534           <parameter name="day" transfer-ownership="none">
7535             <doc xml:whitespace="preserve">the day number between 1 and 31, or 0 to unselect the currently selected day.</doc>
7536             <type name="guint" c:type="guint"/>
7537           </parameter>
7538         </parameters>
7539       </method>
7540       <method name="select_month" c:identifier="gtk_calendar_select_month">
7541         <doc xml:whitespace="preserve">Shifts the calendar to a different month.</doc>
7542         <return-value transfer-ownership="none">
7543           <type name="none" c:type="void"/>
7544         </return-value>
7545         <parameters>
7546           <parameter name="month" transfer-ownership="none">
7547             <doc xml:whitespace="preserve">a month number between 0 and 11.</doc>
7548             <type name="guint" c:type="guint"/>
7549           </parameter>
7550           <parameter name="year" transfer-ownership="none">
7551             <doc xml:whitespace="preserve">the year the month is in.</doc>
7552             <type name="guint" c:type="guint"/>
7553           </parameter>
7554         </parameters>
7555       </method>
7556       <method name="set_detail_func"
7557               c:identifier="gtk_calendar_set_detail_func"
7558               version="2.14">
7559         <doc xml:whitespace="preserve">Installs a function which provides Pango markup with detail information
7560 for each day. Examples for such details are holidays or appointments. That
7561 information is shown below each day when #GtkCalendar:show-details is set.
7562 A tooltip containing with full detail information is provided, if the entire
7563 text should not fit into the details area, or if #GtkCalendar:show-details
7564 is not set.
7565 The size of the details area can be restricted by setting the
7566 #GtkCalendar:detail-width-chars and #GtkCalendar:detail-height-rows
7567 properties.</doc>
7568         <return-value transfer-ownership="none">
7569           <type name="none" c:type="void"/>
7570         </return-value>
7571         <parameters>
7572           <parameter name="func"
7573                      transfer-ownership="none"
7574                      scope="notified"
7575                      closure="1"
7576                      destroy="2">
7577             <doc xml:whitespace="preserve">a function providing details for each day.</doc>
7578             <type name="CalendarDetailFunc" c:type="GtkCalendarDetailFunc"/>
7579           </parameter>
7580           <parameter name="data" transfer-ownership="none">
7581             <doc xml:whitespace="preserve">data to pass to @func invokations.</doc>
7582             <type name="gpointer" c:type="gpointer"/>
7583           </parameter>
7584           <parameter name="destroy" transfer-ownership="none" scope="async">
7585             <doc xml:whitespace="preserve">a function for releasing @data.</doc>
7586             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
7587           </parameter>
7588         </parameters>
7589       </method>
7590       <method name="set_detail_height_rows"
7591               c:identifier="gtk_calendar_set_detail_height_rows"
7592               version="2.14">
7593         <doc xml:whitespace="preserve">Updates the height of detail cells.
7594 See #GtkCalendar:detail-height-rows.</doc>
7595         <return-value transfer-ownership="none">
7596           <type name="none" c:type="void"/>
7597         </return-value>
7598         <parameters>
7599           <parameter name="rows" transfer-ownership="none">
7600             <doc xml:whitespace="preserve">detail height in rows.</doc>
7601             <type name="gint" c:type="gint"/>
7602           </parameter>
7603         </parameters>
7604       </method>
7605       <method name="set_detail_width_chars"
7606               c:identifier="gtk_calendar_set_detail_width_chars"
7607               version="2.14">
7608         <doc xml:whitespace="preserve">Updates the width of detail cells.
7609 See #GtkCalendar:detail-width-chars.</doc>
7610         <return-value transfer-ownership="none">
7611           <type name="none" c:type="void"/>
7612         </return-value>
7613         <parameters>
7614           <parameter name="chars" transfer-ownership="none">
7615             <doc xml:whitespace="preserve">detail width in characters.</doc>
7616             <type name="gint" c:type="gint"/>
7617           </parameter>
7618         </parameters>
7619       </method>
7620       <method name="set_display_options"
7621               c:identifier="gtk_calendar_set_display_options"
7622               version="2.4">
7623         <doc xml:whitespace="preserve">Sets display options (whether to display the heading and the month  
7624 headings).</doc>
7625         <return-value transfer-ownership="none">
7626           <type name="none" c:type="void"/>
7627         </return-value>
7628         <parameters>
7629           <parameter name="flags" transfer-ownership="none">
7630             <doc xml:whitespace="preserve">the display options to set</doc>
7631             <type name="CalendarDisplayOptions"
7632                   c:type="GtkCalendarDisplayOptions"/>
7633           </parameter>
7634         </parameters>
7635       </method>
7636       <method name="unmark_day" c:identifier="gtk_calendar_unmark_day">
7637         <doc xml:whitespace="preserve">Removes the visual marker from a particular day.</doc>
7638         <return-value transfer-ownership="none">
7639           <type name="none" c:type="void"/>
7640         </return-value>
7641         <parameters>
7642           <parameter name="day" transfer-ownership="none">
7643             <doc xml:whitespace="preserve">the day number to unmark between 1 and 31.</doc>
7644             <type name="guint" c:type="guint"/>
7645           </parameter>
7646         </parameters>
7647       </method>
7648       <property name="day" writable="1" transfer-ownership="none">
7649         <doc xml:whitespace="preserve">The selected day (as a number between 1 and 31, or 0 
7650 to unselect the currently selected day).
7651 This property gets initially set to the current day.</doc>
7652         <type name="gint"/>
7653       </property>
7654       <property name="detail-height-rows"
7655                 version="2.14"
7656                 writable="1"
7657                 transfer-ownership="none">
7658         <doc xml:whitespace="preserve">Height of a detail cell, in rows.
7659 A value of 0 allows any width. See gtk_calendar_set_detail_func().</doc>
7660         <type name="gint"/>
7661       </property>
7662       <property name="detail-width-chars"
7663                 version="2.14"
7664                 writable="1"
7665                 transfer-ownership="none">
7666         <doc xml:whitespace="preserve">Width of a detail cell, in characters.
7667 A value of 0 allows any width. See gtk_calendar_set_detail_func().</doc>
7668         <type name="gint"/>
7669       </property>
7670       <property name="month" writable="1" transfer-ownership="none">
7671         <doc xml:whitespace="preserve">The selected month (as a number between 0 and 11). 
7672 This property gets initially set to the current month.</doc>
7673         <type name="gint"/>
7674       </property>
7675       <property name="no-month-change"
7676                 version="2.4"
7677                 writable="1"
7678                 transfer-ownership="none">
7679         <doc xml:whitespace="preserve">Determines whether the selected month can be changed.</doc>
7680         <type name="gboolean"/>
7681       </property>
7682       <property name="show-day-names"
7683                 version="2.4"
7684                 writable="1"
7685                 transfer-ownership="none">
7686         <doc xml:whitespace="preserve">Determines whether day names are displayed.</doc>
7687         <type name="gboolean"/>
7688       </property>
7689       <property name="show-details"
7690                 version="2.14"
7691                 writable="1"
7692                 transfer-ownership="none">
7693         <doc xml:whitespace="preserve">Determines whether details are shown directly in the widget, or if they are
7694 available only as tooltip. When this property is set days with details are
7695 marked.</doc>
7696         <type name="gboolean"/>
7697       </property>
7698       <property name="show-heading"
7699                 version="2.4"
7700                 writable="1"
7701                 transfer-ownership="none">
7702         <doc xml:whitespace="preserve">Determines whether a heading is displayed.</doc>
7703         <type name="gboolean"/>
7704       </property>
7705       <property name="show-week-numbers"
7706                 version="2.4"
7707                 writable="1"
7708                 transfer-ownership="none">
7709         <doc xml:whitespace="preserve">Determines whether week numbers are displayed.</doc>
7710         <type name="gboolean"/>
7711       </property>
7712       <property name="year" writable="1" transfer-ownership="none">
7713         <doc xml:whitespace="preserve">The selected year. 
7714 This property gets initially set to the current year.</doc>
7715         <type name="gint"/>
7716       </property>
7717       <field name="widget">
7718         <type name="Widget" c:type="GtkWidget"/>
7719       </field>
7720       <field name="priv">
7721         <type name="CalendarPrivate" c:type="GtkCalendarPrivate*"/>
7722       </field>
7723       <glib:signal name="day-selected">
7724         <doc xml:whitespace="preserve">Emitted when the user selects a day.</doc>
7725         <return-value transfer-ownership="none">
7726           <type name="none"/>
7727         </return-value>
7728       </glib:signal>
7729       <glib:signal name="day-selected-double-click">
7730         <doc xml:whitespace="preserve">Emitted when the user double-clicks a day.</doc>
7731         <return-value transfer-ownership="none">
7732           <type name="none"/>
7733         </return-value>
7734       </glib:signal>
7735       <glib:signal name="month-changed">
7736         <doc xml:whitespace="preserve">Emitted when the user clicks a button to change the selected month on a
7737 calendar.</doc>
7738         <return-value transfer-ownership="none">
7739           <type name="none"/>
7740         </return-value>
7741       </glib:signal>
7742       <glib:signal name="next-month">
7743         <doc xml:whitespace="preserve">Emitted when the user switched to the next month.</doc>
7744         <return-value transfer-ownership="none">
7745           <type name="none"/>
7746         </return-value>
7747       </glib:signal>
7748       <glib:signal name="next-year">
7749         <doc xml:whitespace="preserve">Emitted when user switched to the next year.</doc>
7750         <return-value transfer-ownership="none">
7751           <type name="none"/>
7752         </return-value>
7753       </glib:signal>
7754       <glib:signal name="prev-month">
7755         <doc xml:whitespace="preserve">Emitted when the user switched to the previous month.</doc>
7756         <return-value transfer-ownership="none">
7757           <type name="none"/>
7758         </return-value>
7759       </glib:signal>
7760       <glib:signal name="prev-year">
7761         <doc xml:whitespace="preserve">Emitted when user switched to the previous year.</doc>
7762         <return-value transfer-ownership="none">
7763           <type name="none"/>
7764         </return-value>
7765       </glib:signal>
7766     </class>
7767     <record name="CalendarClass"
7768             c:type="GtkCalendarClass"
7769             glib:is-gtype-struct-for="Calendar">
7770       <field name="parent_class">
7771         <type name="WidgetClass" c:type="GtkWidgetClass"/>
7772       </field>
7773       <field name="month_changed">
7774         <callback name="month_changed">
7775           <return-value transfer-ownership="none">
7776             <type name="none" c:type="void"/>
7777           </return-value>
7778           <parameters>
7779             <parameter name="calendar" transfer-ownership="none">
7780               <type name="Calendar" c:type="GtkCalendar*"/>
7781             </parameter>
7782           </parameters>
7783         </callback>
7784       </field>
7785       <field name="day_selected">
7786         <callback name="day_selected">
7787           <return-value transfer-ownership="none">
7788             <type name="none" c:type="void"/>
7789           </return-value>
7790           <parameters>
7791             <parameter name="calendar" transfer-ownership="none">
7792               <type name="Calendar" c:type="GtkCalendar*"/>
7793             </parameter>
7794           </parameters>
7795         </callback>
7796       </field>
7797       <field name="day_selected_double_click">
7798         <callback name="day_selected_double_click">
7799           <return-value transfer-ownership="none">
7800             <type name="none" c:type="void"/>
7801           </return-value>
7802           <parameters>
7803             <parameter name="calendar" transfer-ownership="none">
7804               <type name="Calendar" c:type="GtkCalendar*"/>
7805             </parameter>
7806           </parameters>
7807         </callback>
7808       </field>
7809       <field name="prev_month">
7810         <callback name="prev_month">
7811           <return-value transfer-ownership="none">
7812             <type name="none" c:type="void"/>
7813           </return-value>
7814           <parameters>
7815             <parameter name="calendar" transfer-ownership="none">
7816               <type name="Calendar" c:type="GtkCalendar*"/>
7817             </parameter>
7818           </parameters>
7819         </callback>
7820       </field>
7821       <field name="next_month">
7822         <callback name="next_month">
7823           <return-value transfer-ownership="none">
7824             <type name="none" c:type="void"/>
7825           </return-value>
7826           <parameters>
7827             <parameter name="calendar" transfer-ownership="none">
7828               <type name="Calendar" c:type="GtkCalendar*"/>
7829             </parameter>
7830           </parameters>
7831         </callback>
7832       </field>
7833       <field name="prev_year">
7834         <callback name="prev_year">
7835           <return-value transfer-ownership="none">
7836             <type name="none" c:type="void"/>
7837           </return-value>
7838           <parameters>
7839             <parameter name="calendar" transfer-ownership="none">
7840               <type name="Calendar" c:type="GtkCalendar*"/>
7841             </parameter>
7842           </parameters>
7843         </callback>
7844       </field>
7845       <field name="next_year">
7846         <callback name="next_year">
7847           <return-value transfer-ownership="none">
7848             <type name="none" c:type="void"/>
7849           </return-value>
7850           <parameters>
7851             <parameter name="calendar" transfer-ownership="none">
7852               <type name="Calendar" c:type="GtkCalendar*"/>
7853             </parameter>
7854           </parameters>
7855         </callback>
7856       </field>
7857     </record>
7858     <callback name="CalendarDetailFunc"
7859               c:type="GtkCalendarDetailFunc"
7860               version="2.14">
7861       <doc xml:whitespace="preserve">This kind of functions provide Pango markup with detail information for the
7862 specified day. Examples for such details are holidays or appointments. The
7863 function returns %NULL when no information is available.
7864 for the specified day, or %NULL.</doc>
7865       <return-value transfer-ownership="full">
7866         <doc xml:whitespace="preserve">Newly allocated string with Pango markup with details</doc>
7867         <type name="utf8" c:type="gchar*"/>
7868       </return-value>
7869       <parameters>
7870         <parameter name="calendar" transfer-ownership="none">
7871           <doc xml:whitespace="preserve">a #GtkCalendar.</doc>
7872           <type name="Calendar" c:type="GtkCalendar*"/>
7873         </parameter>
7874         <parameter name="year" transfer-ownership="none">
7875           <doc xml:whitespace="preserve">the year for which details are needed.</doc>
7876           <type name="guint" c:type="guint"/>
7877         </parameter>
7878         <parameter name="month" transfer-ownership="none">
7879           <doc xml:whitespace="preserve">the month for which details are needed.</doc>
7880           <type name="guint" c:type="guint"/>
7881         </parameter>
7882         <parameter name="day" transfer-ownership="none">
7883           <doc xml:whitespace="preserve">the day of @month for which details are needed.</doc>
7884           <type name="guint" c:type="guint"/>
7885         </parameter>
7886         <parameter name="user_data" transfer-ownership="none" closure="4">
7887           <doc xml:whitespace="preserve">the data passed with gtk_calendar_set_detail_func().</doc>
7888           <type name="gpointer" c:type="gpointer"/>
7889         </parameter>
7890       </parameters>
7891     </callback>
7892     <bitfield name="CalendarDisplayOptions"
7893               glib:type-name="GtkCalendarDisplayOptions"
7894               glib:get-type="gtk_calendar_display_options_get_type"
7895               c:type="GtkCalendarDisplayOptions">
7896       <doc xml:whitespace="preserve">These options can be used to influence the display and behaviour of a #GtkCalendar.</doc>
7897       <member name="show_heading"
7898               value="1"
7899               c:identifier="GTK_CALENDAR_SHOW_HEADING"
7900               glib:nick="show-heading"/>
7901       <member name="show_day_names"
7902               value="2"
7903               c:identifier="GTK_CALENDAR_SHOW_DAY_NAMES"
7904               glib:nick="show-day-names"/>
7905       <member name="no_month_change"
7906               value="4"
7907               c:identifier="GTK_CALENDAR_NO_MONTH_CHANGE"
7908               glib:nick="no-month-change"/>
7909       <member name="show_week_numbers"
7910               value="8"
7911               c:identifier="GTK_CALENDAR_SHOW_WEEK_NUMBERS"
7912               glib:nick="show-week-numbers"/>
7913       <member name="show_details"
7914               value="32"
7915               c:identifier="GTK_CALENDAR_SHOW_DETAILS"
7916               glib:nick="show-details"/>
7917     </bitfield>
7918     <record name="CalendarPrivate" c:type="GtkCalendarPrivate" disguised="1">
7919     </record>
7920     <callback name="Callback" c:type="GtkCallback">
7921       <doc xml:whitespace="preserve">The type of the callback functions used for e.g. iterating over
7922 the children of a container, see gtk_container_foreach().</doc>
7923       <return-value transfer-ownership="none">
7924         <type name="none" c:type="void"/>
7925       </return-value>
7926       <parameters>
7927         <parameter name="widget" transfer-ownership="none">
7928           <doc xml:whitespace="preserve">the widget to operate on</doc>
7929           <type name="Widget" c:type="GtkWidget*"/>
7930         </parameter>
7931         <parameter name="data" transfer-ownership="none">
7932           <doc xml:whitespace="preserve">user-supplied data</doc>
7933           <type name="gpointer" c:type="gpointer"/>
7934         </parameter>
7935       </parameters>
7936     </callback>
7937     <callback name="CallbackMarshal" c:type="GtkCallbackMarshal">
7938       <doc xml:whitespace="preserve">Defines a function pointer.</doc>
7939       <return-value transfer-ownership="none">
7940         <type name="none" c:type="void"/>
7941       </return-value>
7942       <parameters>
7943         <parameter name="object" transfer-ownership="none">
7944           <doc xml:whitespace="preserve">#GtkObject*</doc>
7945           <type name="Object" c:type="GtkObject*"/>
7946         </parameter>
7947         <parameter name="data" transfer-ownership="none">
7948           <doc xml:whitespace="preserve">#gpointer</doc>
7949           <type name="gpointer" c:type="gpointer"/>
7950         </parameter>
7951         <parameter name="n_args" transfer-ownership="none">
7952           <doc xml:whitespace="preserve">#guint</doc>
7953           <type name="guint" c:type="guint"/>
7954         </parameter>
7955         <parameter name="args" transfer-ownership="none">
7956           <doc xml:whitespace="preserve">#GtkArg*</doc>
7957           <type name="Arg" c:type="GtkArg*"/>
7958         </parameter>
7959       </parameters>
7960     </callback>
7961     <interface name="CellEditable"
7962                c:symbol-prefix="cell_editable"
7963                c:type="GtkCellEditable"
7964                glib:type-name="GtkCellEditable"
7965                glib:get-type="gtk_cell_editable_get_type"
7966                glib:type-struct="CellEditableIface">
7967       <prerequisite name="Widget"/>
7968       <virtual-method name="start_editing" invoker="start_editing">
7969         <doc xml:whitespace="preserve">Begins editing on a @cell_editable. @event is the #GdkEvent that began 
7970 the editing process. It may be %NULL, in the instance that editing was 
7971 initiated through programatic means.</doc>
7972         <return-value transfer-ownership="none">
7973           <type name="none" c:type="void"/>
7974         </return-value>
7975         <parameters>
7976           <parameter name="event" transfer-ownership="none" allow-none="1">
7977             <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
7978             <type name="Gdk.Event" c:type="GdkEvent*"/>
7979           </parameter>
7980         </parameters>
7981       </virtual-method>
7982       <method name="editing_done"
7983               c:identifier="gtk_cell_editable_editing_done">
7984         <doc xml:whitespace="preserve">Emits the #GtkCellEditable::editing-done signal.</doc>
7985         <return-value transfer-ownership="none">
7986           <type name="none" c:type="void"/>
7987         </return-value>
7988       </method>
7989       <method name="remove_widget"
7990               c:identifier="gtk_cell_editable_remove_widget">
7991         <doc xml:whitespace="preserve">Emits the #GtkCellEditable::remove-widget signal.</doc>
7992         <return-value transfer-ownership="none">
7993           <type name="none" c:type="void"/>
7994         </return-value>
7995       </method>
7996       <method name="start_editing"
7997               c:identifier="gtk_cell_editable_start_editing">
7998         <doc xml:whitespace="preserve">Begins editing on a @cell_editable. @event is the #GdkEvent that began 
7999 the editing process. It may be %NULL, in the instance that editing was 
8000 initiated through programatic means.</doc>
8001         <return-value transfer-ownership="none">
8002           <type name="none" c:type="void"/>
8003         </return-value>
8004         <parameters>
8005           <parameter name="event" transfer-ownership="none" allow-none="1">
8006             <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
8007             <type name="Gdk.Event" c:type="GdkEvent*"/>
8008           </parameter>
8009         </parameters>
8010       </method>
8011       <property name="editing-canceled"
8012                 version="2.20"
8013                 writable="1"
8014                 transfer-ownership="none">
8015         <doc xml:whitespace="preserve">Indicates whether editing on the cell has been canceled.</doc>
8016         <type name="gboolean"/>
8017       </property>
8018       <glib:signal name="editing-done">
8019         <doc xml:whitespace="preserve">This signal is a sign for the cell renderer to update its
8020 value from the @cell_editable.
8021 Implementations of #GtkCellEditable are responsible for
8022 emitting this signal when they are done editing, e.g.
8023 #GtkEntry is emitting it when the user presses Enter.
8024 gtk_cell_editable_editing_done() is a convenience method
8025 for emitting #GtkCellEditable::editing-done.</doc>
8026         <return-value transfer-ownership="none">
8027           <type name="none"/>
8028         </return-value>
8029       </glib:signal>
8030       <glib:signal name="remove-widget">
8031         <doc xml:whitespace="preserve">This signal is meant to indicate that the cell is finished
8032 editing, and the widget may now be destroyed.
8033 Implementations of #GtkCellEditable are responsible for
8034 emitting this signal when they are done editing. It must
8035 be emitted after the #GtkCellEditable::editing-done signal,
8036 to give the cell renderer a chance to update the cell's value
8037 before the widget is removed.
8038 gtk_cell_editable_remove_widget() is a convenience method
8039 for emitting #GtkCellEditable::remove-widget.</doc>
8040         <return-value transfer-ownership="none">
8041           <type name="none"/>
8042         </return-value>
8043       </glib:signal>
8044     </interface>
8045     <record name="CellEditableIface"
8046             c:type="GtkCellEditableIface"
8047             glib:is-gtype-struct-for="CellEditable">
8048       <field name="g_iface">
8049         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
8050       </field>
8051       <field name="editing_done">
8052         <callback name="editing_done">
8053           <return-value transfer-ownership="none">
8054             <type name="none" c:type="void"/>
8055           </return-value>
8056           <parameters>
8057             <parameter name="cell_editable" transfer-ownership="none">
8058               <type name="CellEditable" c:type="GtkCellEditable*"/>
8059             </parameter>
8060           </parameters>
8061         </callback>
8062       </field>
8063       <field name="remove_widget">
8064         <callback name="remove_widget">
8065           <return-value transfer-ownership="none">
8066             <type name="none" c:type="void"/>
8067           </return-value>
8068           <parameters>
8069             <parameter name="cell_editable" transfer-ownership="none">
8070               <type name="CellEditable" c:type="GtkCellEditable*"/>
8071             </parameter>
8072           </parameters>
8073         </callback>
8074       </field>
8075       <field name="start_editing">
8076         <callback name="start_editing">
8077           <return-value transfer-ownership="none">
8078             <type name="none" c:type="void"/>
8079           </return-value>
8080           <parameters>
8081             <parameter name="cell_editable" transfer-ownership="none">
8082               <type name="CellEditable" c:type="GtkCellEditable*"/>
8083             </parameter>
8084             <parameter name="event" transfer-ownership="none" allow-none="1">
8085               <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
8086               <type name="Gdk.Event" c:type="GdkEvent*"/>
8087             </parameter>
8088           </parameters>
8089         </callback>
8090       </field>
8091     </record>
8092     <interface name="CellLayout"
8093                c:symbol-prefix="cell_layout"
8094                c:type="GtkCellLayout"
8095                glib:type-name="GtkCellLayout"
8096                glib:get-type="gtk_cell_layout_get_type"
8097                glib:type-struct="CellLayoutIface">
8098       <virtual-method name="add_attribute"
8099                       invoker="add_attribute"
8100                       version="2.4">
8101         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @cell_layout. The @column is the
8102 column of the model to get a value from, and the @attribute is the
8103 parameter on @cell to be set from the value. So for example if column 2
8104 of the model contains strings, you could have the "text" attribute of a
8105 #GtkCellRendererText get its values from column 2.</doc>
8106         <return-value transfer-ownership="none">
8107           <type name="none" c:type="void"/>
8108         </return-value>
8109         <parameters>
8110           <parameter name="cell" transfer-ownership="none">
8111             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8112             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8113           </parameter>
8114           <parameter name="attribute" transfer-ownership="none">
8115             <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
8116             <type name="utf8" c:type="gchar*"/>
8117           </parameter>
8118           <parameter name="column" transfer-ownership="none">
8119             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
8120             <type name="gint" c:type="gint"/>
8121           </parameter>
8122         </parameters>
8123       </virtual-method>
8124       <virtual-method name="clear" invoker="clear" version="2.4">
8125         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on @cell_layout and
8126 removes all renderers from @cell_layout.</doc>
8127         <return-value transfer-ownership="none">
8128           <type name="none" c:type="void"/>
8129         </return-value>
8130       </virtual-method>
8131       <virtual-method name="clear_attributes"
8132                       invoker="clear_attributes"
8133                       version="2.4">
8134         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
8135 gtk_cell_layout_set_attributes().</doc>
8136         <return-value transfer-ownership="none">
8137           <type name="none" c:type="void"/>
8138         </return-value>
8139         <parameters>
8140           <parameter name="cell" transfer-ownership="none">
8141             <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
8142             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8143           </parameter>
8144         </parameters>
8145       </virtual-method>
8146       <virtual-method name="get_cells" invoker="get_cells" version="2.12">
8147         <doc xml:whitespace="preserve">Returns the cell renderers which have been added to @cell_layout.
8148 renderers has been newly allocated and should be freed with
8149 g_list_free() when no longer needed.</doc>
8150         <return-value transfer-ownership="container">
8151           <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
8152           <type name="GLib.List" c:type="GList*">
8153             <type name="CellRenderer"/>
8154           </type>
8155         </return-value>
8156       </virtual-method>
8157       <virtual-method name="pack_end" invoker="pack_end" version="2.4">
8158         <doc xml:whitespace="preserve">Adds the @cell to the end of @cell_layout. If @expand is %FALSE, then the
8159 divided evenly between cells for which @expand is %TRUE.
8160 Note that reusing the same cell renderer is not supported.</doc>
8161         <return-value transfer-ownership="none">
8162           <type name="none" c:type="void"/>
8163         </return-value>
8164         <parameters>
8165           <parameter name="cell" transfer-ownership="none">
8166             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8167             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8168           </parameter>
8169           <parameter name="expand" transfer-ownership="none">
8170             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8171             <type name="gboolean" c:type="gboolean"/>
8172           </parameter>
8173         </parameters>
8174       </virtual-method>
8175       <virtual-method name="pack_start" invoker="pack_start" version="2.4">
8176         <doc xml:whitespace="preserve">Packs the @cell into the beginning of @cell_layout. If @expand is %FALSE,
8177 then the @cell is allocated no more space than it needs. Any unused space
8178 is divided evenly between cells for which @expand is %TRUE.
8179 Note that reusing the same cell renderer is not supported.</doc>
8180         <return-value transfer-ownership="none">
8181           <type name="none" c:type="void"/>
8182         </return-value>
8183         <parameters>
8184           <parameter name="cell" transfer-ownership="none">
8185             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8186             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8187           </parameter>
8188           <parameter name="expand" transfer-ownership="none">
8189             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8190             <type name="gboolean" c:type="gboolean"/>
8191           </parameter>
8192         </parameters>
8193       </virtual-method>
8194       <virtual-method name="reorder" invoker="reorder" version="2.4">
8195         <doc xml:whitespace="preserve">Re-inserts @cell at @position. Note that @cell has already to be packed
8196 into @cell_layout for this to function properly.</doc>
8197         <return-value transfer-ownership="none">
8198           <type name="none" c:type="void"/>
8199         </return-value>
8200         <parameters>
8201           <parameter name="cell" transfer-ownership="none">
8202             <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
8203             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8204           </parameter>
8205           <parameter name="position" transfer-ownership="none">
8206             <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
8207             <type name="gint" c:type="gint"/>
8208           </parameter>
8209         </parameters>
8210       </virtual-method>
8211       <virtual-method name="set_cell_data_func"
8212                       invoker="set_cell_data_func"
8213                       version="2.4">
8214         <doc xml:whitespace="preserve">Sets the #GtkCellLayoutDataFunc to use for @cell_layout. This function
8215 is used instead of the standard attributes mapping for setting the
8216 column value, and should set the value of @cell_layout's cell renderer(s)
8217 as appropriate. @func may be %NULL to remove and older one.</doc>
8218         <return-value transfer-ownership="none">
8219           <type name="none" c:type="void"/>
8220         </return-value>
8221         <parameters>
8222           <parameter name="cell" transfer-ownership="none">
8223             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8224             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8225           </parameter>
8226           <parameter name="func"
8227                      transfer-ownership="none"
8228                      scope="notified"
8229                      closure="2"
8230                      destroy="3">
8231             <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
8232             <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
8233           </parameter>
8234           <parameter name="func_data" transfer-ownership="none">
8235             <doc xml:whitespace="preserve">The user data for @func.</doc>
8236             <type name="gpointer" c:type="gpointer"/>
8237           </parameter>
8238           <parameter name="destroy" transfer-ownership="none" scope="async">
8239             <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
8240             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
8241           </parameter>
8242         </parameters>
8243       </virtual-method>
8244       <method name="add_attribute"
8245               c:identifier="gtk_cell_layout_add_attribute"
8246               version="2.4">
8247         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @cell_layout. The @column is the
8248 column of the model to get a value from, and the @attribute is the
8249 parameter on @cell to be set from the value. So for example if column 2
8250 of the model contains strings, you could have the "text" attribute of a
8251 #GtkCellRendererText get its values from column 2.</doc>
8252         <return-value transfer-ownership="none">
8253           <type name="none" c:type="void"/>
8254         </return-value>
8255         <parameters>
8256           <parameter name="cell" transfer-ownership="none">
8257             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8258             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8259           </parameter>
8260           <parameter name="attribute" transfer-ownership="none">
8261             <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
8262             <type name="utf8" c:type="gchar*"/>
8263           </parameter>
8264           <parameter name="column" transfer-ownership="none">
8265             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
8266             <type name="gint" c:type="gint"/>
8267           </parameter>
8268         </parameters>
8269       </method>
8270       <method name="clear" c:identifier="gtk_cell_layout_clear" version="2.4">
8271         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on @cell_layout and
8272 removes all renderers from @cell_layout.</doc>
8273         <return-value transfer-ownership="none">
8274           <type name="none" c:type="void"/>
8275         </return-value>
8276       </method>
8277       <method name="clear_attributes"
8278               c:identifier="gtk_cell_layout_clear_attributes"
8279               version="2.4">
8280         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
8281 gtk_cell_layout_set_attributes().</doc>
8282         <return-value transfer-ownership="none">
8283           <type name="none" c:type="void"/>
8284         </return-value>
8285         <parameters>
8286           <parameter name="cell" transfer-ownership="none">
8287             <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
8288             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8289           </parameter>
8290         </parameters>
8291       </method>
8292       <method name="get_cells"
8293               c:identifier="gtk_cell_layout_get_cells"
8294               version="2.12">
8295         <doc xml:whitespace="preserve">Returns the cell renderers which have been added to @cell_layout.
8296 renderers has been newly allocated and should be freed with
8297 g_list_free() when no longer needed.</doc>
8298         <return-value transfer-ownership="container">
8299           <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
8300           <type name="GLib.List" c:type="GList*">
8301             <type name="CellRenderer"/>
8302           </type>
8303         </return-value>
8304       </method>
8305       <method name="pack_end"
8306               c:identifier="gtk_cell_layout_pack_end"
8307               version="2.4">
8308         <doc xml:whitespace="preserve">Adds the @cell to the end of @cell_layout. If @expand is %FALSE, then the
8309 divided evenly between cells for which @expand is %TRUE.
8310 Note that reusing the same cell renderer is not supported.</doc>
8311         <return-value transfer-ownership="none">
8312           <type name="none" c:type="void"/>
8313         </return-value>
8314         <parameters>
8315           <parameter name="cell" transfer-ownership="none">
8316             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8317             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8318           </parameter>
8319           <parameter name="expand" transfer-ownership="none">
8320             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8321             <type name="gboolean" c:type="gboolean"/>
8322           </parameter>
8323         </parameters>
8324       </method>
8325       <method name="pack_start"
8326               c:identifier="gtk_cell_layout_pack_start"
8327               version="2.4">
8328         <doc xml:whitespace="preserve">Packs the @cell into the beginning of @cell_layout. If @expand is %FALSE,
8329 then the @cell is allocated no more space than it needs. Any unused space
8330 is divided evenly between cells for which @expand is %TRUE.
8331 Note that reusing the same cell renderer is not supported.</doc>
8332         <return-value transfer-ownership="none">
8333           <type name="none" c:type="void"/>
8334         </return-value>
8335         <parameters>
8336           <parameter name="cell" transfer-ownership="none">
8337             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8338             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8339           </parameter>
8340           <parameter name="expand" transfer-ownership="none">
8341             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8342             <type name="gboolean" c:type="gboolean"/>
8343           </parameter>
8344         </parameters>
8345       </method>
8346       <method name="reorder"
8347               c:identifier="gtk_cell_layout_reorder"
8348               version="2.4">
8349         <doc xml:whitespace="preserve">Re-inserts @cell at @position. Note that @cell has already to be packed
8350 into @cell_layout for this to function properly.</doc>
8351         <return-value transfer-ownership="none">
8352           <type name="none" c:type="void"/>
8353         </return-value>
8354         <parameters>
8355           <parameter name="cell" transfer-ownership="none">
8356             <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
8357             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8358           </parameter>
8359           <parameter name="position" transfer-ownership="none">
8360             <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
8361             <type name="gint" c:type="gint"/>
8362           </parameter>
8363         </parameters>
8364       </method>
8365       <method name="set_attributes"
8366               c:identifier="gtk_cell_layout_set_attributes"
8367               version="2.4"
8368               introspectable="0">
8369         <doc xml:whitespace="preserve">Sets the attributes in list as the attributes of @cell_layout. The
8370 attributes should be in attribute/column order, as in
8371 gtk_cell_layout_add_attribute(). All existing attributes are removed, and
8372 replaced with the new attributes.</doc>
8373         <return-value transfer-ownership="none">
8374           <type name="none" c:type="void"/>
8375         </return-value>
8376         <parameters>
8377           <parameter name="cell" transfer-ownership="none">
8378             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8379             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8380           </parameter>
8381           <parameter transfer-ownership="none">
8382             <varargs>
8383             </varargs>
8384           </parameter>
8385         </parameters>
8386       </method>
8387       <method name="set_cell_data_func"
8388               c:identifier="gtk_cell_layout_set_cell_data_func"
8389               version="2.4">
8390         <doc xml:whitespace="preserve">Sets the #GtkCellLayoutDataFunc to use for @cell_layout. This function
8391 is used instead of the standard attributes mapping for setting the
8392 column value, and should set the value of @cell_layout's cell renderer(s)
8393 as appropriate. @func may be %NULL to remove and older one.</doc>
8394         <return-value transfer-ownership="none">
8395           <type name="none" c:type="void"/>
8396         </return-value>
8397         <parameters>
8398           <parameter name="cell" transfer-ownership="none">
8399             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8400             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8401           </parameter>
8402           <parameter name="func"
8403                      transfer-ownership="none"
8404                      scope="notified"
8405                      closure="2"
8406                      destroy="3">
8407             <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
8408             <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
8409           </parameter>
8410           <parameter name="func_data" transfer-ownership="none">
8411             <doc xml:whitespace="preserve">The user data for @func.</doc>
8412             <type name="gpointer" c:type="gpointer"/>
8413           </parameter>
8414           <parameter name="destroy" transfer-ownership="none" scope="async">
8415             <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
8416             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
8417           </parameter>
8418         </parameters>
8419       </method>
8420     </interface>
8421     <callback name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc">
8422       <return-value transfer-ownership="none">
8423         <type name="none" c:type="void"/>
8424       </return-value>
8425       <parameters>
8426         <parameter name="cell_layout" transfer-ownership="none">
8427           <type name="CellLayout" c:type="GtkCellLayout*"/>
8428         </parameter>
8429         <parameter name="cell" transfer-ownership="none">
8430           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8431         </parameter>
8432         <parameter name="tree_model" transfer-ownership="none">
8433           <type name="TreeModel" c:type="GtkTreeModel*"/>
8434         </parameter>
8435         <parameter name="iter" transfer-ownership="none">
8436           <type name="TreeIter" c:type="GtkTreeIter*"/>
8437         </parameter>
8438         <parameter name="data" transfer-ownership="none">
8439           <type name="gpointer" c:type="gpointer"/>
8440         </parameter>
8441       </parameters>
8442     </callback>
8443     <record name="CellLayoutIface"
8444             c:type="GtkCellLayoutIface"
8445             glib:is-gtype-struct-for="CellLayout">
8446       <field name="g_iface">
8447         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
8448       </field>
8449       <field name="pack_start">
8450         <callback name="pack_start">
8451           <return-value transfer-ownership="none">
8452             <type name="none" c:type="void"/>
8453           </return-value>
8454           <parameters>
8455             <parameter name="cell_layout" transfer-ownership="none">
8456               <type name="CellLayout" c:type="GtkCellLayout*"/>
8457             </parameter>
8458             <parameter name="cell" transfer-ownership="none">
8459               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8460               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8461             </parameter>
8462             <parameter name="expand" transfer-ownership="none">
8463               <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8464               <type name="gboolean" c:type="gboolean"/>
8465             </parameter>
8466           </parameters>
8467         </callback>
8468       </field>
8469       <field name="pack_end">
8470         <callback name="pack_end">
8471           <return-value transfer-ownership="none">
8472             <type name="none" c:type="void"/>
8473           </return-value>
8474           <parameters>
8475             <parameter name="cell_layout" transfer-ownership="none">
8476               <type name="CellLayout" c:type="GtkCellLayout*"/>
8477             </parameter>
8478             <parameter name="cell" transfer-ownership="none">
8479               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8480               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8481             </parameter>
8482             <parameter name="expand" transfer-ownership="none">
8483               <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
8484               <type name="gboolean" c:type="gboolean"/>
8485             </parameter>
8486           </parameters>
8487         </callback>
8488       </field>
8489       <field name="clear">
8490         <callback name="clear">
8491           <return-value transfer-ownership="none">
8492             <type name="none" c:type="void"/>
8493           </return-value>
8494           <parameters>
8495             <parameter name="cell_layout" transfer-ownership="none">
8496               <type name="CellLayout" c:type="GtkCellLayout*"/>
8497             </parameter>
8498           </parameters>
8499         </callback>
8500       </field>
8501       <field name="add_attribute">
8502         <callback name="add_attribute">
8503           <return-value transfer-ownership="none">
8504             <type name="none" c:type="void"/>
8505           </return-value>
8506           <parameters>
8507             <parameter name="cell_layout" transfer-ownership="none">
8508               <type name="CellLayout" c:type="GtkCellLayout*"/>
8509             </parameter>
8510             <parameter name="cell" transfer-ownership="none">
8511               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8512               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8513             </parameter>
8514             <parameter name="attribute" transfer-ownership="none">
8515               <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
8516               <type name="utf8" c:type="gchar*"/>
8517             </parameter>
8518             <parameter name="column" transfer-ownership="none">
8519               <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
8520               <type name="gint" c:type="gint"/>
8521             </parameter>
8522           </parameters>
8523         </callback>
8524       </field>
8525       <field name="set_cell_data_func">
8526         <callback name="set_cell_data_func">
8527           <return-value transfer-ownership="none">
8528             <type name="none" c:type="void"/>
8529           </return-value>
8530           <parameters>
8531             <parameter name="cell_layout" transfer-ownership="none">
8532               <type name="CellLayout" c:type="GtkCellLayout*"/>
8533             </parameter>
8534             <parameter name="cell" transfer-ownership="none">
8535               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
8536               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8537             </parameter>
8538             <parameter name="func"
8539                        transfer-ownership="none"
8540                        scope="notified"
8541                        closure="3"
8542                        destroy="4">
8543               <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
8544               <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
8545             </parameter>
8546             <parameter name="func_data" transfer-ownership="none">
8547               <doc xml:whitespace="preserve">The user data for @func.</doc>
8548               <type name="gpointer" c:type="gpointer"/>
8549             </parameter>
8550             <parameter name="destroy" transfer-ownership="none" scope="async">
8551               <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
8552               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
8553             </parameter>
8554           </parameters>
8555         </callback>
8556       </field>
8557       <field name="clear_attributes">
8558         <callback name="clear_attributes">
8559           <return-value transfer-ownership="none">
8560             <type name="none" c:type="void"/>
8561           </return-value>
8562           <parameters>
8563             <parameter name="cell_layout" transfer-ownership="none">
8564               <type name="CellLayout" c:type="GtkCellLayout*"/>
8565             </parameter>
8566             <parameter name="cell" transfer-ownership="none">
8567               <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
8568               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8569             </parameter>
8570           </parameters>
8571         </callback>
8572       </field>
8573       <field name="reorder">
8574         <callback name="reorder">
8575           <return-value transfer-ownership="none">
8576             <type name="none" c:type="void"/>
8577           </return-value>
8578           <parameters>
8579             <parameter name="cell_layout" transfer-ownership="none">
8580               <type name="CellLayout" c:type="GtkCellLayout*"/>
8581             </parameter>
8582             <parameter name="cell" transfer-ownership="none">
8583               <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
8584               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
8585             </parameter>
8586             <parameter name="position" transfer-ownership="none">
8587               <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
8588               <type name="gint" c:type="gint"/>
8589             </parameter>
8590           </parameters>
8591         </callback>
8592       </field>
8593       <field name="get_cells">
8594         <callback name="get_cells">
8595           <return-value transfer-ownership="container">
8596             <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
8597             <type name="GLib.List" c:type="GList*">
8598               <type name="CellRenderer"/>
8599             </type>
8600           </return-value>
8601           <parameters>
8602             <parameter name="cell_layout" transfer-ownership="none">
8603               <type name="CellLayout" c:type="GtkCellLayout*"/>
8604             </parameter>
8605           </parameters>
8606         </callback>
8607       </field>
8608     </record>
8609     <class name="CellRenderer"
8610            c:symbol-prefix="cell_renderer"
8611            c:type="GtkCellRenderer"
8612            parent="Object"
8613            abstract="1"
8614            glib:type-name="GtkCellRenderer"
8615            glib:get-type="gtk_cell_renderer_get_type"
8616            glib:type-struct="CellRendererClass">
8617       <implements name="CellSizeRequest"/>
8618       <virtual-method name="activate" invoker="activate">
8619         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.  
8620 Some cell renderers may use events; for example, #GtkCellRendererToggle 
8621 toggles when it gets a mouse click.</doc>
8622         <return-value transfer-ownership="none">
8623           <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
8624           <type name="gboolean" c:type="gboolean"/>
8625         </return-value>
8626         <parameters>
8627           <parameter name="event" transfer-ownership="none">
8628             <doc xml:whitespace="preserve">a #GdkEvent</doc>
8629             <type name="Gdk.Event" c:type="GdkEvent*"/>
8630           </parameter>
8631           <parameter name="widget" transfer-ownership="none">
8632             <doc xml:whitespace="preserve">widget that received the event</doc>
8633             <type name="Widget" c:type="GtkWidget*"/>
8634           </parameter>
8635           <parameter name="path" transfer-ownership="none">
8636             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
8637             <type name="utf8" c:type="gchar*"/>
8638           </parameter>
8639           <parameter name="background_area" transfer-ownership="none">
8640             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
8641             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8642           </parameter>
8643           <parameter name="cell_area" transfer-ownership="none">
8644             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
8645             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8646           </parameter>
8647           <parameter name="flags" transfer-ownership="none">
8648             <doc xml:whitespace="preserve">render flags</doc>
8649             <type name="CellRendererState" c:type="GtkCellRendererState"/>
8650           </parameter>
8651         </parameters>
8652       </virtual-method>
8653       <virtual-method name="get_size"
8654                       invoker="get_size"
8655                       deprecated="Use gtk_cell_size_request_get_size() instead."
8656                       deprecated-version="3.0">
8657         <doc xml:whitespace="preserve">Obtains the width and height needed to render the cell. Used by view 
8658 widgets to determine the appropriate size for the cell_area passed to
8659 gtk_cell_renderer_render().  If @cell_area is not %NULL, fills in the
8660 x and y offsets (if set) of the cell relative to this location. 
8661 Please note that the values set in @width and @height, as well as those 
8662 in @x_offset and @y_offset are inclusive of the xpad and ypad properties.</doc>
8663         <return-value transfer-ownership="none">
8664           <type name="none" c:type="void"/>
8665         </return-value>
8666         <parameters>
8667           <parameter name="widget" transfer-ownership="none">
8668             <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
8669             <type name="Widget" c:type="GtkWidget*"/>
8670           </parameter>
8671           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
8672             <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
8673             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8674           </parameter>
8675           <parameter name="x_offset" transfer-ownership="none" allow-none="1">
8676             <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
8677             <type name="gint" c:type="gint*"/>
8678           </parameter>
8679           <parameter name="y_offset" transfer-ownership="none" allow-none="1">
8680             <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
8681             <type name="gint" c:type="gint*"/>
8682           </parameter>
8683           <parameter name="width" transfer-ownership="none" allow-none="1">
8684             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
8685             <type name="gint" c:type="gint*"/>
8686           </parameter>
8687           <parameter name="height" transfer-ownership="none" allow-none="1">
8688             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
8689             <type name="gint" c:type="gint*"/>
8690           </parameter>
8691         </parameters>
8692       </virtual-method>
8693       <virtual-method name="render" invoker="render">
8694         <doc xml:whitespace="preserve">Invokes the virtual render function of the #GtkCellRenderer. The three
8695 passed-in rectangles are areas of @window. Most renderers will draw within
8696 should be honored with respect to @cell_area. @background_area includes the
8697 blank space around the cell, and also the area containing the tree expander;
8698 so the @background_area rectangles for all cells tile to cover the entire</doc>
8699         <return-value transfer-ownership="none">
8700           <type name="none" c:type="void"/>
8701         </return-value>
8702         <parameters>
8703           <parameter name="window" transfer-ownership="none">
8704             <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
8705             <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
8706           </parameter>
8707           <parameter name="widget" transfer-ownership="none">
8708             <doc xml:whitespace="preserve">the widget owning @window</doc>
8709             <type name="Widget" c:type="GtkWidget*"/>
8710           </parameter>
8711           <parameter name="background_area" transfer-ownership="none">
8712             <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
8713             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8714           </parameter>
8715           <parameter name="cell_area" transfer-ownership="none">
8716             <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
8717             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8718           </parameter>
8719           <parameter name="expose_area" transfer-ownership="none">
8720             <doc xml:whitespace="preserve">area that actually needs updating</doc>
8721             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8722           </parameter>
8723           <parameter name="flags" transfer-ownership="none">
8724             <doc xml:whitespace="preserve">flags that affect rendering</doc>
8725             <type name="CellRendererState" c:type="GtkCellRendererState"/>
8726           </parameter>
8727         </parameters>
8728       </virtual-method>
8729       <virtual-method name="start_editing" invoker="start_editing">
8730         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.</doc>
8731         <return-value transfer-ownership="full">
8732           <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
8733           <type name="CellEditable" c:type="GtkCellEditable*"/>
8734         </return-value>
8735         <parameters>
8736           <parameter name="event" transfer-ownership="none">
8737             <doc xml:whitespace="preserve">a #GdkEvent</doc>
8738             <type name="Gdk.Event" c:type="GdkEvent*"/>
8739           </parameter>
8740           <parameter name="widget" transfer-ownership="none">
8741             <doc xml:whitespace="preserve">widget that received the event</doc>
8742             <type name="Widget" c:type="GtkWidget*"/>
8743           </parameter>
8744           <parameter name="path" transfer-ownership="none">
8745             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
8746             <type name="utf8" c:type="gchar*"/>
8747           </parameter>
8748           <parameter name="background_area" transfer-ownership="none">
8749             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
8750             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8751           </parameter>
8752           <parameter name="cell_area" transfer-ownership="none">
8753             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
8754             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8755           </parameter>
8756           <parameter name="flags" transfer-ownership="none">
8757             <doc xml:whitespace="preserve">render flags</doc>
8758             <type name="CellRendererState" c:type="GtkCellRendererState"/>
8759           </parameter>
8760         </parameters>
8761       </virtual-method>
8762       <method name="activate" c:identifier="gtk_cell_renderer_activate">
8763         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.  
8764 Some cell renderers may use events; for example, #GtkCellRendererToggle 
8765 toggles when it gets a mouse click.</doc>
8766         <return-value transfer-ownership="none">
8767           <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
8768           <type name="gboolean" c:type="gboolean"/>
8769         </return-value>
8770         <parameters>
8771           <parameter name="event" transfer-ownership="none">
8772             <doc xml:whitespace="preserve">a #GdkEvent</doc>
8773             <type name="Gdk.Event" c:type="GdkEvent*"/>
8774           </parameter>
8775           <parameter name="widget" transfer-ownership="none">
8776             <doc xml:whitespace="preserve">widget that received the event</doc>
8777             <type name="Widget" c:type="GtkWidget*"/>
8778           </parameter>
8779           <parameter name="path" transfer-ownership="none">
8780             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
8781             <type name="utf8" c:type="gchar*"/>
8782           </parameter>
8783           <parameter name="background_area" transfer-ownership="none">
8784             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
8785             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8786           </parameter>
8787           <parameter name="cell_area" transfer-ownership="none">
8788             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
8789             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8790           </parameter>
8791           <parameter name="flags" transfer-ownership="none">
8792             <doc xml:whitespace="preserve">render flags</doc>
8793             <type name="CellRendererState" c:type="GtkCellRendererState"/>
8794           </parameter>
8795         </parameters>
8796       </method>
8797       <method name="get_alignment"
8798               c:identifier="gtk_cell_renderer_get_alignment"
8799               version="2.18">
8800         <doc xml:whitespace="preserve">Fills in @xalign and @yalign with the appropriate values of @cell.</doc>
8801         <return-value transfer-ownership="none">
8802           <type name="none" c:type="void"/>
8803         </return-value>
8804         <parameters>
8805           <parameter name="xalign" transfer-ownership="none" allow-none="1">
8806             <doc xml:whitespace="preserve">location to fill in with the x alignment of the cell, or %NULL</doc>
8807             <type name="gfloat" c:type="gfloat*"/>
8808           </parameter>
8809           <parameter name="yalign" transfer-ownership="none" allow-none="1">
8810             <doc xml:whitespace="preserve">location to fill in with the y alignment of the cell, or %NULL</doc>
8811             <type name="gfloat" c:type="gfloat*"/>
8812           </parameter>
8813         </parameters>
8814       </method>
8815       <method name="get_fixed_size"
8816               c:identifier="gtk_cell_renderer_get_fixed_size">
8817         <doc xml:whitespace="preserve">Fills in @width and @height with the appropriate size of @cell.</doc>
8818         <return-value transfer-ownership="none">
8819           <type name="none" c:type="void"/>
8820         </return-value>
8821         <parameters>
8822           <parameter name="width" transfer-ownership="none" allow-none="1">
8823             <doc xml:whitespace="preserve">location to fill in with the fixed width of the cell, or %NULL</doc>
8824             <type name="gint" c:type="gint*"/>
8825           </parameter>
8826           <parameter name="height" transfer-ownership="none" allow-none="1">
8827             <doc xml:whitespace="preserve">location to fill in with the fixed height of the cell, or %NULL</doc>
8828             <type name="gint" c:type="gint*"/>
8829           </parameter>
8830         </parameters>
8831       </method>
8832       <method name="get_padding"
8833               c:identifier="gtk_cell_renderer_get_padding"
8834               version="2.18">
8835         <doc xml:whitespace="preserve">Fills in @xpad and @ypad with the appropriate values of @cell.</doc>
8836         <return-value transfer-ownership="none">
8837           <type name="none" c:type="void"/>
8838         </return-value>
8839         <parameters>
8840           <parameter name="xpad" transfer-ownership="none" allow-none="1">
8841             <doc xml:whitespace="preserve">location to fill in with the x padding of the cell, or %NULL</doc>
8842             <type name="gint" c:type="gint*"/>
8843           </parameter>
8844           <parameter name="ypad" transfer-ownership="none" allow-none="1">
8845             <doc xml:whitespace="preserve">location to fill in with the y padding of the cell, or %NULL</doc>
8846             <type name="gint" c:type="gint*"/>
8847           </parameter>
8848         </parameters>
8849       </method>
8850       <method name="get_sensitive"
8851               c:identifier="gtk_cell_renderer_get_sensitive"
8852               version="2.18">
8853         <doc xml:whitespace="preserve">Returns the cell renderer's sensitivity.</doc>
8854         <return-value transfer-ownership="none">
8855           <doc xml:whitespace="preserve">%TRUE if the cell renderer is sensitive</doc>
8856           <type name="gboolean" c:type="gboolean"/>
8857         </return-value>
8858       </method>
8859       <method name="get_size"
8860               c:identifier="gtk_cell_renderer_get_size"
8861               deprecated="Use gtk_cell_size_request_get_size() instead."
8862               deprecated-version="3.0">
8863         <doc xml:whitespace="preserve">Obtains the width and height needed to render the cell. Used by view 
8864 widgets to determine the appropriate size for the cell_area passed to
8865 gtk_cell_renderer_render().  If @cell_area is not %NULL, fills in the
8866 x and y offsets (if set) of the cell relative to this location. 
8867 Please note that the values set in @width and @height, as well as those 
8868 in @x_offset and @y_offset are inclusive of the xpad and ypad properties.</doc>
8869         <return-value transfer-ownership="none">
8870           <type name="none" c:type="void"/>
8871         </return-value>
8872         <parameters>
8873           <parameter name="widget" transfer-ownership="none">
8874             <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
8875             <type name="Widget" c:type="GtkWidget*"/>
8876           </parameter>
8877           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
8878             <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
8879             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8880           </parameter>
8881           <parameter name="x_offset" transfer-ownership="none" allow-none="1">
8882             <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
8883             <type name="gint" c:type="gint*"/>
8884           </parameter>
8885           <parameter name="y_offset" transfer-ownership="none" allow-none="1">
8886             <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
8887             <type name="gint" c:type="gint*"/>
8888           </parameter>
8889           <parameter name="width" transfer-ownership="none" allow-none="1">
8890             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
8891             <type name="gint" c:type="gint*"/>
8892           </parameter>
8893           <parameter name="height" transfer-ownership="none" allow-none="1">
8894             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
8895             <type name="gint" c:type="gint*"/>
8896           </parameter>
8897         </parameters>
8898       </method>
8899       <method name="get_visible"
8900               c:identifier="gtk_cell_renderer_get_visible"
8901               version="2.18">
8902         <doc xml:whitespace="preserve">Returns the cell renderer's visibility.</doc>
8903         <return-value transfer-ownership="none">
8904           <doc xml:whitespace="preserve">%TRUE if the cell renderer is visible</doc>
8905           <type name="gboolean" c:type="gboolean"/>
8906         </return-value>
8907       </method>
8908       <method name="render" c:identifier="gtk_cell_renderer_render">
8909         <doc xml:whitespace="preserve">Invokes the virtual render function of the #GtkCellRenderer. The three
8910 passed-in rectangles are areas of @window. Most renderers will draw within
8911 should be honored with respect to @cell_area. @background_area includes the
8912 blank space around the cell, and also the area containing the tree expander;
8913 so the @background_area rectangles for all cells tile to cover the entire</doc>
8914         <return-value transfer-ownership="none">
8915           <type name="none" c:type="void"/>
8916         </return-value>
8917         <parameters>
8918           <parameter name="window" transfer-ownership="none">
8919             <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
8920             <type name="Gdk.Window" c:type="GdkWindow*"/>
8921           </parameter>
8922           <parameter name="widget" transfer-ownership="none">
8923             <doc xml:whitespace="preserve">the widget owning @window</doc>
8924             <type name="Widget" c:type="GtkWidget*"/>
8925           </parameter>
8926           <parameter name="background_area" transfer-ownership="none">
8927             <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
8928             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8929           </parameter>
8930           <parameter name="cell_area" transfer-ownership="none">
8931             <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
8932             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8933           </parameter>
8934           <parameter name="expose_area" transfer-ownership="none">
8935             <doc xml:whitespace="preserve">area that actually needs updating</doc>
8936             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
8937           </parameter>
8938           <parameter name="flags" transfer-ownership="none">
8939             <doc xml:whitespace="preserve">flags that affect rendering</doc>
8940             <type name="CellRendererState" c:type="GtkCellRendererState"/>
8941           </parameter>
8942         </parameters>
8943       </method>
8944       <method name="set_alignment"
8945               c:identifier="gtk_cell_renderer_set_alignment"
8946               version="2.18">
8947         <doc xml:whitespace="preserve">Sets the renderer's alignment within its available space.</doc>
8948         <return-value transfer-ownership="none">
8949           <type name="none" c:type="void"/>
8950         </return-value>
8951         <parameters>
8952           <parameter name="xalign" transfer-ownership="none">
8953             <doc xml:whitespace="preserve">the x alignment of the cell renderer</doc>
8954             <type name="gfloat" c:type="gfloat"/>
8955           </parameter>
8956           <parameter name="yalign" transfer-ownership="none">
8957             <doc xml:whitespace="preserve">the y alignment of the cell renderer</doc>
8958             <type name="gfloat" c:type="gfloat"/>
8959           </parameter>
8960         </parameters>
8961       </method>
8962       <method name="set_fixed_size"
8963               c:identifier="gtk_cell_renderer_set_fixed_size">
8964         <doc xml:whitespace="preserve">Sets the renderer size to be explicit, independent of the properties set.</doc>
8965         <return-value transfer-ownership="none">
8966           <type name="none" c:type="void"/>
8967         </return-value>
8968         <parameters>
8969           <parameter name="width" transfer-ownership="none">
8970             <doc xml:whitespace="preserve">the width of the cell renderer, or -1</doc>
8971             <type name="gint" c:type="gint"/>
8972           </parameter>
8973           <parameter name="height" transfer-ownership="none">
8974             <doc xml:whitespace="preserve">the height of the cell renderer, or -1</doc>
8975             <type name="gint" c:type="gint"/>
8976           </parameter>
8977         </parameters>
8978       </method>
8979       <method name="set_padding"
8980               c:identifier="gtk_cell_renderer_set_padding"
8981               version="2.18">
8982         <doc xml:whitespace="preserve">Sets the renderer's padding.</doc>
8983         <return-value transfer-ownership="none">
8984           <type name="none" c:type="void"/>
8985         </return-value>
8986         <parameters>
8987           <parameter name="xpad" transfer-ownership="none">
8988             <doc xml:whitespace="preserve">the x padding of the cell renderer</doc>
8989             <type name="gint" c:type="gint"/>
8990           </parameter>
8991           <parameter name="ypad" transfer-ownership="none">
8992             <doc xml:whitespace="preserve">the y padding of the cell renderer</doc>
8993             <type name="gint" c:type="gint"/>
8994           </parameter>
8995         </parameters>
8996       </method>
8997       <method name="set_sensitive"
8998               c:identifier="gtk_cell_renderer_set_sensitive"
8999               version="2.18">
9000         <doc xml:whitespace="preserve">Sets the cell renderer's sensitivity.</doc>
9001         <return-value transfer-ownership="none">
9002           <type name="none" c:type="void"/>
9003         </return-value>
9004         <parameters>
9005           <parameter name="sensitive" transfer-ownership="none">
9006             <doc xml:whitespace="preserve">the sensitivity of the cell</doc>
9007             <type name="gboolean" c:type="gboolean"/>
9008           </parameter>
9009         </parameters>
9010       </method>
9011       <method name="set_visible"
9012               c:identifier="gtk_cell_renderer_set_visible"
9013               version="2.18">
9014         <doc xml:whitespace="preserve">Sets the cell renderer's visibility.</doc>
9015         <return-value transfer-ownership="none">
9016           <type name="none" c:type="void"/>
9017         </return-value>
9018         <parameters>
9019           <parameter name="visible" transfer-ownership="none">
9020             <doc xml:whitespace="preserve">the visibility of the cell</doc>
9021             <type name="gboolean" c:type="gboolean"/>
9022           </parameter>
9023         </parameters>
9024       </method>
9025       <method name="start_editing"
9026               c:identifier="gtk_cell_renderer_start_editing">
9027         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.</doc>
9028         <return-value transfer-ownership="full">
9029           <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
9030           <type name="CellEditable" c:type="GtkCellEditable*"/>
9031         </return-value>
9032         <parameters>
9033           <parameter name="event" transfer-ownership="none">
9034             <doc xml:whitespace="preserve">a #GdkEvent</doc>
9035             <type name="Gdk.Event" c:type="GdkEvent*"/>
9036           </parameter>
9037           <parameter name="widget" transfer-ownership="none">
9038             <doc xml:whitespace="preserve">widget that received the event</doc>
9039             <type name="Widget" c:type="GtkWidget*"/>
9040           </parameter>
9041           <parameter name="path" transfer-ownership="none">
9042             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
9043             <type name="utf8" c:type="gchar*"/>
9044           </parameter>
9045           <parameter name="background_area" transfer-ownership="none">
9046             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
9047             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9048           </parameter>
9049           <parameter name="cell_area" transfer-ownership="none">
9050             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
9051             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9052           </parameter>
9053           <parameter name="flags" transfer-ownership="none">
9054             <doc xml:whitespace="preserve">render flags</doc>
9055             <type name="CellRendererState" c:type="GtkCellRendererState"/>
9056           </parameter>
9057         </parameters>
9058       </method>
9059       <method name="stop_editing"
9060               c:identifier="gtk_cell_renderer_stop_editing"
9061               version="2.6">
9062         <doc xml:whitespace="preserve">Informs the cell renderer that the editing is stopped.
9063 If @canceled is %TRUE, the cell renderer will emit the 
9064 #GtkCellRenderer::editing-canceled signal. 
9065 This function should be called by cell renderer implementations 
9066 in response to the #GtkCellEditable::editing-done signal of 
9067 #GtkCellEditable.</doc>
9068         <return-value transfer-ownership="none">
9069           <type name="none" c:type="void"/>
9070         </return-value>
9071         <parameters>
9072           <parameter name="canceled" transfer-ownership="none">
9073             <doc xml:whitespace="preserve">%TRUE if the editing has been canceled</doc>
9074             <type name="gboolean" c:type="gboolean"/>
9075           </parameter>
9076         </parameters>
9077       </method>
9078       <property name="cell-background"
9079                 readable="0"
9080                 writable="1"
9081                 transfer-ownership="none">
9082         <type name="utf8"/>
9083       </property>
9084       <property name="cell-background-gdk"
9085                 writable="1"
9086                 transfer-ownership="none">
9087         <type name="Gdk.Color"/>
9088       </property>
9089       <property name="cell-background-set"
9090                 writable="1"
9091                 transfer-ownership="none">
9092         <type name="gboolean"/>
9093       </property>
9094       <property name="editing" transfer-ownership="none">
9095         <type name="gboolean"/>
9096       </property>
9097       <property name="height" writable="1" transfer-ownership="none">
9098         <type name="gint"/>
9099       </property>
9100       <property name="is-expanded" writable="1" transfer-ownership="none">
9101         <type name="gboolean"/>
9102       </property>
9103       <property name="is-expander" writable="1" transfer-ownership="none">
9104         <type name="gboolean"/>
9105       </property>
9106       <property name="mode" writable="1" transfer-ownership="none">
9107         <type name="CellRendererMode"/>
9108       </property>
9109       <property name="sensitive" writable="1" transfer-ownership="none">
9110         <type name="gboolean"/>
9111       </property>
9112       <property name="visible" writable="1" transfer-ownership="none">
9113         <type name="gboolean"/>
9114       </property>
9115       <property name="width" writable="1" transfer-ownership="none">
9116         <type name="gint"/>
9117       </property>
9118       <property name="xalign" writable="1" transfer-ownership="none">
9119         <type name="gfloat"/>
9120       </property>
9121       <property name="xpad" writable="1" transfer-ownership="none">
9122         <type name="guint"/>
9123       </property>
9124       <property name="yalign" writable="1" transfer-ownership="none">
9125         <type name="gfloat"/>
9126       </property>
9127       <property name="ypad" writable="1" transfer-ownership="none">
9128         <type name="guint"/>
9129       </property>
9130       <field name="parent">
9131         <type name="Object" c:type="GtkObject"/>
9132       </field>
9133       <field name="priv" readable="0" private="1">
9134         <type name="CellRendererPrivate" c:type="GtkCellRendererPrivate*"/>
9135       </field>
9136       <glib:signal name="editing-canceled" version="2.4">
9137         <doc xml:whitespace="preserve">This signal gets emitted when the user cancels the process of editing a
9138 cell.  For example, an editable cell renderer could be written to cancel
9139 editing when the user presses Escape.</doc>
9140         <return-value transfer-ownership="none">
9141           <type name="none"/>
9142         </return-value>
9143       </glib:signal>
9144       <glib:signal name="editing-started" version="2.6">
9145         <doc xml:whitespace="preserve">This signal gets emitted when a cell starts to be edited.
9146 The intended use of this signal is to do special setup
9147 on @editable, e.g. adding a #GtkEntryCompletion or setting
9148 up additional columns in a #GtkComboBox.
9149 Note that GTK+ doesn't guarantee that cell renderers will
9150 continue to use the same kind of widget for editing in future
9151 releases, therefore you should check the type of @editable
9152 before doing any specific setup, as in the following example:
9153 |[
9154 static void
9155 text_editing_started (GtkCellRenderer *cell,
9156 GtkCellEditable *editable,
9157 const gchar     *path,
9158 gpointer         data)
9159 {
9160 if (GTK_IS_ENTRY (editable)) 
9161 {
9162 GtkEntry *entry = GTK_ENTRY (editable);
9163 /&amp;ast; ... create a GtkEntryCompletion &amp;ast;/
9164 gtk_entry_set_completion (entry, completion);
9165 }
9166 }
9167 ]|</doc>
9168         <return-value transfer-ownership="none">
9169           <type name="none"/>
9170         </return-value>
9171         <parameters>
9172           <parameter name="object" transfer-ownership="none">
9173             <doc xml:whitespace="preserve">the #GtkCellEditable</doc>
9174             <type name="CellEditable"/>
9175           </parameter>
9176           <parameter name="p0" transfer-ownership="none">
9177             <doc xml:whitespace="preserve">the path identifying the edited cell</doc>
9178             <type name="utf8"/>
9179           </parameter>
9180         </parameters>
9181       </glib:signal>
9182     </class>
9183     <class name="CellRendererAccel"
9184            c:symbol-prefix="cell_renderer_accel"
9185            c:type="GtkCellRendererAccel"
9186            parent="CellRendererText"
9187            glib:type-name="GtkCellRendererAccel"
9188            glib:get-type="gtk_cell_renderer_accel_get_type"
9189            glib:type-struct="CellRendererAccelClass">
9190       <implements name="CellSizeRequest"/>
9191       <constructor name="new"
9192                    c:identifier="gtk_cell_renderer_accel_new"
9193                    version="2.10">
9194         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererAccel.</doc>
9195         <return-value transfer-ownership="none">
9196           <doc xml:whitespace="preserve">the new cell renderer</doc>
9197           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9198         </return-value>
9199       </constructor>
9200       <property name="accel-key"
9201                 version="2.10"
9202                 writable="1"
9203                 transfer-ownership="none">
9204         <doc xml:whitespace="preserve">The keyval of the accelerator.</doc>
9205         <type name="guint"/>
9206       </property>
9207       <property name="accel-mode"
9208                 version="2.10"
9209                 writable="1"
9210                 transfer-ownership="none">
9211         <doc xml:whitespace="preserve">Determines if the edited accelerators are GTK+ accelerators. If
9212 they are, consumed modifiers are suppressed, only accelerators
9213 accepted by GTK+ are allowed, and the accelerators are rendered
9214 in the same way as they are in menus.</doc>
9215         <type name="CellRendererAccelMode"/>
9216       </property>
9217       <property name="accel-mods"
9218                 version="2.10"
9219                 writable="1"
9220                 transfer-ownership="none">
9221         <doc xml:whitespace="preserve">The modifier mask of the accelerator.</doc>
9222         <type name="Gdk.ModifierType"/>
9223       </property>
9224       <property name="keycode"
9225                 version="2.10"
9226                 writable="1"
9227                 transfer-ownership="none">
9228         <doc xml:whitespace="preserve">The hardware keycode of the accelerator. Note that the hardware keycode is
9229 only relevant if the key does not have a keyval. Normally, the keyboard
9230 configuration should assign keyvals to all keys.</doc>
9231         <type name="guint"/>
9232       </property>
9233       <field name="parent">
9234         <type name="CellRendererText" c:type="GtkCellRendererText"/>
9235       </field>
9236       <field name="priv">
9237         <type name="CellRendererAccelPrivate"
9238               c:type="GtkCellRendererAccelPrivate*"/>
9239       </field>
9240       <glib:signal name="accel-cleared" version="2.10">
9241         <doc xml:whitespace="preserve">Gets emitted when the user has removed the accelerator.</doc>
9242         <return-value transfer-ownership="none">
9243           <type name="none"/>
9244         </return-value>
9245         <parameters>
9246           <parameter name="object" transfer-ownership="none">
9247             <doc xml:whitespace="preserve">the path identifying the row of the edited cell</doc>
9248             <type name="utf8"/>
9249           </parameter>
9250         </parameters>
9251       </glib:signal>
9252       <glib:signal name="accel-edited" version="2.10">
9253         <doc xml:whitespace="preserve">Gets emitted when the user has selected a new accelerator.</doc>
9254         <return-value transfer-ownership="none">
9255           <type name="none"/>
9256         </return-value>
9257         <parameters>
9258           <parameter name="object" transfer-ownership="none">
9259             <doc xml:whitespace="preserve">the path identifying the row of the edited cell</doc>
9260             <type name="utf8"/>
9261           </parameter>
9262           <parameter name="p0" transfer-ownership="none">
9263             <doc xml:whitespace="preserve">the new accelerator keyval</doc>
9264             <type name="guint"/>
9265           </parameter>
9266           <parameter name="p1" transfer-ownership="none">
9267             <doc xml:whitespace="preserve">the new acclerator modifier mask</doc>
9268             <type name="Gdk.ModifierType"/>
9269           </parameter>
9270           <parameter name="p2" transfer-ownership="none">
9271             <doc xml:whitespace="preserve">the keycode of the new accelerator</doc>
9272             <type name="guint"/>
9273           </parameter>
9274         </parameters>
9275       </glib:signal>
9276     </class>
9277     <record name="CellRendererAccelClass"
9278             c:type="GtkCellRendererAccelClass"
9279             glib:is-gtype-struct-for="CellRendererAccel">
9280       <field name="parent_class">
9281         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
9282       </field>
9283       <field name="accel_edited">
9284         <callback name="accel_edited">
9285           <return-value transfer-ownership="none">
9286             <type name="none" c:type="void"/>
9287           </return-value>
9288           <parameters>
9289             <parameter name="accel" transfer-ownership="none">
9290               <type name="CellRendererAccel" c:type="GtkCellRendererAccel*"/>
9291             </parameter>
9292             <parameter name="path_string" transfer-ownership="none">
9293               <type name="utf8" c:type="gchar*"/>
9294             </parameter>
9295             <parameter name="accel_key" transfer-ownership="none">
9296               <type name="guint" c:type="guint"/>
9297             </parameter>
9298             <parameter name="accel_mods" transfer-ownership="none">
9299               <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
9300             </parameter>
9301             <parameter name="hardware_keycode" transfer-ownership="none">
9302               <type name="guint" c:type="guint"/>
9303             </parameter>
9304           </parameters>
9305         </callback>
9306       </field>
9307       <field name="accel_cleared">
9308         <callback name="accel_cleared">
9309           <return-value transfer-ownership="none">
9310             <type name="none" c:type="void"/>
9311           </return-value>
9312           <parameters>
9313             <parameter name="accel" transfer-ownership="none">
9314               <type name="CellRendererAccel" c:type="GtkCellRendererAccel*"/>
9315             </parameter>
9316             <parameter name="path_string" transfer-ownership="none">
9317               <type name="utf8" c:type="gchar*"/>
9318             </parameter>
9319           </parameters>
9320         </callback>
9321       </field>
9322       <field name="_gtk_reserved0" introspectable="0">
9323         <callback name="_gtk_reserved0">
9324           <return-value transfer-ownership="none">
9325             <type name="none" c:type="void"/>
9326           </return-value>
9327         </callback>
9328       </field>
9329       <field name="_gtk_reserved1" introspectable="0">
9330         <callback name="_gtk_reserved1">
9331           <return-value transfer-ownership="none">
9332             <type name="none" c:type="void"/>
9333           </return-value>
9334         </callback>
9335       </field>
9336       <field name="_gtk_reserved2" introspectable="0">
9337         <callback name="_gtk_reserved2">
9338           <return-value transfer-ownership="none">
9339             <type name="none" c:type="void"/>
9340           </return-value>
9341         </callback>
9342       </field>
9343       <field name="_gtk_reserved3" introspectable="0">
9344         <callback name="_gtk_reserved3">
9345           <return-value transfer-ownership="none">
9346             <type name="none" c:type="void"/>
9347           </return-value>
9348         </callback>
9349       </field>
9350       <field name="_gtk_reserved4" introspectable="0">
9351         <callback name="_gtk_reserved4">
9352           <return-value transfer-ownership="none">
9353             <type name="none" c:type="void"/>
9354           </return-value>
9355         </callback>
9356       </field>
9357     </record>
9358     <enumeration name="CellRendererAccelMode"
9359                  glib:type-name="GtkCellRendererAccelMode"
9360                  glib:get-type="gtk_cell_renderer_accel_mode_get_type"
9361                  c:type="GtkCellRendererAccelMode">
9362       <member name="gtk"
9363               value="0"
9364               c:identifier="GTK_CELL_RENDERER_ACCEL_MODE_GTK"
9365               glib:nick="gtk"/>
9366       <member name="other"
9367               value="1"
9368               c:identifier="GTK_CELL_RENDERER_ACCEL_MODE_OTHER"
9369               glib:nick="other"/>
9370     </enumeration>
9371     <record name="CellRendererAccelPrivate"
9372             c:type="GtkCellRendererAccelPrivate"
9373             disguised="1">
9374     </record>
9375     <record name="CellRendererClass"
9376             c:type="GtkCellRendererClass"
9377             glib:is-gtype-struct-for="CellRenderer">
9378       <field name="parent_class">
9379         <type name="ObjectClass" c:type="GtkObjectClass"/>
9380       </field>
9381       <field name="get_size">
9382         <callback name="get_size">
9383           <return-value transfer-ownership="none">
9384             <type name="none" c:type="void"/>
9385           </return-value>
9386           <parameters>
9387             <parameter name="cell" transfer-ownership="none">
9388               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9389             </parameter>
9390             <parameter name="widget" transfer-ownership="none">
9391               <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
9392               <type name="Widget" c:type="GtkWidget*"/>
9393             </parameter>
9394             <parameter name="cell_area"
9395                        transfer-ownership="none"
9396                        allow-none="1">
9397               <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
9398               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9399             </parameter>
9400             <parameter name="x_offset"
9401                        transfer-ownership="none"
9402                        allow-none="1">
9403               <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
9404               <type name="gint" c:type="gint*"/>
9405             </parameter>
9406             <parameter name="y_offset"
9407                        transfer-ownership="none"
9408                        allow-none="1">
9409               <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
9410               <type name="gint" c:type="gint*"/>
9411             </parameter>
9412             <parameter name="width" transfer-ownership="none" allow-none="1">
9413               <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
9414               <type name="gint" c:type="gint*"/>
9415             </parameter>
9416             <parameter name="height" transfer-ownership="none" allow-none="1">
9417               <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
9418               <type name="gint" c:type="gint*"/>
9419             </parameter>
9420           </parameters>
9421         </callback>
9422       </field>
9423       <field name="render">
9424         <callback name="render">
9425           <return-value transfer-ownership="none">
9426             <type name="none" c:type="void"/>
9427           </return-value>
9428           <parameters>
9429             <parameter name="cell" transfer-ownership="none">
9430               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9431             </parameter>
9432             <parameter name="window" transfer-ownership="none">
9433               <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
9434               <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
9435             </parameter>
9436             <parameter name="widget" transfer-ownership="none">
9437               <doc xml:whitespace="preserve">the widget owning @window</doc>
9438               <type name="Widget" c:type="GtkWidget*"/>
9439             </parameter>
9440             <parameter name="background_area" transfer-ownership="none">
9441               <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
9442               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9443             </parameter>
9444             <parameter name="cell_area" transfer-ownership="none">
9445               <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
9446               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9447             </parameter>
9448             <parameter name="expose_area" transfer-ownership="none">
9449               <doc xml:whitespace="preserve">area that actually needs updating</doc>
9450               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9451             </parameter>
9452             <parameter name="flags" transfer-ownership="none">
9453               <doc xml:whitespace="preserve">flags that affect rendering</doc>
9454               <type name="CellRendererState" c:type="GtkCellRendererState"/>
9455             </parameter>
9456           </parameters>
9457         </callback>
9458       </field>
9459       <field name="activate">
9460         <callback name="activate">
9461           <return-value transfer-ownership="none">
9462             <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
9463             <type name="gboolean" c:type="gboolean"/>
9464           </return-value>
9465           <parameters>
9466             <parameter name="cell" transfer-ownership="none">
9467               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9468             </parameter>
9469             <parameter name="event" transfer-ownership="none">
9470               <doc xml:whitespace="preserve">a #GdkEvent</doc>
9471               <type name="Gdk.Event" c:type="GdkEvent*"/>
9472             </parameter>
9473             <parameter name="widget" transfer-ownership="none">
9474               <doc xml:whitespace="preserve">widget that received the event</doc>
9475               <type name="Widget" c:type="GtkWidget*"/>
9476             </parameter>
9477             <parameter name="path" transfer-ownership="none">
9478               <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
9479               <type name="utf8" c:type="gchar*"/>
9480             </parameter>
9481             <parameter name="background_area" transfer-ownership="none">
9482               <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
9483               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9484             </parameter>
9485             <parameter name="cell_area" transfer-ownership="none">
9486               <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
9487               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9488             </parameter>
9489             <parameter name="flags" transfer-ownership="none">
9490               <doc xml:whitespace="preserve">render flags</doc>
9491               <type name="CellRendererState" c:type="GtkCellRendererState"/>
9492             </parameter>
9493           </parameters>
9494         </callback>
9495       </field>
9496       <field name="start_editing">
9497         <callback name="start_editing">
9498           <return-value transfer-ownership="full">
9499             <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
9500             <type name="CellEditable" c:type="GtkCellEditable*"/>
9501           </return-value>
9502           <parameters>
9503             <parameter name="cell" transfer-ownership="none">
9504               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9505             </parameter>
9506             <parameter name="event" transfer-ownership="none">
9507               <doc xml:whitespace="preserve">a #GdkEvent</doc>
9508               <type name="Gdk.Event" c:type="GdkEvent*"/>
9509             </parameter>
9510             <parameter name="widget" transfer-ownership="none">
9511               <doc xml:whitespace="preserve">widget that received the event</doc>
9512               <type name="Widget" c:type="GtkWidget*"/>
9513             </parameter>
9514             <parameter name="path" transfer-ownership="none">
9515               <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
9516               <type name="utf8" c:type="gchar*"/>
9517             </parameter>
9518             <parameter name="background_area" transfer-ownership="none">
9519               <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
9520               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9521             </parameter>
9522             <parameter name="cell_area" transfer-ownership="none">
9523               <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
9524               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9525             </parameter>
9526             <parameter name="flags" transfer-ownership="none">
9527               <doc xml:whitespace="preserve">render flags</doc>
9528               <type name="CellRendererState" c:type="GtkCellRendererState"/>
9529             </parameter>
9530           </parameters>
9531         </callback>
9532       </field>
9533       <field name="editing_canceled">
9534         <callback name="editing_canceled">
9535           <return-value transfer-ownership="none">
9536             <type name="none" c:type="void"/>
9537           </return-value>
9538           <parameters>
9539             <parameter name="cell" transfer-ownership="none">
9540               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9541             </parameter>
9542           </parameters>
9543         </callback>
9544       </field>
9545       <field name="editing_started">
9546         <callback name="editing_started">
9547           <return-value transfer-ownership="none">
9548             <type name="none" c:type="void"/>
9549           </return-value>
9550           <parameters>
9551             <parameter name="cell" transfer-ownership="none">
9552               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9553             </parameter>
9554             <parameter name="editable" transfer-ownership="none">
9555               <type name="CellEditable" c:type="GtkCellEditable*"/>
9556             </parameter>
9557             <parameter name="path" transfer-ownership="none">
9558               <type name="utf8" c:type="gchar*"/>
9559             </parameter>
9560           </parameters>
9561         </callback>
9562       </field>
9563       <field name="_gtk_reserved1" introspectable="0">
9564         <callback name="_gtk_reserved1">
9565           <return-value transfer-ownership="none">
9566             <type name="none" c:type="void"/>
9567           </return-value>
9568         </callback>
9569       </field>
9570       <field name="_gtk_reserved2" introspectable="0">
9571         <callback name="_gtk_reserved2">
9572           <return-value transfer-ownership="none">
9573             <type name="none" c:type="void"/>
9574           </return-value>
9575         </callback>
9576       </field>
9577     </record>
9578     <class name="CellRendererCombo"
9579            c:symbol-prefix="cell_renderer_combo"
9580            c:type="GtkCellRendererCombo"
9581            parent="CellRendererText"
9582            glib:type-name="GtkCellRendererCombo"
9583            glib:get-type="gtk_cell_renderer_combo_get_type"
9584            glib:type-struct="CellRendererComboClass">
9585       <implements name="CellSizeRequest"/>
9586       <constructor name="new"
9587                    c:identifier="gtk_cell_renderer_combo_new"
9588                    version="2.6">
9589         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererCombo. 
9590 Adjust how text is drawn using object properties. 
9591 Object properties can be set globally (with g_object_set()). 
9592 Also, with #GtkTreeViewColumn, you can bind a property to a value 
9593 in a #GtkTreeModel. For example, you can bind the "text" property 
9594 on the cell renderer to a string value in the model, thus rendering 
9595 a different string in each row of the #GtkTreeView.</doc>
9596         <return-value transfer-ownership="none">
9597           <doc xml:whitespace="preserve">the new cell renderer</doc>
9598           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9599         </return-value>
9600       </constructor>
9601       <property name="has-entry" writable="1" transfer-ownership="none">
9602         <type name="gboolean"/>
9603       </property>
9604       <property name="model"
9605                 version="2.6"
9606                 writable="1"
9607                 transfer-ownership="none">
9608         <doc xml:whitespace="preserve">Holds a tree model containing the possible values for the combo box. 
9609 Use the text_column property to specify the column holding the values.</doc>
9610         <type name="TreeModel"/>
9611       </property>
9612       <property name="text-column"
9613                 version="2.6"
9614                 writable="1"
9615                 transfer-ownership="none">
9616         <doc xml:whitespace="preserve">Specifies the model column which holds the possible values for the 
9617 combo box. 
9618 Note that this refers to the model specified in the model property, 
9619 &lt;emphasis&gt;not&lt;/emphasis&gt; the model backing the tree view to which 
9620 this cell renderer is attached.
9621 #GtkCellRendererCombo automatically adds a text cell renderer for 
9622 this column to its combo box.</doc>
9623         <type name="gint"/>
9624       </property>
9625       <field name="parent">
9626         <type name="CellRendererText" c:type="GtkCellRendererText"/>
9627       </field>
9628       <field name="priv" readable="0" private="1">
9629         <type name="CellRendererComboPrivate"
9630               c:type="GtkCellRendererComboPrivate*"/>
9631       </field>
9632       <glib:signal name="changed" version="2.14">
9633         <doc xml:whitespace="preserve">This signal is emitted each time after the user selected an item in
9634 the combo box, either by using the mouse or the arrow keys.  Contrary
9635 to GtkComboBox, GtkCellRendererCombo::changed is not emitted for
9636 changes made to a selected item in the entry.  The argument @new_iter
9637 corresponds to the newly selected item in the combo box and it is relative
9638 to the GtkTreeModel set via the model property on GtkCellRendererCombo.
9639 Note that as soon as you change the model displayed in the tree view,
9640 the tree view will immediately cease the editing operating.  This
9641 means that you most probably want to refrain from changing the model
9642 until the combo cell renderer emits the edited or editing_canceled signal.</doc>
9643         <return-value transfer-ownership="none">
9644           <type name="none"/>
9645         </return-value>
9646         <parameters>
9647           <parameter name="object" transfer-ownership="none">
9648             <doc xml:whitespace="preserve">a string of the path identifying the edited cell (relative to the tree view model)</doc>
9649             <type name="utf8"/>
9650           </parameter>
9651           <parameter name="p0" transfer-ownership="none">
9652             <doc xml:whitespace="preserve">the new iter selected in the combo box (relative to the combo box model)</doc>
9653             <type name="TreeIter"/>
9654           </parameter>
9655         </parameters>
9656       </glib:signal>
9657     </class>
9658     <record name="CellRendererComboClass"
9659             c:type="GtkCellRendererComboClass"
9660             glib:is-gtype-struct-for="CellRendererCombo">
9661       <field name="parent">
9662         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
9663       </field>
9664     </record>
9665     <record name="CellRendererComboPrivate"
9666             c:type="GtkCellRendererComboPrivate"
9667             disguised="1">
9668     </record>
9669     <enumeration name="CellRendererMode"
9670                  glib:type-name="GtkCellRendererMode"
9671                  glib:get-type="gtk_cell_renderer_mode_get_type"
9672                  c:type="GtkCellRendererMode">
9673       <member name="inert"
9674               value="0"
9675               c:identifier="GTK_CELL_RENDERER_MODE_INERT"
9676               glib:nick="inert"/>
9677       <member name="activatable"
9678               value="1"
9679               c:identifier="GTK_CELL_RENDERER_MODE_ACTIVATABLE"
9680               glib:nick="activatable"/>
9681       <member name="editable"
9682               value="2"
9683               c:identifier="GTK_CELL_RENDERER_MODE_EDITABLE"
9684               glib:nick="editable"/>
9685     </enumeration>
9686     <class name="CellRendererPixbuf"
9687            c:symbol-prefix="cell_renderer_pixbuf"
9688            c:type="GtkCellRendererPixbuf"
9689            parent="CellRenderer"
9690            glib:type-name="GtkCellRendererPixbuf"
9691            glib:get-type="gtk_cell_renderer_pixbuf_get_type"
9692            glib:type-struct="CellRendererPixbufClass">
9693       <implements name="CellSizeRequest"/>
9694       <constructor name="new" c:identifier="gtk_cell_renderer_pixbuf_new">
9695         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererPixbuf. Adjust rendering
9696 parameters using object properties. Object properties can be set
9697 globally (with g_object_set()). Also, with #GtkTreeViewColumn, you
9698 can bind a property to a value in a #GtkTreeModel. For example, you
9699 can bind the "pixbuf" property on the cell renderer to a pixbuf value
9700 in the model, thus rendering a different image in each row of the
9701 #GtkTreeView.</doc>
9702         <return-value transfer-ownership="none">
9703           <doc xml:whitespace="preserve">the new cell renderer</doc>
9704           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9705         </return-value>
9706       </constructor>
9707       <property name="follow-state"
9708                 version="2.8"
9709                 writable="1"
9710                 transfer-ownership="none">
9711         <doc xml:whitespace="preserve">Specifies whether the rendered pixbuf should be colorized
9712 according to the #GtkCellRendererState.</doc>
9713         <type name="gboolean"/>
9714       </property>
9715       <property name="gicon"
9716                 version="2.14"
9717                 writable="1"
9718                 transfer-ownership="none">
9719         <doc xml:whitespace="preserve">The GIcon representing the icon to display.
9720 If the icon theme is changed, the image will be updated
9721 automatically.</doc>
9722         <type name="Gio.Icon"/>
9723       </property>
9724       <property name="icon-name"
9725                 version="2.8"
9726                 writable="1"
9727                 transfer-ownership="none">
9728         <doc xml:whitespace="preserve">The name of the themed icon to display.
9729 This property only has an effect if not overridden by "stock_id" 
9730 or "pixbuf" properties.</doc>
9731         <type name="utf8"/>
9732       </property>
9733       <property name="pixbuf" writable="1" transfer-ownership="none">
9734         <type name="GdkPixbuf.Pixbuf"/>
9735       </property>
9736       <property name="pixbuf-expander-closed"
9737                 writable="1"
9738                 transfer-ownership="none">
9739         <type name="GdkPixbuf.Pixbuf"/>
9740       </property>
9741       <property name="pixbuf-expander-open"
9742                 writable="1"
9743                 transfer-ownership="none">
9744         <type name="GdkPixbuf.Pixbuf"/>
9745       </property>
9746       <property name="stock-detail" writable="1" transfer-ownership="none">
9747         <type name="utf8"/>
9748       </property>
9749       <property name="stock-id" writable="1" transfer-ownership="none">
9750         <type name="utf8"/>
9751       </property>
9752       <property name="stock-size" writable="1" transfer-ownership="none">
9753         <type name="guint"/>
9754       </property>
9755       <field name="parent">
9756         <type name="CellRenderer" c:type="GtkCellRenderer"/>
9757       </field>
9758       <field name="priv">
9759         <type name="CellRendererPixbufPrivate"
9760               c:type="GtkCellRendererPixbufPrivate*"/>
9761       </field>
9762     </class>
9763     <record name="CellRendererPixbufClass"
9764             c:type="GtkCellRendererPixbufClass"
9765             glib:is-gtype-struct-for="CellRendererPixbuf">
9766       <field name="parent_class">
9767         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
9768       </field>
9769       <field name="_gtk_reserved1" introspectable="0">
9770         <callback name="_gtk_reserved1">
9771           <return-value transfer-ownership="none">
9772             <type name="none" c:type="void"/>
9773           </return-value>
9774         </callback>
9775       </field>
9776       <field name="_gtk_reserved2" introspectable="0">
9777         <callback name="_gtk_reserved2">
9778           <return-value transfer-ownership="none">
9779             <type name="none" c:type="void"/>
9780           </return-value>
9781         </callback>
9782       </field>
9783       <field name="_gtk_reserved3" introspectable="0">
9784         <callback name="_gtk_reserved3">
9785           <return-value transfer-ownership="none">
9786             <type name="none" c:type="void"/>
9787           </return-value>
9788         </callback>
9789       </field>
9790       <field name="_gtk_reserved4" introspectable="0">
9791         <callback name="_gtk_reserved4">
9792           <return-value transfer-ownership="none">
9793             <type name="none" c:type="void"/>
9794           </return-value>
9795         </callback>
9796       </field>
9797     </record>
9798     <record name="CellRendererPixbufPrivate"
9799             c:type="GtkCellRendererPixbufPrivate"
9800             disguised="1">
9801     </record>
9802     <record name="CellRendererPrivate"
9803             c:type="GtkCellRendererPrivate"
9804             disguised="1">
9805     </record>
9806     <class name="CellRendererProgress"
9807            c:symbol-prefix="cell_renderer_progress"
9808            c:type="GtkCellRendererProgress"
9809            parent="CellRenderer"
9810            glib:type-name="GtkCellRendererProgress"
9811            glib:get-type="gtk_cell_renderer_progress_get_type"
9812            glib:type-struct="CellRendererProgressClass">
9813       <implements name="CellSizeRequest"/>
9814       <implements name="Orientable"/>
9815       <constructor name="new"
9816                    c:identifier="gtk_cell_renderer_progress_new"
9817                    version="2.6">
9818         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererProgress.</doc>
9819         <return-value transfer-ownership="none">
9820           <doc xml:whitespace="preserve">the new cell renderer</doc>
9821           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9822         </return-value>
9823       </constructor>
9824       <property name="inverted" writable="1" transfer-ownership="none">
9825         <type name="gboolean"/>
9826       </property>
9827       <property name="pulse"
9828                 version="2.12"
9829                 writable="1"
9830                 transfer-ownership="none">
9831         <doc xml:whitespace="preserve">Setting this to a non-negative value causes the cell renderer to
9832 enter "activity mode", where a block bounces back and forth to 
9833 indicate that some progress is made, without specifying exactly how
9834 much.
9835 Each increment of the property causes the block to move by a little 
9836 bit.
9837 To indicate that the activity has not started yet, set the property
9838 to zero. To indicate completion, set the property to %G_MAXINT.</doc>
9839         <type name="gint"/>
9840       </property>
9841       <property name="text"
9842                 version="2.6"
9843                 writable="1"
9844                 transfer-ownership="none">
9845         <doc xml:whitespace="preserve">The "text" property determines the label which will be drawn
9846 over the progress bar. Setting this property to %NULL causes the default 
9847 label to be displayed. Setting this property to an empty string causes 
9848 no label to be displayed.</doc>
9849         <type name="utf8"/>
9850       </property>
9851       <property name="text-xalign"
9852                 version="2.12"
9853                 writable="1"
9854                 transfer-ownership="none">
9855         <doc xml:whitespace="preserve">The "text-xalign" property controls the horizontal alignment of the
9856 text in the progress bar.  Valid values range from 0 (left) to 1
9857 (right).  Reserved for RTL layouts.</doc>
9858         <type name="gfloat"/>
9859       </property>
9860       <property name="text-yalign"
9861                 version="2.12"
9862                 writable="1"
9863                 transfer-ownership="none">
9864         <doc xml:whitespace="preserve">The "text-yalign" property controls the vertical alignment of the
9865 text in the progress bar.  Valid values range from 0 (top) to 1
9866 (bottom).</doc>
9867         <type name="gfloat"/>
9868       </property>
9869       <property name="value"
9870                 version="2.6"
9871                 writable="1"
9872                 transfer-ownership="none">
9873         <doc xml:whitespace="preserve">The "value" property determines the percentage to which the
9874 progress bar will be "filled in".</doc>
9875         <type name="gint"/>
9876       </property>
9877       <field name="parent_instance">
9878         <type name="CellRenderer" c:type="GtkCellRenderer"/>
9879       </field>
9880       <field name="priv">
9881         <type name="CellRendererProgressPrivate"
9882               c:type="GtkCellRendererProgressPrivate*"/>
9883       </field>
9884     </class>
9885     <record name="CellRendererProgressClass"
9886             c:type="GtkCellRendererProgressClass"
9887             glib:is-gtype-struct-for="CellRendererProgress">
9888       <field name="parent_class">
9889         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
9890       </field>
9891       <field name="_gtk_reserved1" introspectable="0">
9892         <callback name="_gtk_reserved1">
9893           <return-value transfer-ownership="none">
9894             <type name="none" c:type="void"/>
9895           </return-value>
9896         </callback>
9897       </field>
9898       <field name="_gtk_reserved2" introspectable="0">
9899         <callback name="_gtk_reserved2">
9900           <return-value transfer-ownership="none">
9901             <type name="none" c:type="void"/>
9902           </return-value>
9903         </callback>
9904       </field>
9905       <field name="_gtk_reserved3" introspectable="0">
9906         <callback name="_gtk_reserved3">
9907           <return-value transfer-ownership="none">
9908             <type name="none" c:type="void"/>
9909           </return-value>
9910         </callback>
9911       </field>
9912       <field name="_gtk_reserved4" introspectable="0">
9913         <callback name="_gtk_reserved4">
9914           <return-value transfer-ownership="none">
9915             <type name="none" c:type="void"/>
9916           </return-value>
9917         </callback>
9918       </field>
9919     </record>
9920     <record name="CellRendererProgressPrivate"
9921             c:type="GtkCellRendererProgressPrivate"
9922             disguised="1">
9923     </record>
9924     <class name="CellRendererSpin"
9925            c:symbol-prefix="cell_renderer_spin"
9926            c:type="GtkCellRendererSpin"
9927            parent="CellRendererText"
9928            glib:type-name="GtkCellRendererSpin"
9929            glib:get-type="gtk_cell_renderer_spin_get_type"
9930            glib:type-struct="CellRendererSpinClass">
9931       <implements name="CellSizeRequest"/>
9932       <constructor name="new"
9933                    c:identifier="gtk_cell_renderer_spin_new"
9934                    version="2.10">
9935         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererSpin.</doc>
9936         <return-value transfer-ownership="none">
9937           <doc xml:whitespace="preserve">a new #GtkCellRendererSpin</doc>
9938           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9939         </return-value>
9940       </constructor>
9941       <property name="adjustment"
9942                 version="2.10"
9943                 writable="1"
9944                 transfer-ownership="none">
9945         <doc xml:whitespace="preserve">The adjustment that holds the value of the spinbutton. 
9946 This must be non-%NULL for the cell renderer to be editable.</doc>
9947         <type name="Adjustment"/>
9948       </property>
9949       <property name="climb-rate"
9950                 version="2.10"
9951                 writable="1"
9952                 transfer-ownership="none">
9953         <doc xml:whitespace="preserve">The acceleration rate when you hold down a button.</doc>
9954         <type name="gdouble"/>
9955       </property>
9956       <property name="digits"
9957                 version="2.10"
9958                 writable="1"
9959                 transfer-ownership="none">
9960         <doc xml:whitespace="preserve">The number of decimal places to display.</doc>
9961         <type name="guint"/>
9962       </property>
9963       <field name="parent">
9964         <type name="CellRendererText" c:type="GtkCellRendererText"/>
9965       </field>
9966       <field name="priv" readable="0" private="1">
9967         <type name="CellRendererSpinPrivate"
9968               c:type="GtkCellRendererSpinPrivate*"/>
9969       </field>
9970     </class>
9971     <record name="CellRendererSpinClass"
9972             c:type="GtkCellRendererSpinClass"
9973             glib:is-gtype-struct-for="CellRendererSpin">
9974       <field name="parent">
9975         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
9976       </field>
9977     </record>
9978     <record name="CellRendererSpinPrivate"
9979             c:type="GtkCellRendererSpinPrivate"
9980             disguised="1">
9981     </record>
9982     <class name="CellRendererSpinner"
9983            c:symbol-prefix="cell_renderer_spinner"
9984            c:type="GtkCellRendererSpinner"
9985            parent="CellRenderer"
9986            glib:type-name="GtkCellRendererSpinner"
9987            glib:get-type="gtk_cell_renderer_spinner_get_type"
9988            glib:type-struct="CellRendererSpinnerClass">
9989       <implements name="CellSizeRequest"/>
9990       <constructor name="new" c:identifier="gtk_cell_renderer_spinner_new">
9991         <return-value transfer-ownership="none">
9992           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
9993         </return-value>
9994       </constructor>
9995       <property name="active" writable="1" transfer-ownership="none">
9996         <type name="gboolean"/>
9997       </property>
9998       <property name="pulse"
9999                 version="2.20"
10000                 writable="1"
10001                 transfer-ownership="none">
10002         <doc xml:whitespace="preserve">Pulse of the spinner. Increment this value to draw the next frame of the
10003 spinner animation. Usually, you would update this value in a timeout.
10004 The #GtkSpinner widget draws one full cycle of the animation per second by default.
10005 You can learn about the number of frames used by the theme
10006 by looking at the #GtkSpinner:num-steps style property and the duration
10007 of the cycle by looking at #GtkSpinner:cycle-duration.</doc>
10008         <type name="guint"/>
10009       </property>
10010       <property name="size"
10011                 version="2.20"
10012                 writable="1"
10013                 transfer-ownership="none">
10014         <doc xml:whitespace="preserve">The #GtkIconSize value that specifies the size of the rendered spinner.</doc>
10015         <type name="IconSize"/>
10016       </property>
10017       <field name="parent">
10018         <type name="CellRenderer" c:type="GtkCellRenderer"/>
10019       </field>
10020       <field name="priv" readable="0" private="1">
10021         <type name="CellRendererSpinnerPrivate"
10022               c:type="GtkCellRendererSpinnerPrivate*"/>
10023       </field>
10024     </class>
10025     <record name="CellRendererSpinnerClass"
10026             c:type="GtkCellRendererSpinnerClass"
10027             glib:is-gtype-struct-for="CellRendererSpinner">
10028       <field name="parent_class">
10029         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
10030       </field>
10031       <field name="_gtk_reserved1" introspectable="0">
10032         <callback name="_gtk_reserved1">
10033           <return-value transfer-ownership="none">
10034             <type name="none" c:type="void"/>
10035           </return-value>
10036         </callback>
10037       </field>
10038       <field name="_gtk_reserved2" introspectable="0">
10039         <callback name="_gtk_reserved2">
10040           <return-value transfer-ownership="none">
10041             <type name="none" c:type="void"/>
10042           </return-value>
10043         </callback>
10044       </field>
10045       <field name="_gtk_reserved3" introspectable="0">
10046         <callback name="_gtk_reserved3">
10047           <return-value transfer-ownership="none">
10048             <type name="none" c:type="void"/>
10049           </return-value>
10050         </callback>
10051       </field>
10052       <field name="_gtk_reserved4" introspectable="0">
10053         <callback name="_gtk_reserved4">
10054           <return-value transfer-ownership="none">
10055             <type name="none" c:type="void"/>
10056           </return-value>
10057         </callback>
10058       </field>
10059     </record>
10060     <record name="CellRendererSpinnerPrivate"
10061             c:type="GtkCellRendererSpinnerPrivate"
10062             disguised="1">
10063     </record>
10064     <bitfield name="CellRendererState"
10065               glib:type-name="GtkCellRendererState"
10066               glib:get-type="gtk_cell_renderer_state_get_type"
10067               c:type="GtkCellRendererState">
10068       <member name="selected"
10069               value="1"
10070               c:identifier="GTK_CELL_RENDERER_SELECTED"
10071               glib:nick="selected"/>
10072       <member name="prelit"
10073               value="2"
10074               c:identifier="GTK_CELL_RENDERER_PRELIT"
10075               glib:nick="prelit"/>
10076       <member name="insensitive"
10077               value="4"
10078               c:identifier="GTK_CELL_RENDERER_INSENSITIVE"
10079               glib:nick="insensitive"/>
10080       <member name="sorted"
10081               value="8"
10082               c:identifier="GTK_CELL_RENDERER_SORTED"
10083               glib:nick="sorted"/>
10084       <member name="focused"
10085               value="16"
10086               c:identifier="GTK_CELL_RENDERER_FOCUSED"
10087               glib:nick="focused"/>
10088     </bitfield>
10089     <class name="CellRendererText"
10090            c:symbol-prefix="cell_renderer_text"
10091            c:type="GtkCellRendererText"
10092            parent="CellRenderer"
10093            glib:type-name="GtkCellRendererText"
10094            glib:get-type="gtk_cell_renderer_text_get_type"
10095            glib:type-struct="CellRendererTextClass">
10096       <implements name="CellSizeRequest"/>
10097       <constructor name="new" c:identifier="gtk_cell_renderer_text_new">
10098         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererText. Adjust how text is drawn using
10099 object properties. Object properties can be
10100 set globally (with g_object_set()). Also, with #GtkTreeViewColumn,
10101 you can bind a property to a value in a #GtkTreeModel. For example,
10102 you can bind the "text" property on the cell renderer to a string
10103 value in the model, thus rendering a different string in each row
10104 of the #GtkTreeView</doc>
10105         <return-value transfer-ownership="none">
10106           <doc xml:whitespace="preserve">the new cell renderer</doc>
10107           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
10108         </return-value>
10109       </constructor>
10110       <method name="set_fixed_height_from_font"
10111               c:identifier="gtk_cell_renderer_text_set_fixed_height_from_font">
10112         <doc xml:whitespace="preserve">Sets the height of a renderer to explicitly be determined by the "font" and
10113 "y_pad" property set on it.  Further changes in these properties do not
10114 affect the height, so they must be accompanied by a subsequent call to this
10115 function.  Using this function is unflexible, and should really only be used
10116 if calculating the size of a cell is too slow (ie, a massive number of cells
10117 displayed).  If @number_of_rows is -1, then the fixed height is unset, and
10118 the height is determined by the properties again.</doc>
10119         <return-value transfer-ownership="none">
10120           <type name="none" c:type="void"/>
10121         </return-value>
10122         <parameters>
10123           <parameter name="number_of_rows" transfer-ownership="none">
10124             <doc xml:whitespace="preserve">Number of rows of text each cell renderer is allocated, or -1</doc>
10125             <type name="gint" c:type="gint"/>
10126           </parameter>
10127         </parameters>
10128       </method>
10129       <property name="align-set" writable="1" transfer-ownership="none">
10130         <type name="gboolean"/>
10131       </property>
10132       <property name="alignment"
10133                 version="2.10"
10134                 writable="1"
10135                 transfer-ownership="none">
10136         <doc xml:whitespace="preserve">Specifies how to align the lines of text with respect to each other. 
10137 Note that this property describes how to align the lines of text in 
10138 case there are several of them. The "xalign" property of #GtkCellRenderer, 
10139 on the other hand, sets the horizontal alignment of the whole text.</doc>
10140         <type name="Pango.Alignment"/>
10141       </property>
10142       <property name="attributes" writable="1" transfer-ownership="none">
10143         <type name="Pango.AttrList"/>
10144       </property>
10145       <property name="background"
10146                 readable="0"
10147                 writable="1"
10148                 transfer-ownership="none">
10149         <type name="utf8"/>
10150       </property>
10151       <property name="background-gdk" writable="1" transfer-ownership="none">
10152         <type name="Gdk.Color"/>
10153       </property>
10154       <property name="background-set" writable="1" transfer-ownership="none">
10155         <type name="gboolean"/>
10156       </property>
10157       <property name="editable" writable="1" transfer-ownership="none">
10158         <type name="gboolean"/>
10159       </property>
10160       <property name="editable-set" writable="1" transfer-ownership="none">
10161         <type name="gboolean"/>
10162       </property>
10163       <property name="ellipsize"
10164                 version="2.6"
10165                 writable="1"
10166                 transfer-ownership="none">
10167         <doc xml:whitespace="preserve">Specifies the preferred place to ellipsize the string, if the cell renderer 
10168 does not have enough room to display the entire string. Setting it to 
10169 %PANGO_ELLIPSIZE_NONE turns off ellipsizing. See the wrap-width property
10170 for another way of making the text fit into a given width.</doc>
10171         <type name="Pango.EllipsizeMode"/>
10172       </property>
10173       <property name="ellipsize-set" writable="1" transfer-ownership="none">
10174         <type name="gboolean"/>
10175       </property>
10176       <property name="family" writable="1" transfer-ownership="none">
10177         <type name="utf8"/>
10178       </property>
10179       <property name="family-set" writable="1" transfer-ownership="none">
10180         <type name="gboolean"/>
10181       </property>
10182       <property name="font" writable="1" transfer-ownership="none">
10183         <type name="utf8"/>
10184       </property>
10185       <property name="font-desc" writable="1" transfer-ownership="none">
10186         <type name="Pango.FontDescription"/>
10187       </property>
10188       <property name="foreground"
10189                 readable="0"
10190                 writable="1"
10191                 transfer-ownership="none">
10192         <type name="utf8"/>
10193       </property>
10194       <property name="foreground-gdk" writable="1" transfer-ownership="none">
10195         <type name="Gdk.Color"/>
10196       </property>
10197       <property name="foreground-set" writable="1" transfer-ownership="none">
10198         <type name="gboolean"/>
10199       </property>
10200       <property name="language" writable="1" transfer-ownership="none">
10201         <type name="utf8"/>
10202       </property>
10203       <property name="language-set" writable="1" transfer-ownership="none">
10204         <type name="gboolean"/>
10205       </property>
10206       <property name="markup"
10207                 readable="0"
10208                 writable="1"
10209                 transfer-ownership="none">
10210         <type name="utf8"/>
10211       </property>
10212       <property name="max-width-chars"
10213                 version="3.0"
10214                 writable="1"
10215                 transfer-ownership="none">
10216         <doc xml:whitespace="preserve">The desired maximum width of the cell, in characters. If this property 
10217 is set to -1, the width will be calculated automatically.
10218 For cell renderers that ellipsize or wrap text; this property
10219 controls the maximum reported width of the cell. The
10220 cell should not receive any greater allocation unless it is
10221 set to expand in its #GtkCellLayout and all of the cell's siblings
10222 have received their natural width.</doc>
10223         <type name="gint"/>
10224       </property>
10225       <property name="rise" writable="1" transfer-ownership="none">
10226         <type name="gint"/>
10227       </property>
10228       <property name="rise-set" writable="1" transfer-ownership="none">
10229         <type name="gboolean"/>
10230       </property>
10231       <property name="scale" writable="1" transfer-ownership="none">
10232         <type name="gdouble"/>
10233       </property>
10234       <property name="scale-set" writable="1" transfer-ownership="none">
10235         <type name="gboolean"/>
10236       </property>
10237       <property name="single-paragraph-mode"
10238                 writable="1"
10239                 transfer-ownership="none">
10240         <type name="gboolean"/>
10241       </property>
10242       <property name="size" writable="1" transfer-ownership="none">
10243         <type name="gint"/>
10244       </property>
10245       <property name="size-points" writable="1" transfer-ownership="none">
10246         <type name="gdouble"/>
10247       </property>
10248       <property name="size-set" writable="1" transfer-ownership="none">
10249         <type name="gboolean"/>
10250       </property>
10251       <property name="stretch" writable="1" transfer-ownership="none">
10252         <type name="Pango.Stretch"/>
10253       </property>
10254       <property name="stretch-set" writable="1" transfer-ownership="none">
10255         <type name="gboolean"/>
10256       </property>
10257       <property name="strikethrough" writable="1" transfer-ownership="none">
10258         <type name="gboolean"/>
10259       </property>
10260       <property name="strikethrough-set"
10261                 writable="1"
10262                 transfer-ownership="none">
10263         <type name="gboolean"/>
10264       </property>
10265       <property name="style" writable="1" transfer-ownership="none">
10266         <type name="Pango.Style"/>
10267       </property>
10268       <property name="style-set" writable="1" transfer-ownership="none">
10269         <type name="gboolean"/>
10270       </property>
10271       <property name="text" writable="1" transfer-ownership="none">
10272         <type name="utf8"/>
10273       </property>
10274       <property name="underline" writable="1" transfer-ownership="none">
10275         <type name="Pango.Underline"/>
10276       </property>
10277       <property name="underline-set" writable="1" transfer-ownership="none">
10278         <type name="gboolean"/>
10279       </property>
10280       <property name="variant" writable="1" transfer-ownership="none">
10281         <type name="Pango.Variant"/>
10282       </property>
10283       <property name="variant-set" writable="1" transfer-ownership="none">
10284         <type name="gboolean"/>
10285       </property>
10286       <property name="weight" writable="1" transfer-ownership="none">
10287         <type name="gint"/>
10288       </property>
10289       <property name="weight-set" writable="1" transfer-ownership="none">
10290         <type name="gboolean"/>
10291       </property>
10292       <property name="width-chars"
10293                 version="2.6"
10294                 writable="1"
10295                 transfer-ownership="none">
10296         <doc xml:whitespace="preserve">The desired width of the cell, in characters. If this property is set to
10297 -1, the width will be calculated automatically, otherwise the cell will
10298 request either 3 characters or the property value, whichever is greater.</doc>
10299         <type name="gint"/>
10300       </property>
10301       <property name="wrap-mode"
10302                 version="2.8"
10303                 writable="1"
10304                 transfer-ownership="none">
10305         <doc xml:whitespace="preserve">Specifies how to break the string into multiple lines, if the cell 
10306 renderer does not have enough room to display the entire string. 
10307 This property has no effect unless the wrap-width property is set.</doc>
10308         <type name="Pango.WrapMode"/>
10309       </property>
10310       <property name="wrap-width"
10311                 version="2.8"
10312                 writable="1"
10313                 transfer-ownership="none">
10314         <doc xml:whitespace="preserve">Specifies the minimum width at which the text is wrapped. The wrap-mode property can 
10315 be used to influence at what character positions the line breaks can be placed.
10316 Setting wrap-width to -1 turns wrapping off.</doc>
10317         <type name="gint"/>
10318       </property>
10319       <field name="parent">
10320         <type name="CellRenderer" c:type="GtkCellRenderer"/>
10321       </field>
10322       <field name="priv">
10323         <type name="CellRendererTextPrivate"
10324               c:type="GtkCellRendererTextPrivate*"/>
10325       </field>
10326       <glib:signal name="edited">
10327         <return-value transfer-ownership="none">
10328           <type name="none"/>
10329         </return-value>
10330         <parameters>
10331           <parameter name="object" transfer-ownership="none">
10332             <type name="utf8"/>
10333           </parameter>
10334           <parameter name="p0" transfer-ownership="none">
10335             <type name="utf8"/>
10336           </parameter>
10337         </parameters>
10338       </glib:signal>
10339     </class>
10340     <record name="CellRendererTextClass"
10341             c:type="GtkCellRendererTextClass"
10342             glib:is-gtype-struct-for="CellRendererText">
10343       <field name="parent_class">
10344         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
10345       </field>
10346       <field name="edited">
10347         <callback name="edited">
10348           <return-value transfer-ownership="none">
10349             <type name="none" c:type="void"/>
10350           </return-value>
10351           <parameters>
10352             <parameter name="cell_renderer_text" transfer-ownership="none">
10353               <type name="CellRendererText" c:type="GtkCellRendererText*"/>
10354             </parameter>
10355             <parameter name="path" transfer-ownership="none">
10356               <type name="utf8" c:type="gchar*"/>
10357             </parameter>
10358             <parameter name="new_text" transfer-ownership="none">
10359               <type name="utf8" c:type="gchar*"/>
10360             </parameter>
10361           </parameters>
10362         </callback>
10363       </field>
10364       <field name="_gtk_reserved1" introspectable="0">
10365         <callback name="_gtk_reserved1">
10366           <return-value transfer-ownership="none">
10367             <type name="none" c:type="void"/>
10368           </return-value>
10369         </callback>
10370       </field>
10371       <field name="_gtk_reserved2" introspectable="0">
10372         <callback name="_gtk_reserved2">
10373           <return-value transfer-ownership="none">
10374             <type name="none" c:type="void"/>
10375           </return-value>
10376         </callback>
10377       </field>
10378       <field name="_gtk_reserved3" introspectable="0">
10379         <callback name="_gtk_reserved3">
10380           <return-value transfer-ownership="none">
10381             <type name="none" c:type="void"/>
10382           </return-value>
10383         </callback>
10384       </field>
10385       <field name="_gtk_reserved4" introspectable="0">
10386         <callback name="_gtk_reserved4">
10387           <return-value transfer-ownership="none">
10388             <type name="none" c:type="void"/>
10389           </return-value>
10390         </callback>
10391       </field>
10392     </record>
10393     <record name="CellRendererTextPrivate"
10394             c:type="GtkCellRendererTextPrivate"
10395             disguised="1">
10396     </record>
10397     <class name="CellRendererToggle"
10398            c:symbol-prefix="cell_renderer_toggle"
10399            c:type="GtkCellRendererToggle"
10400            parent="CellRenderer"
10401            glib:type-name="GtkCellRendererToggle"
10402            glib:get-type="gtk_cell_renderer_toggle_get_type"
10403            glib:type-struct="CellRendererToggleClass">
10404       <implements name="CellSizeRequest"/>
10405       <constructor name="new" c:identifier="gtk_cell_renderer_toggle_new">
10406         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererToggle. Adjust rendering
10407 parameters using object properties. Object properties can be set
10408 globally (with g_object_set()). Also, with #GtkTreeViewColumn, you
10409 can bind a property to a value in a #GtkTreeModel. For example, you
10410 can bind the "active" property on the cell renderer to a boolean value
10411 in the model, thus causing the check button to reflect the state of
10412 the model.</doc>
10413         <return-value transfer-ownership="none">
10414           <doc xml:whitespace="preserve">the new cell renderer</doc>
10415           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
10416         </return-value>
10417       </constructor>
10418       <method name="get_activatable"
10419               c:identifier="gtk_cell_renderer_toggle_get_activatable"
10420               version="2.18">
10421         <doc xml:whitespace="preserve">Returns whether the cell renderer is activatable. See
10422 gtk_cell_renderer_toggle_set_activatable().</doc>
10423         <return-value transfer-ownership="none">
10424           <doc xml:whitespace="preserve">%TRUE if the cell renderer is activatable.</doc>
10425           <type name="gboolean" c:type="gboolean"/>
10426         </return-value>
10427       </method>
10428       <method name="get_active"
10429               c:identifier="gtk_cell_renderer_toggle_get_active">
10430         <doc xml:whitespace="preserve">Returns whether the cell renderer is active. See
10431 gtk_cell_renderer_toggle_set_active().</doc>
10432         <return-value transfer-ownership="none">
10433           <doc xml:whitespace="preserve">%TRUE if the cell renderer is active.</doc>
10434           <type name="gboolean" c:type="gboolean"/>
10435         </return-value>
10436       </method>
10437       <method name="get_radio"
10438               c:identifier="gtk_cell_renderer_toggle_get_radio">
10439         <doc xml:whitespace="preserve">Returns whether we're rendering radio toggles rather than checkboxes.</doc>
10440         <return-value transfer-ownership="none">
10441           <doc xml:whitespace="preserve">%TRUE if we're rendering radio toggles rather than checkboxes</doc>
10442           <type name="gboolean" c:type="gboolean"/>
10443         </return-value>
10444       </method>
10445       <method name="set_activatable"
10446               c:identifier="gtk_cell_renderer_toggle_set_activatable"
10447               version="2.18">
10448         <doc xml:whitespace="preserve">Makes the cell renderer activatable.</doc>
10449         <return-value transfer-ownership="none">
10450           <type name="none" c:type="void"/>
10451         </return-value>
10452         <parameters>
10453           <parameter name="setting" transfer-ownership="none">
10454             <doc xml:whitespace="preserve">the value to set.</doc>
10455             <type name="gboolean" c:type="gboolean"/>
10456           </parameter>
10457         </parameters>
10458       </method>
10459       <method name="set_active"
10460               c:identifier="gtk_cell_renderer_toggle_set_active">
10461         <doc xml:whitespace="preserve">Activates or deactivates a cell renderer.</doc>
10462         <return-value transfer-ownership="none">
10463           <type name="none" c:type="void"/>
10464         </return-value>
10465         <parameters>
10466           <parameter name="setting" transfer-ownership="none">
10467             <doc xml:whitespace="preserve">the value to set.</doc>
10468             <type name="gboolean" c:type="gboolean"/>
10469           </parameter>
10470         </parameters>
10471       </method>
10472       <method name="set_radio"
10473               c:identifier="gtk_cell_renderer_toggle_set_radio">
10474         <doc xml:whitespace="preserve">If @radio is %TRUE, the cell renderer renders a radio toggle
10475 (i.e. a toggle in a group of mutually-exclusive toggles).
10476 If %FALSE, it renders a check toggle (a standalone boolean option).
10477 This can be set globally for the cell renderer, or changed just
10478 before rendering each cell in the model (for #GtkTreeView, you set
10479 up a per-row setting using #GtkTreeViewColumn to associate model
10480 columns with cell renderer properties).</doc>
10481         <return-value transfer-ownership="none">
10482           <type name="none" c:type="void"/>
10483         </return-value>
10484         <parameters>
10485           <parameter name="radio" transfer-ownership="none">
10486             <doc xml:whitespace="preserve">%TRUE to make the toggle look like a radio button</doc>
10487             <type name="gboolean" c:type="gboolean"/>
10488           </parameter>
10489         </parameters>
10490       </method>
10491       <property name="activatable" writable="1" transfer-ownership="none">
10492         <type name="gboolean"/>
10493       </property>
10494       <property name="active" writable="1" transfer-ownership="none">
10495         <type name="gboolean"/>
10496       </property>
10497       <property name="inconsistent" writable="1" transfer-ownership="none">
10498         <type name="gboolean"/>
10499       </property>
10500       <property name="indicator-size" writable="1" transfer-ownership="none">
10501         <type name="gint"/>
10502       </property>
10503       <property name="radio" writable="1" transfer-ownership="none">
10504         <type name="gboolean"/>
10505       </property>
10506       <field name="parent">
10507         <type name="CellRenderer" c:type="GtkCellRenderer"/>
10508       </field>
10509       <field name="priv">
10510         <type name="CellRendererTogglePrivate"
10511               c:type="GtkCellRendererTogglePrivate*"/>
10512       </field>
10513       <glib:signal name="toggled">
10514         <doc xml:whitespace="preserve">The ::toggled signal is emitted when the cell is toggled.</doc>
10515         <return-value transfer-ownership="none">
10516           <type name="none"/>
10517         </return-value>
10518         <parameters>
10519           <parameter name="object" transfer-ownership="none">
10520             <doc xml:whitespace="preserve">string representation of #GtkTreePath describing the event location</doc>
10521             <type name="utf8"/>
10522           </parameter>
10523         </parameters>
10524       </glib:signal>
10525     </class>
10526     <record name="CellRendererToggleClass"
10527             c:type="GtkCellRendererToggleClass"
10528             glib:is-gtype-struct-for="CellRendererToggle">
10529       <field name="parent_class">
10530         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
10531       </field>
10532       <field name="toggled">
10533         <callback name="toggled">
10534           <return-value transfer-ownership="none">
10535             <type name="none" c:type="void"/>
10536           </return-value>
10537           <parameters>
10538             <parameter name="cell_renderer_toggle" transfer-ownership="none">
10539               <type name="CellRendererToggle" c:type="GtkCellRendererToggle*"/>
10540             </parameter>
10541             <parameter name="path" transfer-ownership="none">
10542               <type name="utf8" c:type="gchar*"/>
10543             </parameter>
10544           </parameters>
10545         </callback>
10546       </field>
10547       <field name="_gtk_reserved1" introspectable="0">
10548         <callback name="_gtk_reserved1">
10549           <return-value transfer-ownership="none">
10550             <type name="none" c:type="void"/>
10551           </return-value>
10552         </callback>
10553       </field>
10554       <field name="_gtk_reserved2" introspectable="0">
10555         <callback name="_gtk_reserved2">
10556           <return-value transfer-ownership="none">
10557             <type name="none" c:type="void"/>
10558           </return-value>
10559         </callback>
10560       </field>
10561       <field name="_gtk_reserved3" introspectable="0">
10562         <callback name="_gtk_reserved3">
10563           <return-value transfer-ownership="none">
10564             <type name="none" c:type="void"/>
10565           </return-value>
10566         </callback>
10567       </field>
10568       <field name="_gtk_reserved4" introspectable="0">
10569         <callback name="_gtk_reserved4">
10570           <return-value transfer-ownership="none">
10571             <type name="none" c:type="void"/>
10572           </return-value>
10573         </callback>
10574       </field>
10575     </record>
10576     <record name="CellRendererTogglePrivate"
10577             c:type="GtkCellRendererTogglePrivate"
10578             disguised="1">
10579     </record>
10580     <interface name="CellSizeRequest"
10581                c:symbol-prefix="cell_size_request"
10582                c:type="GtkCellSizeRequest"
10583                glib:type-name="GtkCellSizeRequest"
10584                glib:get-type="gtk_cell_size_request_get_type"
10585                glib:type-struct="CellSizeRequestIface">
10586       <prerequisite name="CellRenderer"/>
10587       <virtual-method name="get_height" invoker="get_height" version="3.0">
10588         <doc xml:whitespace="preserve">Retreives a renderer's natural size when rendered to @widget.</doc>
10589         <return-value transfer-ownership="none">
10590           <type name="none" c:type="void"/>
10591         </return-value>
10592         <parameters>
10593           <parameter name="widget" transfer-ownership="none">
10594             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10595             <type name="Widget" c:type="GtkWidget*"/>
10596           </parameter>
10597           <parameter name="minimum_size" transfer-ownership="none">
10598             <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10599             <type name="gint" c:type="gint*"/>
10600           </parameter>
10601           <parameter name="natural_size" transfer-ownership="none">
10602             <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10603             <type name="gint" c:type="gint*"/>
10604           </parameter>
10605         </parameters>
10606       </virtual-method>
10607       <virtual-method name="get_height_for_width"
10608                       invoker="get_height_for_width"
10609                       version="3.0">
10610         <doc xml:whitespace="preserve">Retreives a cell renderers's minimum and natural height if it were rendered to</doc>
10611         <return-value transfer-ownership="none">
10612           <type name="none" c:type="void"/>
10613         </return-value>
10614         <parameters>
10615           <parameter name="widget" transfer-ownership="none">
10616             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10617             <type name="Widget" c:type="GtkWidget*"/>
10618           </parameter>
10619           <parameter name="width" transfer-ownership="none">
10620             <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10621             <type name="gint" c:type="gint"/>
10622           </parameter>
10623           <parameter name="minimum_height" transfer-ownership="none">
10624             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10625             <type name="gint" c:type="gint*"/>
10626           </parameter>
10627           <parameter name="natural_height" transfer-ownership="none">
10628             <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10629             <type name="gint" c:type="gint*"/>
10630           </parameter>
10631         </parameters>
10632       </virtual-method>
10633       <virtual-method name="get_request_mode"
10634                       invoker="get_request_mode"
10635                       version="3.0">
10636         <doc xml:whitespace="preserve">Gets whether the cell renderer prefers a height-for-width layout
10637 or a width-for-height layout.</doc>
10638         <return-value transfer-ownership="none">
10639           <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by this renderer.</doc>
10640           <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
10641         </return-value>
10642       </virtual-method>
10643       <virtual-method name="get_width" invoker="get_width" version="3.0">
10644         <doc xml:whitespace="preserve">Retreives a renderer's natural size when rendered to @widget.</doc>
10645         <return-value transfer-ownership="none">
10646           <type name="none" c:type="void"/>
10647         </return-value>
10648         <parameters>
10649           <parameter name="widget" transfer-ownership="none">
10650             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10651             <type name="Widget" c:type="GtkWidget*"/>
10652           </parameter>
10653           <parameter name="minimum_size" transfer-ownership="none">
10654             <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10655             <type name="gint" c:type="gint*"/>
10656           </parameter>
10657           <parameter name="natural_size" transfer-ownership="none">
10658             <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10659             <type name="gint" c:type="gint*"/>
10660           </parameter>
10661         </parameters>
10662       </virtual-method>
10663       <virtual-method name="get_width_for_height"
10664                       invoker="get_width_for_height"
10665                       version="3.0">
10666         <doc xml:whitespace="preserve">Retreives a cell renderers's minimum and natural width if it were rendered to</doc>
10667         <return-value transfer-ownership="none">
10668           <type name="none" c:type="void"/>
10669         </return-value>
10670         <parameters>
10671           <parameter name="widget" transfer-ownership="none">
10672             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10673             <type name="Widget" c:type="GtkWidget*"/>
10674           </parameter>
10675           <parameter name="height" transfer-ownership="none">
10676             <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10677             <type name="gint" c:type="gint"/>
10678           </parameter>
10679           <parameter name="minimum_width" transfer-ownership="none">
10680             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10681             <type name="gint" c:type="gint*"/>
10682           </parameter>
10683           <parameter name="natural_width" transfer-ownership="none">
10684             <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10685             <type name="gint" c:type="gint*"/>
10686           </parameter>
10687         </parameters>
10688       </virtual-method>
10689       <method name="get_height"
10690               c:identifier="gtk_cell_size_request_get_height"
10691               version="3.0">
10692         <doc xml:whitespace="preserve">Retreives a renderer's natural size when rendered to @widget.</doc>
10693         <return-value transfer-ownership="none">
10694           <type name="none" c:type="void"/>
10695         </return-value>
10696         <parameters>
10697           <parameter name="widget" transfer-ownership="none">
10698             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10699             <type name="Widget" c:type="GtkWidget*"/>
10700           </parameter>
10701           <parameter name="minimum_size" transfer-ownership="none">
10702             <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10703             <type name="gint" c:type="gint*"/>
10704           </parameter>
10705           <parameter name="natural_size" transfer-ownership="none">
10706             <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10707             <type name="gint" c:type="gint*"/>
10708           </parameter>
10709         </parameters>
10710       </method>
10711       <method name="get_height_for_width"
10712               c:identifier="gtk_cell_size_request_get_height_for_width"
10713               version="3.0">
10714         <doc xml:whitespace="preserve">Retreives a cell renderers's minimum and natural height if it were rendered to</doc>
10715         <return-value transfer-ownership="none">
10716           <type name="none" c:type="void"/>
10717         </return-value>
10718         <parameters>
10719           <parameter name="widget" transfer-ownership="none">
10720             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10721             <type name="Widget" c:type="GtkWidget*"/>
10722           </parameter>
10723           <parameter name="width" transfer-ownership="none">
10724             <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10725             <type name="gint" c:type="gint"/>
10726           </parameter>
10727           <parameter name="minimum_height" transfer-ownership="none">
10728             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10729             <type name="gint" c:type="gint*"/>
10730           </parameter>
10731           <parameter name="natural_height" transfer-ownership="none">
10732             <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10733             <type name="gint" c:type="gint*"/>
10734           </parameter>
10735         </parameters>
10736       </method>
10737       <method name="get_request_mode"
10738               c:identifier="gtk_cell_size_request_get_request_mode"
10739               version="3.0">
10740         <doc xml:whitespace="preserve">Gets whether the cell renderer prefers a height-for-width layout
10741 or a width-for-height layout.</doc>
10742         <return-value transfer-ownership="none">
10743           <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by this renderer.</doc>
10744           <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
10745         </return-value>
10746       </method>
10747       <method name="get_size"
10748               c:identifier="gtk_cell_size_request_get_size"
10749               version="3.0">
10750         <doc xml:whitespace="preserve">Retrieves the minimum and natural size of a cell taking
10751 into account the widget's preference for height-for-width management.
10752 If request_natural is specified, the non-contextual natural value will
10753 be used to make the contextual request; otherwise the minimum will be used.</doc>
10754         <return-value transfer-ownership="none">
10755           <type name="none" c:type="void"/>
10756         </return-value>
10757         <parameters>
10758           <parameter name="widget" transfer-ownership="none">
10759             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10760             <type name="Widget" c:type="GtkWidget*"/>
10761           </parameter>
10762           <parameter name="minimum_size"
10763                      direction="out"
10764                      caller-allocates="1"
10765                      transfer-ownership="none"
10766                      allow-none="1">
10767             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10768             <type name="Requisition" c:type="GtkRequisition*"/>
10769           </parameter>
10770           <parameter name="natural_size"
10771                      direction="out"
10772                      caller-allocates="1"
10773                      transfer-ownership="none"
10774                      allow-none="1">
10775             <doc xml:whitespace="preserve">location for storing the natural size, or %NULL</doc>
10776             <type name="Requisition" c:type="GtkRequisition*"/>
10777           </parameter>
10778         </parameters>
10779       </method>
10780       <method name="get_width"
10781               c:identifier="gtk_cell_size_request_get_width"
10782               version="3.0">
10783         <doc xml:whitespace="preserve">Retreives a renderer's natural size when rendered to @widget.</doc>
10784         <return-value transfer-ownership="none">
10785           <type name="none" c:type="void"/>
10786         </return-value>
10787         <parameters>
10788           <parameter name="widget" transfer-ownership="none">
10789             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10790             <type name="Widget" c:type="GtkWidget*"/>
10791           </parameter>
10792           <parameter name="minimum_size" transfer-ownership="none">
10793             <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10794             <type name="gint" c:type="gint*"/>
10795           </parameter>
10796           <parameter name="natural_size" transfer-ownership="none">
10797             <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10798             <type name="gint" c:type="gint*"/>
10799           </parameter>
10800         </parameters>
10801       </method>
10802       <method name="get_width_for_height"
10803               c:identifier="gtk_cell_size_request_get_width_for_height"
10804               version="3.0">
10805         <doc xml:whitespace="preserve">Retreives a cell renderers's minimum and natural width if it were rendered to</doc>
10806         <return-value transfer-ownership="none">
10807           <type name="none" c:type="void"/>
10808         </return-value>
10809         <parameters>
10810           <parameter name="widget" transfer-ownership="none">
10811             <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10812             <type name="Widget" c:type="GtkWidget*"/>
10813           </parameter>
10814           <parameter name="height" transfer-ownership="none">
10815             <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10816             <type name="gint" c:type="gint"/>
10817           </parameter>
10818           <parameter name="minimum_width" transfer-ownership="none">
10819             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10820             <type name="gint" c:type="gint*"/>
10821           </parameter>
10822           <parameter name="natural_width" transfer-ownership="none">
10823             <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10824             <type name="gint" c:type="gint*"/>
10825           </parameter>
10826         </parameters>
10827       </method>
10828     </interface>
10829     <record name="CellSizeRequestIface"
10830             c:type="GtkCellSizeRequestIface"
10831             glib:is-gtype-struct-for="CellSizeRequest">
10832       <field name="g_iface">
10833         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
10834       </field>
10835       <field name="get_request_mode">
10836         <callback name="get_request_mode">
10837           <return-value transfer-ownership="none">
10838             <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by this renderer.</doc>
10839             <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
10840           </return-value>
10841           <parameters>
10842             <parameter name="cell" transfer-ownership="none">
10843               <type name="CellSizeRequest" c:type="GtkCellSizeRequest*"/>
10844             </parameter>
10845           </parameters>
10846         </callback>
10847       </field>
10848       <field name="get_width">
10849         <callback name="get_width">
10850           <return-value transfer-ownership="none">
10851             <type name="none" c:type="void"/>
10852           </return-value>
10853           <parameters>
10854             <parameter name="cell" transfer-ownership="none">
10855               <type name="CellSizeRequest" c:type="GtkCellSizeRequest*"/>
10856             </parameter>
10857             <parameter name="widget" transfer-ownership="none">
10858               <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10859               <type name="Widget" c:type="GtkWidget*"/>
10860             </parameter>
10861             <parameter name="minimum_size" transfer-ownership="none">
10862               <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10863               <type name="gint" c:type="gint*"/>
10864             </parameter>
10865             <parameter name="natural_size" transfer-ownership="none">
10866               <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10867               <type name="gint" c:type="gint*"/>
10868             </parameter>
10869           </parameters>
10870         </callback>
10871       </field>
10872       <field name="get_height_for_width">
10873         <callback name="get_height_for_width">
10874           <return-value transfer-ownership="none">
10875             <type name="none" c:type="void"/>
10876           </return-value>
10877           <parameters>
10878             <parameter name="cell" transfer-ownership="none">
10879               <type name="CellSizeRequest" c:type="GtkCellSizeRequest*"/>
10880             </parameter>
10881             <parameter name="widget" transfer-ownership="none">
10882               <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10883               <type name="Widget" c:type="GtkWidget*"/>
10884             </parameter>
10885             <parameter name="width" transfer-ownership="none">
10886               <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10887               <type name="gint" c:type="gint"/>
10888             </parameter>
10889             <parameter name="minimum_height" transfer-ownership="none">
10890               <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10891               <type name="gint" c:type="gint*"/>
10892             </parameter>
10893             <parameter name="natural_height" transfer-ownership="none">
10894               <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10895               <type name="gint" c:type="gint*"/>
10896             </parameter>
10897           </parameters>
10898         </callback>
10899       </field>
10900       <field name="get_height">
10901         <callback name="get_height">
10902           <return-value transfer-ownership="none">
10903             <type name="none" c:type="void"/>
10904           </return-value>
10905           <parameters>
10906             <parameter name="cell" transfer-ownership="none">
10907               <type name="CellSizeRequest" c:type="GtkCellSizeRequest*"/>
10908             </parameter>
10909             <parameter name="widget" transfer-ownership="none">
10910               <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10911               <type name="Widget" c:type="GtkWidget*"/>
10912             </parameter>
10913             <parameter name="minimum_size" transfer-ownership="none">
10914               <doc xml:whitespace="preserve">location to store the minimum size, or %NULL</doc>
10915               <type name="gint" c:type="gint*"/>
10916             </parameter>
10917             <parameter name="natural_size" transfer-ownership="none">
10918               <doc xml:whitespace="preserve">location to store the natural size, or %NULL</doc>
10919               <type name="gint" c:type="gint*"/>
10920             </parameter>
10921           </parameters>
10922         </callback>
10923       </field>
10924       <field name="get_width_for_height">
10925         <callback name="get_width_for_height">
10926           <return-value transfer-ownership="none">
10927             <type name="none" c:type="void"/>
10928           </return-value>
10929           <parameters>
10930             <parameter name="cell" transfer-ownership="none">
10931               <type name="CellSizeRequest" c:type="GtkCellSizeRequest*"/>
10932             </parameter>
10933             <parameter name="widget" transfer-ownership="none">
10934               <doc xml:whitespace="preserve">the #GtkWidget this cell will be rendering to</doc>
10935               <type name="Widget" c:type="GtkWidget*"/>
10936             </parameter>
10937             <parameter name="height" transfer-ownership="none">
10938               <doc xml:whitespace="preserve">the size which is available for allocation</doc>
10939               <type name="gint" c:type="gint"/>
10940             </parameter>
10941             <parameter name="minimum_width" transfer-ownership="none">
10942               <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
10943               <type name="gint" c:type="gint*"/>
10944             </parameter>
10945             <parameter name="natural_width" transfer-ownership="none">
10946               <doc xml:whitespace="preserve">location for storing the preferred size, or %NULL</doc>
10947               <type name="gint" c:type="gint*"/>
10948             </parameter>
10949           </parameters>
10950         </callback>
10951       </field>
10952     </record>
10953     <class name="CellView"
10954            c:symbol-prefix="cell_view"
10955            c:type="GtkCellView"
10956            parent="Widget"
10957            glib:type-name="GtkCellView"
10958            glib:get-type="gtk_cell_view_get_type"
10959            glib:type-struct="CellViewClass">
10960       <implements name="Atk.ImplementorIface"/>
10961       <implements name="Buildable"/>
10962       <implements name="CellLayout"/>
10963       <implements name="SizeRequest"/>
10964       <constructor name="new" c:identifier="gtk_cell_view_new" version="2.6">
10965         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget.</doc>
10966         <return-value transfer-ownership="none">
10967           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
10968           <type name="Widget" c:type="GtkWidget*"/>
10969         </return-value>
10970       </constructor>
10971       <constructor name="new_with_markup"
10972                    c:identifier="gtk_cell_view_new_with_markup"
10973                    version="2.6">
10974         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererText 
10975 to it, and makes it show @markup. The text can be
10976 marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text 
10977 markup language&lt;/link&gt;.</doc>
10978         <return-value transfer-ownership="none">
10979           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
10980           <type name="Widget" c:type="GtkWidget*"/>
10981         </return-value>
10982         <parameters>
10983           <parameter name="markup" transfer-ownership="none">
10984             <doc xml:whitespace="preserve">the text to display in the cell view</doc>
10985             <type name="utf8" c:type="gchar*"/>
10986           </parameter>
10987         </parameters>
10988       </constructor>
10989       <constructor name="new_with_pixbuf"
10990                    c:identifier="gtk_cell_view_new_with_pixbuf"
10991                    version="2.6">
10992         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererPixbuf 
10993 to it, and makes its show @pixbuf.</doc>
10994         <return-value transfer-ownership="none">
10995           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
10996           <type name="Widget" c:type="GtkWidget*"/>
10997         </return-value>
10998         <parameters>
10999           <parameter name="pixbuf" transfer-ownership="none">
11000             <doc xml:whitespace="preserve">the image to display in the cell view</doc>
11001             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
11002           </parameter>
11003         </parameters>
11004       </constructor>
11005       <constructor name="new_with_text"
11006                    c:identifier="gtk_cell_view_new_with_text"
11007                    version="2.6">
11008         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererText 
11009 to it, and makes its show @text.</doc>
11010         <return-value transfer-ownership="none">
11011           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
11012           <type name="Widget" c:type="GtkWidget*"/>
11013         </return-value>
11014         <parameters>
11015           <parameter name="text" transfer-ownership="none">
11016             <doc xml:whitespace="preserve">the text to display in the cell view</doc>
11017             <type name="utf8" c:type="gchar*"/>
11018           </parameter>
11019         </parameters>
11020       </constructor>
11021       <method name="get_desired_height_for_width_of_row"
11022               c:identifier="gtk_cell_view_get_desired_height_for_width_of_row"
11023               version="3.0">
11024         <doc xml:whitespace="preserve">Sets @minimum_size and @natural_size to the height desired by @cell_view 
11025 if it were allocated a width of @avail_size to display the model row 
11026 pointed to by @path.</doc>
11027         <return-value transfer-ownership="none">
11028           <type name="none" c:type="void"/>
11029         </return-value>
11030         <parameters>
11031           <parameter name="path" transfer-ownership="none">
11032             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
11033             <type name="TreePath" c:type="GtkTreePath*"/>
11034           </parameter>
11035           <parameter name="avail_size" transfer-ownership="none">
11036             <doc xml:whitespace="preserve">available width</doc>
11037             <type name="gint" c:type="gint"/>
11038           </parameter>
11039           <parameter name="minimum_size" transfer-ownership="none">
11040             <doc xml:whitespace="preserve">location to store the minimum height</doc>
11041             <type name="gint" c:type="gint*"/>
11042           </parameter>
11043           <parameter name="natural_size" transfer-ownership="none">
11044             <doc xml:whitespace="preserve">location to store the natural height</doc>
11045             <type name="gint" c:type="gint*"/>
11046           </parameter>
11047         </parameters>
11048       </method>
11049       <method name="get_desired_width_of_row"
11050               c:identifier="gtk_cell_view_get_desired_width_of_row"
11051               version="3.0">
11052         <doc xml:whitespace="preserve">Sets @minimum_size and @natural_size to the width desired by @cell_view 
11053 to display the model row pointed to by @path.</doc>
11054         <return-value transfer-ownership="none">
11055           <type name="none" c:type="void"/>
11056         </return-value>
11057         <parameters>
11058           <parameter name="path" transfer-ownership="none">
11059             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
11060             <type name="TreePath" c:type="GtkTreePath*"/>
11061           </parameter>
11062           <parameter name="minimum_size" transfer-ownership="none">
11063             <doc xml:whitespace="preserve">location to store the minimum size</doc>
11064             <type name="gint" c:type="gint*"/>
11065           </parameter>
11066           <parameter name="natural_size" transfer-ownership="none">
11067             <doc xml:whitespace="preserve">location to store the natural size</doc>
11068             <type name="gint" c:type="gint*"/>
11069           </parameter>
11070         </parameters>
11071       </method>
11072       <method name="get_displayed_row"
11073               c:identifier="gtk_cell_view_get_displayed_row"
11074               version="2.6">
11075         <doc xml:whitespace="preserve">Returns a #GtkTreePath referring to the currently 
11076 displayed row. If no row is currently displayed, 
11077 %NULL is returned.</doc>
11078         <return-value transfer-ownership="full">
11079           <doc xml:whitespace="preserve">the currently displayed row or %NULL</doc>
11080           <type name="TreePath" c:type="GtkTreePath*"/>
11081         </return-value>
11082       </method>
11083       <method name="get_model"
11084               c:identifier="gtk_cell_view_get_model"
11085               version="2.16">
11086         <doc xml:whitespace="preserve">Returns the model for @cell_view. If no model is used %NULL is
11087 returned.</doc>
11088         <return-value transfer-ownership="none">
11089           <doc xml:whitespace="preserve">a #GtkTreeModel used or %NULL</doc>
11090           <type name="TreeModel" c:type="GtkTreeModel*"/>
11091         </return-value>
11092       </method>
11093       <method name="get_size_of_row"
11094               c:identifier="gtk_cell_view_get_size_of_row"
11095               version="2.6"
11096               deprecated="Use gtk_cell_view_get_desired_width_of_row() and"
11097               deprecated-version="3.0">
11098         <doc xml:whitespace="preserve">Sets @requisition to the size needed by @cell_view to display 
11099 the model row pointed to by @path.
11100 gtk_cell_view_get_desired_height_for_width_of_row() instead.</doc>
11101         <return-value transfer-ownership="none">
11102           <doc xml:whitespace="preserve">%TRUE</doc>
11103           <type name="gboolean" c:type="gboolean"/>
11104         </return-value>
11105         <parameters>
11106           <parameter name="path" transfer-ownership="none">
11107             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
11108             <type name="TreePath" c:type="GtkTreePath*"/>
11109           </parameter>
11110           <parameter name="requisition" transfer-ownership="none">
11111             <doc xml:whitespace="preserve">return location for the size</doc>
11112             <type name="Requisition" c:type="GtkRequisition*"/>
11113           </parameter>
11114         </parameters>
11115       </method>
11116       <method name="set_background_color"
11117               c:identifier="gtk_cell_view_set_background_color"
11118               version="2.6">
11119         <doc xml:whitespace="preserve">Sets the background color of @view.</doc>
11120         <return-value transfer-ownership="none">
11121           <type name="none" c:type="void"/>
11122         </return-value>
11123         <parameters>
11124           <parameter name="color" transfer-ownership="none">
11125             <doc xml:whitespace="preserve">the new background color</doc>
11126             <type name="Gdk.Color" c:type="GdkColor*"/>
11127           </parameter>
11128         </parameters>
11129       </method>
11130       <method name="set_displayed_row"
11131               c:identifier="gtk_cell_view_set_displayed_row"
11132               version="2.6">
11133         <doc xml:whitespace="preserve">Sets the row of the model that is currently displayed
11134 by the #GtkCellView. If the path is unset, then the
11135 contents of the cellview "stick" at their last value;
11136 this is not normally a desired result, but may be
11137 a needed intermediate state if say, the model for
11138 the #GtkCellView becomes temporarily empty.</doc>
11139         <return-value transfer-ownership="none">
11140           <type name="none" c:type="void"/>
11141         </return-value>
11142         <parameters>
11143           <parameter name="path" transfer-ownership="none" allow-none="1">
11144             <doc xml:whitespace="preserve">a #GtkTreePath or %NULL to unset.</doc>
11145             <type name="TreePath" c:type="GtkTreePath*"/>
11146           </parameter>
11147         </parameters>
11148       </method>
11149       <method name="set_model"
11150               c:identifier="gtk_cell_view_set_model"
11151               version="2.6">
11152         <doc xml:whitespace="preserve">Sets the model for @cell_view.  If @cell_view already has a model
11153 set, it will remove it before setting the new model.  If @model is
11154 %NULL, then it will unset the old model.</doc>
11155         <return-value transfer-ownership="none">
11156           <type name="none" c:type="void"/>
11157         </return-value>
11158         <parameters>
11159           <parameter name="model" transfer-ownership="none" allow-none="1">
11160             <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
11161             <type name="TreeModel" c:type="GtkTreeModel*"/>
11162           </parameter>
11163         </parameters>
11164       </method>
11165       <property name="background"
11166                 readable="0"
11167                 writable="1"
11168                 transfer-ownership="none">
11169         <type name="utf8"/>
11170       </property>
11171       <property name="background-gdk" writable="1" transfer-ownership="none">
11172         <type name="Gdk.Color"/>
11173       </property>
11174       <property name="background-set" writable="1" transfer-ownership="none">
11175         <type name="gboolean"/>
11176       </property>
11177       <property name="model" writable="1" transfer-ownership="none">
11178         <type name="TreeModel"/>
11179       </property>
11180       <field name="parent_instance">
11181         <type name="Widget" c:type="GtkWidget"/>
11182       </field>
11183       <field name="priv">
11184         <type name="CellViewPrivate" c:type="GtkCellViewPrivate*"/>
11185       </field>
11186     </class>
11187     <record name="CellViewClass"
11188             c:type="GtkCellViewClass"
11189             glib:is-gtype-struct-for="CellView">
11190       <field name="parent_class">
11191         <type name="WidgetClass" c:type="GtkWidgetClass"/>
11192       </field>
11193     </record>
11194     <record name="CellViewPrivate" c:type="GtkCellViewPrivate" disguised="1">
11195     </record>
11196     <class name="CheckButton"
11197            c:symbol-prefix="check_button"
11198            c:type="GtkCheckButton"
11199            parent="ToggleButton"
11200            glib:type-name="GtkCheckButton"
11201            glib:get-type="gtk_check_button_get_type"
11202            glib:type-struct="CheckButtonClass">
11203       <implements name="Atk.ImplementorIface"/>
11204       <implements name="Activatable"/>
11205       <implements name="Buildable"/>
11206       <implements name="SizeRequest"/>
11207       <constructor name="new" c:identifier="gtk_check_button_new">
11208         <return-value transfer-ownership="none">
11209           <type name="Widget" c:type="GtkWidget*"/>
11210         </return-value>
11211       </constructor>
11212       <constructor name="new_with_label"
11213                    c:identifier="gtk_check_button_new_with_label">
11214         <return-value transfer-ownership="none">
11215           <type name="Widget" c:type="GtkWidget*"/>
11216         </return-value>
11217         <parameters>
11218           <parameter name="label" transfer-ownership="none">
11219             <type name="utf8" c:type="gchar*"/>
11220           </parameter>
11221         </parameters>
11222       </constructor>
11223       <constructor name="new_with_mnemonic"
11224                    c:identifier="gtk_check_button_new_with_mnemonic">
11225         <doc xml:whitespace="preserve">Creates a new #GtkCheckButton containing a label. The label
11226 will be created using gtk_label_new_with_mnemonic(), so underscores
11227 in @label indicate the mnemonic for the check button.</doc>
11228         <return-value transfer-ownership="none">
11229           <doc xml:whitespace="preserve">a new #GtkCheckButton</doc>
11230           <type name="Widget" c:type="GtkWidget*"/>
11231         </return-value>
11232         <parameters>
11233           <parameter name="label" transfer-ownership="none">
11234             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
11235             <type name="utf8" c:type="gchar*"/>
11236           </parameter>
11237         </parameters>
11238       </constructor>
11239       <virtual-method name="draw_indicator">
11240         <return-value transfer-ownership="none">
11241           <type name="none" c:type="void"/>
11242         </return-value>
11243         <parameters>
11244           <parameter name="area" transfer-ownership="none">
11245             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
11246           </parameter>
11247         </parameters>
11248       </virtual-method>
11249       <field name="toggle_button">
11250         <type name="ToggleButton" c:type="GtkToggleButton"/>
11251       </field>
11252     </class>
11253     <record name="CheckButtonClass"
11254             c:type="GtkCheckButtonClass"
11255             glib:is-gtype-struct-for="CheckButton">
11256       <field name="parent_class">
11257         <type name="ToggleButtonClass" c:type="GtkToggleButtonClass"/>
11258       </field>
11259       <field name="draw_indicator">
11260         <callback name="draw_indicator">
11261           <return-value transfer-ownership="none">
11262             <type name="none" c:type="void"/>
11263           </return-value>
11264           <parameters>
11265             <parameter name="check_button" transfer-ownership="none">
11266               <type name="CheckButton" c:type="GtkCheckButton*"/>
11267             </parameter>
11268             <parameter name="area" transfer-ownership="none">
11269               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
11270             </parameter>
11271           </parameters>
11272         </callback>
11273       </field>
11274       <field name="_gtk_reserved1" introspectable="0">
11275         <callback name="_gtk_reserved1">
11276           <return-value transfer-ownership="none">
11277             <type name="none" c:type="void"/>
11278           </return-value>
11279         </callback>
11280       </field>
11281       <field name="_gtk_reserved2" introspectable="0">
11282         <callback name="_gtk_reserved2">
11283           <return-value transfer-ownership="none">
11284             <type name="none" c:type="void"/>
11285           </return-value>
11286         </callback>
11287       </field>
11288       <field name="_gtk_reserved3" introspectable="0">
11289         <callback name="_gtk_reserved3">
11290           <return-value transfer-ownership="none">
11291             <type name="none" c:type="void"/>
11292           </return-value>
11293         </callback>
11294       </field>
11295       <field name="_gtk_reserved4" introspectable="0">
11296         <callback name="_gtk_reserved4">
11297           <return-value transfer-ownership="none">
11298             <type name="none" c:type="void"/>
11299           </return-value>
11300         </callback>
11301       </field>
11302     </record>
11303     <class name="CheckMenuItem"
11304            c:symbol-prefix="check_menu_item"
11305            c:type="GtkCheckMenuItem"
11306            parent="MenuItem"
11307            glib:type-name="GtkCheckMenuItem"
11308            glib:get-type="gtk_check_menu_item_get_type"
11309            glib:type-struct="CheckMenuItemClass">
11310       <implements name="Atk.ImplementorIface"/>
11311       <implements name="Activatable"/>
11312       <implements name="Buildable"/>
11313       <implements name="SizeRequest"/>
11314       <constructor name="new" c:identifier="gtk_check_menu_item_new">
11315         <return-value transfer-ownership="none">
11316           <type name="Widget" c:type="GtkWidget*"/>
11317         </return-value>
11318       </constructor>
11319       <constructor name="new_with_label"
11320                    c:identifier="gtk_check_menu_item_new_with_label">
11321         <return-value transfer-ownership="none">
11322           <type name="Widget" c:type="GtkWidget*"/>
11323         </return-value>
11324         <parameters>
11325           <parameter name="label" transfer-ownership="none">
11326             <type name="utf8" c:type="gchar*"/>
11327           </parameter>
11328         </parameters>
11329       </constructor>
11330       <constructor name="new_with_mnemonic"
11331                    c:identifier="gtk_check_menu_item_new_with_mnemonic">
11332         <doc xml:whitespace="preserve">Creates a new #GtkCheckMenuItem containing a label. The label
11333 will be created using gtk_label_new_with_mnemonic(), so underscores
11334 in @label indicate the mnemonic for the menu item.</doc>
11335         <return-value transfer-ownership="none">
11336           <doc xml:whitespace="preserve">a new #GtkCheckMenuItem</doc>
11337           <type name="Widget" c:type="GtkWidget*"/>
11338         </return-value>
11339         <parameters>
11340           <parameter name="label" transfer-ownership="none">
11341             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
11342             <type name="utf8" c:type="gchar*"/>
11343           </parameter>
11344         </parameters>
11345       </constructor>
11346       <virtual-method name="draw_indicator">
11347         <return-value transfer-ownership="none">
11348           <type name="none" c:type="void"/>
11349         </return-value>
11350         <parameters>
11351           <parameter name="area" transfer-ownership="none">
11352             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
11353           </parameter>
11354         </parameters>
11355       </virtual-method>
11356       <method name="get_active" c:identifier="gtk_check_menu_item_get_active">
11357         <doc xml:whitespace="preserve">Returns whether the check menu item is active. See
11358 gtk_check_menu_item_set_active ().</doc>
11359         <return-value transfer-ownership="none">
11360           <doc xml:whitespace="preserve">%TRUE if the menu item is checked.</doc>
11361           <type name="gboolean" c:type="gboolean"/>
11362         </return-value>
11363       </method>
11364       <method name="get_draw_as_radio"
11365               c:identifier="gtk_check_menu_item_get_draw_as_radio"
11366               version="2.4">
11367         <doc xml:whitespace="preserve">Returns whether @check_menu_item looks like a #GtkRadioMenuItem</doc>
11368         <return-value transfer-ownership="none">
11369           <doc xml:whitespace="preserve">Whether @check_menu_item looks like a #GtkRadioMenuItem</doc>
11370           <type name="gboolean" c:type="gboolean"/>
11371         </return-value>
11372       </method>
11373       <method name="get_inconsistent"
11374               c:identifier="gtk_check_menu_item_get_inconsistent">
11375         <doc xml:whitespace="preserve">Retrieves the value set by gtk_check_menu_item_set_inconsistent().</doc>
11376         <return-value transfer-ownership="none">
11377           <doc xml:whitespace="preserve">%TRUE if inconsistent</doc>
11378           <type name="gboolean" c:type="gboolean"/>
11379         </return-value>
11380       </method>
11381       <method name="set_active" c:identifier="gtk_check_menu_item_set_active">
11382         <return-value transfer-ownership="none">
11383           <type name="none" c:type="void"/>
11384         </return-value>
11385         <parameters>
11386           <parameter name="is_active" transfer-ownership="none">
11387             <type name="gboolean" c:type="gboolean"/>
11388           </parameter>
11389         </parameters>
11390       </method>
11391       <method name="set_draw_as_radio"
11392               c:identifier="gtk_check_menu_item_set_draw_as_radio"
11393               version="2.4">
11394         <doc xml:whitespace="preserve">Sets whether @check_menu_item is drawn like a #GtkRadioMenuItem</doc>
11395         <return-value transfer-ownership="none">
11396           <type name="none" c:type="void"/>
11397         </return-value>
11398         <parameters>
11399           <parameter name="draw_as_radio" transfer-ownership="none">
11400             <doc xml:whitespace="preserve">whether @check_menu_item is drawn like a #GtkRadioMenuItem</doc>
11401             <type name="gboolean" c:type="gboolean"/>
11402           </parameter>
11403         </parameters>
11404       </method>
11405       <method name="set_inconsistent"
11406               c:identifier="gtk_check_menu_item_set_inconsistent">
11407         <doc xml:whitespace="preserve">If the user has selected a range of elements (such as some text or
11408 spreadsheet cells) that are affected by a boolean setting, and the
11409 current values in that range are inconsistent, you may want to
11410 display the check in an "in between" state. This function turns on
11411 "in between" display.  Normally you would turn off the inconsistent
11412 state again if the user explicitly selects a setting. This has to be
11413 done manually, gtk_check_menu_item_set_inconsistent() only affects
11414 visual appearance, it doesn't affect the semantics of the widget.</doc>
11415         <return-value transfer-ownership="none">
11416           <type name="none" c:type="void"/>
11417         </return-value>
11418         <parameters>
11419           <parameter name="setting" transfer-ownership="none">
11420             <doc xml:whitespace="preserve">%TRUE to display an "inconsistent" third state check</doc>
11421             <type name="gboolean" c:type="gboolean"/>
11422           </parameter>
11423         </parameters>
11424       </method>
11425       <method name="toggled" c:identifier="gtk_check_menu_item_toggled">
11426         <return-value transfer-ownership="none">
11427           <type name="none" c:type="void"/>
11428         </return-value>
11429       </method>
11430       <property name="active" writable="1" transfer-ownership="none">
11431         <type name="gboolean"/>
11432       </property>
11433       <property name="draw-as-radio" writable="1" transfer-ownership="none">
11434         <type name="gboolean"/>
11435       </property>
11436       <property name="inconsistent" writable="1" transfer-ownership="none">
11437         <type name="gboolean"/>
11438       </property>
11439       <field name="menu_item">
11440         <type name="MenuItem" c:type="GtkMenuItem"/>
11441       </field>
11442       <field name="priv" readable="0" private="1">
11443         <type name="CheckMenuItemPrivate" c:type="GtkCheckMenuItemPrivate*"/>
11444       </field>
11445       <glib:signal name="toggled">
11446         <return-value transfer-ownership="none">
11447           <type name="none"/>
11448         </return-value>
11449       </glib:signal>
11450     </class>
11451     <record name="CheckMenuItemClass"
11452             c:type="GtkCheckMenuItemClass"
11453             glib:is-gtype-struct-for="CheckMenuItem">
11454       <field name="parent_class">
11455         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
11456       </field>
11457       <field name="toggled">
11458         <callback name="toggled">
11459           <return-value transfer-ownership="none">
11460             <type name="none" c:type="void"/>
11461           </return-value>
11462           <parameters>
11463             <parameter name="check_menu_item" transfer-ownership="none">
11464               <type name="CheckMenuItem" c:type="GtkCheckMenuItem*"/>
11465             </parameter>
11466           </parameters>
11467         </callback>
11468       </field>
11469       <field name="draw_indicator">
11470         <callback name="draw_indicator">
11471           <return-value transfer-ownership="none">
11472             <type name="none" c:type="void"/>
11473           </return-value>
11474           <parameters>
11475             <parameter name="check_menu_item" transfer-ownership="none">
11476               <type name="CheckMenuItem" c:type="GtkCheckMenuItem*"/>
11477             </parameter>
11478             <parameter name="area" transfer-ownership="none">
11479               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
11480             </parameter>
11481           </parameters>
11482         </callback>
11483       </field>
11484       <field name="_gtk_reserved1" introspectable="0">
11485         <callback name="_gtk_reserved1">
11486           <return-value transfer-ownership="none">
11487             <type name="none" c:type="void"/>
11488           </return-value>
11489         </callback>
11490       </field>
11491       <field name="_gtk_reserved2" introspectable="0">
11492         <callback name="_gtk_reserved2">
11493           <return-value transfer-ownership="none">
11494             <type name="none" c:type="void"/>
11495           </return-value>
11496         </callback>
11497       </field>
11498       <field name="_gtk_reserved3" introspectable="0">
11499         <callback name="_gtk_reserved3">
11500           <return-value transfer-ownership="none">
11501             <type name="none" c:type="void"/>
11502           </return-value>
11503         </callback>
11504       </field>
11505       <field name="_gtk_reserved4" introspectable="0">
11506         <callback name="_gtk_reserved4">
11507           <return-value transfer-ownership="none">
11508             <type name="none" c:type="void"/>
11509           </return-value>
11510         </callback>
11511       </field>
11512     </record>
11513     <record name="CheckMenuItemPrivate"
11514             c:type="GtkCheckMenuItemPrivate"
11515             disguised="1">
11516     </record>
11517     <class name="Clipboard"
11518            c:symbol-prefix="clipboard"
11519            c:type="GtkClipboard"
11520            parent="GObject.Object"
11521            glib:type-name="GtkClipboard"
11522            glib:get-type="gtk_clipboard_get_type">
11523       <function name="get" c:identifier="gtk_clipboard_get">
11524         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection.
11525 See gtk_clipboard_get_for_display() for complete details.
11526 already exists, a new one will be created. Once a clipboard
11527 object has been created, it is persistent and, since it is
11528 owned by GTK+, must not be freed or unreffed.</doc>
11529         <return-value transfer-ownership="none">
11530           <doc xml:whitespace="preserve">the appropriate clipboard object. If no clipboard</doc>
11531           <type name="Clipboard" c:type="GtkClipboard*"/>
11532         </return-value>
11533         <parameters>
11534           <parameter name="selection" transfer-ownership="none">
11535             <doc xml:whitespace="preserve">a #GdkAtom which identifies the clipboard to use</doc>
11536             <type name="Gdk.Atom" c:type="GdkAtom"/>
11537           </parameter>
11538         </parameters>
11539       </function>
11540       <function name="get_for_display"
11541                 c:identifier="gtk_clipboard_get_for_display"
11542                 version="2.2">
11543         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection.
11544 Cut/copy/paste menu items and keyboard shortcuts should use
11545 the default clipboard, returned by passing %GDK_SELECTION_CLIPBOARD for @selection.
11546 (%GDK_NONE is supported as a synonym for GDK_SELECTION_CLIPBOARD
11547 for backwards compatibility reasons.)
11548 The currently-selected object or text should be provided on the clipboard
11549 identified by #GDK_SELECTION_PRIMARY. Cut/copy/paste menu items
11550 conceptually copy the contents of the #GDK_SELECTION_PRIMARY clipboard
11551 to the default clipboard, i.e. they copy the selection to what the
11552 user sees as the clipboard.
11553 (Passing #GDK_NONE is the same as using &lt;literal&gt;gdk_atom_intern
11554 ("CLIPBOARD", FALSE)&lt;/literal&gt;. See &lt;ulink
11555 url="http://www.freedesktop.org/Standards/clipboards-spec"&gt;
11556 http://www.freedesktop.org/Standards/clipboards-spec&lt;/ulink&gt;
11557 for a detailed discussion of the "CLIPBOARD" vs. "PRIMARY"
11558 selections under the X window system. On Win32 the
11559 #GDK_SELECTION_PRIMARY clipboard is essentially ignored.)
11560 It's possible to have arbitrary named clipboards; if you do invent
11561 new clipboards, you should prefix the selection name with an
11562 underscore (because the ICCCM requires that nonstandard atoms are
11563 underscore-prefixed), and namespace it as well. For example,
11564 if your application called "Foo" has a special-purpose
11565 clipboard, you might call it "_FOO_SPECIAL_CLIPBOARD".
11566 clipboard already exists, a new one will
11567 be created. Once a clipboard object has
11568 been created, it is persistent and, since
11569 it is owned by GTK+, must not be freed or
11570 unrefd.</doc>
11571         <return-value transfer-ownership="none">
11572           <doc xml:whitespace="preserve">the appropriate clipboard object. If no</doc>
11573           <type name="Clipboard" c:type="GtkClipboard*"/>
11574         </return-value>
11575         <parameters>
11576           <parameter name="display" transfer-ownership="none">
11577             <doc xml:whitespace="preserve">the display for which the clipboard is to be retrieved or created</doc>
11578             <type name="Gdk.Display" c:type="GdkDisplay*"/>
11579           </parameter>
11580           <parameter name="selection" transfer-ownership="none">
11581             <doc xml:whitespace="preserve">a #GdkAtom which identifies the clipboard to use.</doc>
11582             <type name="Gdk.Atom" c:type="GdkAtom"/>
11583           </parameter>
11584         </parameters>
11585       </function>
11586       <method name="clear" c:identifier="gtk_clipboard_clear">
11587         <doc xml:whitespace="preserve">Clears the contents of the clipboard. Generally this should only
11588 be called between the time you call gtk_clipboard_set_with_owner()
11589 or gtk_clipboard_set_with_data(),
11590 and when the @clear_func you supplied is called. Otherwise, the
11591 clipboard may be owned by someone else.</doc>
11592         <return-value transfer-ownership="none">
11593           <type name="none" c:type="void"/>
11594         </return-value>
11595       </method>
11596       <method name="get_display"
11597               c:identifier="gtk_clipboard_get_display"
11598               version="2.2">
11599         <doc xml:whitespace="preserve">Gets the #GdkDisplay associated with @clipboard</doc>
11600         <return-value transfer-ownership="none">
11601           <doc xml:whitespace="preserve">the #GdkDisplay associated with @clipboard</doc>
11602           <type name="Gdk.Display" c:type="GdkDisplay*"/>
11603         </return-value>
11604       </method>
11605       <method name="get_owner" c:identifier="gtk_clipboard_get_owner">
11606         <doc xml:whitespace="preserve">If the clipboard contents callbacks were set with
11607 gtk_clipboard_set_with_owner(), and the gtk_clipboard_set_with_data() or
11608 gtk_clipboard_clear() has not subsequently called, returns the owner set
11609 by gtk_clipboard_set_with_owner().
11610 otherwise %NULL.</doc>
11611         <return-value transfer-ownership="none">
11612           <doc xml:whitespace="preserve">the owner of the clipboard, if any;</doc>
11613           <type name="GObject.Object" c:type="GObject*"/>
11614         </return-value>
11615       </method>
11616       <method name="request_contents"
11617               c:identifier="gtk_clipboard_request_contents">
11618         <doc xml:whitespace="preserve">Requests the contents of clipboard as the given target.
11619 When the results of the result are later received the supplied callback
11620 will be called.</doc>
11621         <return-value transfer-ownership="none">
11622           <type name="none" c:type="void"/>
11623         </return-value>
11624         <parameters>
11625           <parameter name="target" transfer-ownership="none">
11626             <doc xml:whitespace="preserve">an atom representing the form into which the clipboard owner should convert the selection.</doc>
11627             <type name="Gdk.Atom" c:type="GdkAtom"/>
11628           </parameter>
11629           <parameter name="callback"
11630                      transfer-ownership="none"
11631                      scope="async"
11632                      closure="2">
11633             <doc xml:whitespace="preserve">A function to call when the results are received (or the retrieval fails). If the retrieval fails the length field of</doc>
11634             <type name="ClipboardReceivedFunc"
11635                   c:type="GtkClipboardReceivedFunc"/>
11636           </parameter>
11637           <parameter name="user_data" transfer-ownership="none">
11638             <doc xml:whitespace="preserve">user data to pass to @callback</doc>
11639             <type name="gpointer" c:type="gpointer"/>
11640           </parameter>
11641         </parameters>
11642       </method>
11643       <method name="request_image"
11644               c:identifier="gtk_clipboard_request_image"
11645               version="2.6">
11646         <doc xml:whitespace="preserve">Requests the contents of the clipboard as image. When the image is
11647 later received, it will be converted to a #GdkPixbuf, and
11648 The @pixbuf parameter to @callback will contain the resulting
11649 #GdkPixbuf if the request succeeded, or %NULL if it failed. This
11650 could happen for various reasons, in particular if the clipboard
11651 was empty or if the contents of the clipboard could not be
11652 converted into an image.</doc>
11653         <return-value transfer-ownership="none">
11654           <type name="none" c:type="void"/>
11655         </return-value>
11656         <parameters>
11657           <parameter name="callback"
11658                      transfer-ownership="none"
11659                      scope="async"
11660                      closure="1">
11661             <doc xml:whitespace="preserve">a function to call when the image is received, or the retrieval fails. (It will always be called one way or the other.)</doc>
11662             <type name="ClipboardImageReceivedFunc"
11663                   c:type="GtkClipboardImageReceivedFunc"/>
11664           </parameter>
11665           <parameter name="user_data" transfer-ownership="none">
11666             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
11667             <type name="gpointer" c:type="gpointer"/>
11668           </parameter>
11669         </parameters>
11670       </method>
11671       <method name="request_rich_text"
11672               c:identifier="gtk_clipboard_request_rich_text"
11673               version="2.10">
11674         <doc xml:whitespace="preserve">Requests the contents of the clipboard as rich text. When the rich
11675 text is later received, @callback will be called.
11676 The @text parameter to @callback will contain the resulting rich
11677 text if the request succeeded, or %NULL if it failed. The @length
11678 parameter will contain @text's length. This function can fail for
11679 various reasons, in particular if the clipboard was empty or if the
11680 contents of the clipboard could not be converted into rich text form.</doc>
11681         <return-value transfer-ownership="none">
11682           <type name="none" c:type="void"/>
11683         </return-value>
11684         <parameters>
11685           <parameter name="buffer" transfer-ownership="none">
11686             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
11687             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
11688           </parameter>
11689           <parameter name="callback"
11690                      transfer-ownership="none"
11691                      scope="async"
11692                      closure="2">
11693             <doc xml:whitespace="preserve">a function to call when the text is received, or the retrieval fails. (It will always be called one way or the other.)</doc>
11694             <type name="ClipboardRichTextReceivedFunc"
11695                   c:type="GtkClipboardRichTextReceivedFunc"/>
11696           </parameter>
11697           <parameter name="user_data" transfer-ownership="none">
11698             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
11699             <type name="gpointer" c:type="gpointer"/>
11700           </parameter>
11701         </parameters>
11702       </method>
11703       <method name="request_targets"
11704               c:identifier="gtk_clipboard_request_targets"
11705               version="2.4">
11706         <doc xml:whitespace="preserve">Requests the contents of the clipboard as list of supported targets.
11707 When the list is later received, @callback will be called.
11708 The @targets parameter to @callback will contain the resulting targets if
11709 the request succeeded, or %NULL if it failed.</doc>
11710         <return-value transfer-ownership="none">
11711           <type name="none" c:type="void"/>
11712         </return-value>
11713         <parameters>
11714           <parameter name="callback"
11715                      transfer-ownership="none"
11716                      scope="async"
11717                      closure="1">
11718             <doc xml:whitespace="preserve">a function to call when the targets are received, or the retrieval fails. (It will always be called one way or the other.)</doc>
11719             <type name="ClipboardTargetsReceivedFunc"
11720                   c:type="GtkClipboardTargetsReceivedFunc"/>
11721           </parameter>
11722           <parameter name="user_data" transfer-ownership="none">
11723             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
11724             <type name="gpointer" c:type="gpointer"/>
11725           </parameter>
11726         </parameters>
11727       </method>
11728       <method name="request_text" c:identifier="gtk_clipboard_request_text">
11729         <doc xml:whitespace="preserve">Requests the contents of the clipboard as text. When the text is
11730 later received, it will be converted to UTF-8 if necessary, and
11731 The @text parameter to @callback will contain the resulting text if
11732 the request succeeded, or %NULL if it failed. This could happen for
11733 various reasons, in particular if the clipboard was empty or if the
11734 contents of the clipboard could not be converted into text form.</doc>
11735         <return-value transfer-ownership="none">
11736           <type name="none" c:type="void"/>
11737         </return-value>
11738         <parameters>
11739           <parameter name="callback"
11740                      transfer-ownership="none"
11741                      scope="async"
11742                      closure="1">
11743             <doc xml:whitespace="preserve">a function to call when the text is received, or the retrieval fails. (It will always be called one way or the other.)</doc>
11744             <type name="ClipboardTextReceivedFunc"
11745                   c:type="GtkClipboardTextReceivedFunc"/>
11746           </parameter>
11747           <parameter name="user_data" transfer-ownership="none">
11748             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
11749             <type name="gpointer" c:type="gpointer"/>
11750           </parameter>
11751         </parameters>
11752       </method>
11753       <method name="request_uris"
11754               c:identifier="gtk_clipboard_request_uris"
11755               version="2.14">
11756         <doc xml:whitespace="preserve">Requests the contents of the clipboard as URIs. When the URIs are
11757 later received @callback will be called.
11758 The @uris parameter to @callback will contain the resulting array of
11759 URIs if the request succeeded, or %NULL if it failed. This could happen
11760 for various reasons, in particular if the clipboard was empty or if the
11761 contents of the clipboard could not be converted into URI form.</doc>
11762         <return-value transfer-ownership="none">
11763           <type name="none" c:type="void"/>
11764         </return-value>
11765         <parameters>
11766           <parameter name="callback"
11767                      transfer-ownership="none"
11768                      scope="async"
11769                      closure="1">
11770             <doc xml:whitespace="preserve">a function to call when the URIs are received, or the retrieval fails. (It will always be called one way or the other.)</doc>
11771             <type name="ClipboardURIReceivedFunc"
11772                   c:type="GtkClipboardURIReceivedFunc"/>
11773           </parameter>
11774           <parameter name="user_data" transfer-ownership="none">
11775             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
11776             <type name="gpointer" c:type="gpointer"/>
11777           </parameter>
11778         </parameters>
11779       </method>
11780       <method name="set_can_store"
11781               c:identifier="gtk_clipboard_set_can_store"
11782               version="2.6">
11783         <doc xml:whitespace="preserve">Hints that the clipboard data should be stored somewhere when the
11784 application exits or when gtk_clipboard_store () is called.
11785 This value is reset when the clipboard owner changes.
11786 Where the clipboard data is stored is platform dependent,
11787 see gdk_display_store_clipboard () for more information.</doc>
11788         <return-value transfer-ownership="none">
11789           <type name="none" c:type="void"/>
11790         </return-value>
11791         <parameters>
11792           <parameter name="targets" transfer-ownership="none" allow-none="1">
11793             <doc xml:whitespace="preserve">array containing information about which forms should be stored or %NULL to indicate that all forms should be stored.</doc>
11794             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
11795           </parameter>
11796           <parameter name="n_targets" transfer-ownership="none">
11797             <doc xml:whitespace="preserve">number of elements in @targets</doc>
11798             <type name="gint" c:type="gint"/>
11799           </parameter>
11800         </parameters>
11801       </method>
11802       <method name="set_image"
11803               c:identifier="gtk_clipboard_set_image"
11804               version="2.6">
11805         <doc xml:whitespace="preserve">Sets the contents of the clipboard to the given #GdkPixbuf. 
11806 GTK+ will take responsibility for responding for requests 
11807 for the image, and for converting the image into the 
11808 requested format.</doc>
11809         <return-value transfer-ownership="none">
11810           <type name="none" c:type="void"/>
11811         </return-value>
11812         <parameters>
11813           <parameter name="pixbuf" transfer-ownership="none">
11814             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
11815             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
11816           </parameter>
11817         </parameters>
11818       </method>
11819       <method name="set_text" c:identifier="gtk_clipboard_set_text">
11820         <doc xml:whitespace="preserve">Sets the contents of the clipboard to the given UTF-8 string. GTK+ will
11821 make a copy of the text and take responsibility for responding
11822 for requests for the text, and for converting the text into
11823 the requested format.</doc>
11824         <return-value transfer-ownership="none">
11825           <type name="none" c:type="void"/>
11826         </return-value>
11827         <parameters>
11828           <parameter name="text" transfer-ownership="none">
11829             <doc xml:whitespace="preserve">a UTF-8 string.</doc>
11830             <type name="utf8" c:type="gchar*"/>
11831           </parameter>
11832           <parameter name="len" transfer-ownership="none">
11833             <doc xml:whitespace="preserve">length of @text, in bytes, or -1, in which case the length will be determined with &lt;function&gt;strlen()&lt;/function&gt;.</doc>
11834             <type name="gint" c:type="gint"/>
11835           </parameter>
11836         </parameters>
11837       </method>
11838       <method name="set_with_data" c:identifier="gtk_clipboard_set_with_data">
11839         <doc xml:whitespace="preserve">Virtually sets the contents of the specified clipboard by providing
11840 a list of supported formats for the clipboard data and a function
11841 to call to get the actual data when it is requested.
11842 If setting the clipboard data failed the provided callback
11843 functions will be ignored.</doc>
11844         <return-value transfer-ownership="none">
11845           <doc xml:whitespace="preserve">%TRUE if setting the clipboard data succeeded.</doc>
11846           <type name="gboolean" c:type="gboolean"/>
11847         </return-value>
11848         <parameters>
11849           <parameter name="targets" transfer-ownership="none">
11850             <doc xml:whitespace="preserve">array containing information about the available forms for the clipboard data</doc>
11851             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
11852           </parameter>
11853           <parameter name="n_targets" transfer-ownership="none">
11854             <doc xml:whitespace="preserve">number of elements in @targets</doc>
11855             <type name="guint" c:type="guint"/>
11856           </parameter>
11857           <parameter name="get_func" transfer-ownership="none" scope="async">
11858             <doc xml:whitespace="preserve">function to call to get the actual clipboard data</doc>
11859             <type name="ClipboardGetFunc" c:type="GtkClipboardGetFunc"/>
11860           </parameter>
11861           <parameter name="clear_func"
11862                      transfer-ownership="none"
11863                      scope="async"
11864                      closure="4">
11865             <doc xml:whitespace="preserve">when the clipboard contents are set again, this function will be called, and @get_func will not be subsequently called.</doc>
11866             <type name="ClipboardClearFunc" c:type="GtkClipboardClearFunc"/>
11867           </parameter>
11868           <parameter name="user_data" transfer-ownership="none">
11869             <doc xml:whitespace="preserve">user data to pass to @get_func and @clear_func.</doc>
11870             <type name="gpointer" c:type="gpointer"/>
11871           </parameter>
11872         </parameters>
11873       </method>
11874       <method name="set_with_owner"
11875               c:identifier="gtk_clipboard_set_with_owner">
11876         <doc xml:whitespace="preserve">Virtually sets the contents of the specified clipboard by providing
11877 a list of supported formats for the clipboard data and a function
11878 to call to get the actual data when it is requested.
11879 The difference between this function and gtk_clipboard_set_with_data()
11880 is that instead of an generic @user_data pointer, a #GObject is passed
11881 in.
11882 If setting the clipboard data failed the provided callback
11883 functions will be ignored.</doc>
11884         <return-value transfer-ownership="none">
11885           <doc xml:whitespace="preserve">%TRUE if setting the clipboard data succeeded.</doc>
11886           <type name="gboolean" c:type="gboolean"/>
11887         </return-value>
11888         <parameters>
11889           <parameter name="targets" transfer-ownership="none">
11890             <doc xml:whitespace="preserve">array containing information about the available forms for the clipboard data</doc>
11891             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
11892           </parameter>
11893           <parameter name="n_targets" transfer-ownership="none">
11894             <doc xml:whitespace="preserve">number of elements in @targets</doc>
11895             <type name="guint" c:type="guint"/>
11896           </parameter>
11897           <parameter name="get_func" transfer-ownership="none" scope="async">
11898             <doc xml:whitespace="preserve">function to call to get the actual clipboard data</doc>
11899             <type name="ClipboardGetFunc" c:type="GtkClipboardGetFunc"/>
11900           </parameter>
11901           <parameter name="clear_func" transfer-ownership="none" scope="async">
11902             <doc xml:whitespace="preserve">when the clipboard contents are set again, this function will be called, and @get_func will not be subsequently called</doc>
11903             <type name="ClipboardClearFunc" c:type="GtkClipboardClearFunc"/>
11904           </parameter>
11905           <parameter name="owner" transfer-ownership="none">
11906             <doc xml:whitespace="preserve">an object that "owns" the data. This object will be passed to the callbacks when called</doc>
11907             <type name="GObject.Object" c:type="GObject*"/>
11908           </parameter>
11909         </parameters>
11910       </method>
11911       <method name="store" c:identifier="gtk_clipboard_store" version="2.6">
11912         <doc xml:whitespace="preserve">Stores the current clipboard data somewhere so that it will stay
11913 around after the application has quit.</doc>
11914         <return-value transfer-ownership="none">
11915           <type name="none" c:type="void"/>
11916         </return-value>
11917       </method>
11918       <method name="wait_for_contents"
11919               c:identifier="gtk_clipboard_wait_for_contents">
11920         <doc xml:whitespace="preserve">Requests the contents of the clipboard using the given target.
11921 This function waits for the data to be received using the main 
11922 loop, so events, timeouts, etc, may be dispatched during the wait.
11923 if retrieving the given target failed. If non-%NULL,
11924 this value must be freed with gtk_selection_data_free() 
11925 when you are finished with it.</doc>
11926         <return-value transfer-ownership="full">
11927           <doc xml:whitespace="preserve">a newly-allocated #GtkSelectionData object or %NULL</doc>
11928           <type name="SelectionData" c:type="GtkSelectionData*"/>
11929         </return-value>
11930         <parameters>
11931           <parameter name="target" transfer-ownership="none">
11932             <doc xml:whitespace="preserve">an atom representing the form into which the clipboard owner should convert the selection.</doc>
11933             <type name="Gdk.Atom" c:type="GdkAtom"/>
11934           </parameter>
11935         </parameters>
11936       </method>
11937       <method name="wait_for_image"
11938               c:identifier="gtk_clipboard_wait_for_image"
11939               version="2.6">
11940         <doc xml:whitespace="preserve">Requests the contents of the clipboard as image and converts
11941 the result to a #GdkPixbuf. This function waits for
11942 the data to be received using the main loop, so events,
11943 timeouts, etc, may be dispatched during the wait.
11944 object which must be disposed with g_object_unref(), or
11945 %NULL if retrieving the selection data failed. (This could
11946 happen for various reasons, in particular if the clipboard
11947 was empty or if the contents of the clipboard could not be
11948 converted into an image.)</doc>
11949         <return-value transfer-ownership="full">
11950           <doc xml:whitespace="preserve">a newly-allocated #GdkPixbuf</doc>
11951           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
11952         </return-value>
11953       </method>
11954       <method name="wait_for_rich_text"
11955               c:identifier="gtk_clipboard_wait_for_rich_text"
11956               version="2.10">
11957         <doc xml:whitespace="preserve">Requests the contents of the clipboard as rich text.  This function
11958 waits for the data to be received using the main loop, so events,
11959 timeouts, etc, may be dispatched during the wait.
11960 be freed with g_free(), or %NULL if retrieving
11961 the selection data failed. (This could happen
11962 for various reasons, in particular if the
11963 clipboard was empty or if the contents of the
11964 clipboard could not be converted into text form.)</doc>
11965         <return-value transfer-ownership="none">
11966           <doc xml:whitespace="preserve">a newly-allocated binary block of data which must</doc>
11967           <type name="guint8" c:type="guint8*"/>
11968         </return-value>
11969         <parameters>
11970           <parameter name="buffer" transfer-ownership="none">
11971             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
11972             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
11973           </parameter>
11974           <parameter name="format" transfer-ownership="none">
11975             <doc xml:whitespace="preserve">return location for the format of the returned data</doc>
11976             <type name="Gdk.Atom" c:type="GdkAtom*"/>
11977           </parameter>
11978           <parameter name="length" transfer-ownership="none">
11979             <doc xml:whitespace="preserve">return location for the length of the returned data</doc>
11980             <type name="gulong" c:type="gsize*"/>
11981           </parameter>
11982         </parameters>
11983       </method>
11984       <method name="wait_for_targets"
11985               c:identifier="gtk_clipboard_wait_for_targets">
11986         <return-value transfer-ownership="none">
11987           <type name="gboolean" c:type="gboolean"/>
11988         </return-value>
11989         <parameters>
11990           <parameter name="targets" transfer-ownership="none">
11991             <type name="Gdk.Atom" c:type="GdkAtom**"/>
11992           </parameter>
11993           <parameter name="n_targets" transfer-ownership="none">
11994             <type name="gint" c:type="gint*"/>
11995           </parameter>
11996         </parameters>
11997       </method>
11998       <method name="wait_for_text" c:identifier="gtk_clipboard_wait_for_text">
11999         <doc xml:whitespace="preserve">Requests the contents of the clipboard as text and converts
12000 the result to UTF-8 if necessary. This function waits for
12001 the data to be received using the main loop, so events,
12002 timeouts, etc, may be dispatched during the wait.
12003 be freed with g_free(), or %NULL if retrieving
12004 the selection data failed. (This could happen
12005 for various reasons, in particular if the
12006 clipboard was empty or if the contents of the
12007 clipboard could not be converted into text form.)</doc>
12008         <return-value transfer-ownership="full">
12009           <doc xml:whitespace="preserve">a newly-allocated UTF-8 string which must</doc>
12010           <type name="utf8" c:type="gchar*"/>
12011         </return-value>
12012       </method>
12013       <method name="wait_for_uris"
12014               c:identifier="gtk_clipboard_wait_for_uris"
12015               version="2.14">
12016         <doc xml:whitespace="preserve">Requests the contents of the clipboard as URIs. This function waits
12017 for the data to be received using the main loop, so events,
12018 timeouts, etc, may be dispatched during the wait.
12019 %NULL-terminated array of strings which must
12020 be freed with g_strfreev(), or %NULL if
12021 retrieving the selection data failed. (This
12022 could happen for various reasons, in particular
12023 if the clipboard was empty or if the contents of
12024 the clipboard could not be converted into URI form.)</doc>
12025         <return-value transfer-ownership="full">
12026           <doc xml:whitespace="preserve">a newly-allocated</doc>
12027           <array c:type="gchar**">
12028             <type name="utf8"/>
12029           </array>
12030         </return-value>
12031       </method>
12032       <method name="wait_is_image_available"
12033               c:identifier="gtk_clipboard_wait_is_image_available"
12034               version="2.6">
12035         <doc xml:whitespace="preserve">Test to see if there is an image available to be pasted
12036 This is done by requesting the TARGETS atom and checking
12037 if it contains any of the supported image targets. This function 
12038 waits for the data to be received using the main loop, so events, 
12039 timeouts, etc, may be dispatched during the wait.
12040 This function is a little faster than calling
12041 gtk_clipboard_wait_for_image() since it doesn't need to retrieve
12042 the actual image data.</doc>
12043         <return-value transfer-ownership="none">
12044           <doc xml:whitespace="preserve">%TRUE is there is an image available, %FALSE otherwise.</doc>
12045           <type name="gboolean" c:type="gboolean"/>
12046         </return-value>
12047       </method>
12048       <method name="wait_is_rich_text_available"
12049               c:identifier="gtk_clipboard_wait_is_rich_text_available"
12050               version="2.10">
12051         <doc xml:whitespace="preserve">Test to see if there is rich text available to be pasted
12052 This is done by requesting the TARGETS atom and checking
12053 if it contains any of the supported rich text targets. This function
12054 waits for the data to be received using the main loop, so events,
12055 timeouts, etc, may be dispatched during the wait.
12056 This function is a little faster than calling
12057 gtk_clipboard_wait_for_rich_text() since it doesn't need to retrieve
12058 the actual text.</doc>
12059         <return-value transfer-ownership="none">
12060           <doc xml:whitespace="preserve">%TRUE is there is rich text available, %FALSE otherwise.</doc>
12061           <type name="gboolean" c:type="gboolean"/>
12062         </return-value>
12063         <parameters>
12064           <parameter name="buffer" transfer-ownership="none">
12065             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
12066             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
12067           </parameter>
12068         </parameters>
12069       </method>
12070       <method name="wait_is_target_available"
12071               c:identifier="gtk_clipboard_wait_is_target_available"
12072               version="2.6">
12073         <doc xml:whitespace="preserve">Checks if a clipboard supports pasting data of a given type. This
12074 function can be used to determine if a "Paste" menu item should be
12075 insensitive or not.
12076 If you want to see if there's text available on the clipboard, use
12077 gtk_clipboard_wait_is_text_available () instead.</doc>
12078         <return-value transfer-ownership="none">
12079           <doc xml:whitespace="preserve">%TRUE if the target is available, %FALSE otherwise.</doc>
12080           <type name="gboolean" c:type="gboolean"/>
12081         </return-value>
12082         <parameters>
12083           <parameter name="target" transfer-ownership="none">
12084             <doc xml:whitespace="preserve">A #GdkAtom indicating which target to look for.</doc>
12085             <type name="Gdk.Atom" c:type="GdkAtom"/>
12086           </parameter>
12087         </parameters>
12088       </method>
12089       <method name="wait_is_text_available"
12090               c:identifier="gtk_clipboard_wait_is_text_available">
12091         <doc xml:whitespace="preserve">Test to see if there is text available to be pasted
12092 This is done by requesting the TARGETS atom and checking
12093 if it contains any of the supported text targets. This function 
12094 waits for the data to be received using the main loop, so events, 
12095 timeouts, etc, may be dispatched during the wait.
12096 This function is a little faster than calling
12097 gtk_clipboard_wait_for_text() since it doesn't need to retrieve
12098 the actual text.</doc>
12099         <return-value transfer-ownership="none">
12100           <doc xml:whitespace="preserve">%TRUE is there is text available, %FALSE otherwise.</doc>
12101           <type name="gboolean" c:type="gboolean"/>
12102         </return-value>
12103       </method>
12104       <method name="wait_is_uris_available"
12105               c:identifier="gtk_clipboard_wait_is_uris_available"
12106               version="2.14">
12107         <doc xml:whitespace="preserve">Test to see if there is a list of URIs available to be pasted
12108 This is done by requesting the TARGETS atom and checking
12109 if it contains the URI targets. This function
12110 waits for the data to be received using the main loop, so events, 
12111 timeouts, etc, may be dispatched during the wait.
12112 This function is a little faster than calling
12113 gtk_clipboard_wait_for_uris() since it doesn't need to retrieve
12114 the actual URI data.</doc>
12115         <return-value transfer-ownership="none">
12116           <doc xml:whitespace="preserve">%TRUE is there is an URI list available, %FALSE otherwise.</doc>
12117           <type name="gboolean" c:type="gboolean"/>
12118         </return-value>
12119       </method>
12120       <glib:signal name="owner-change" version="2.6">
12121         <doc xml:whitespace="preserve">The ::owner-change signal is emitted when GTK+ receives an
12122 event that indicates that the ownership of the selection 
12123 associated with @clipboard has changed.</doc>
12124         <return-value transfer-ownership="none">
12125           <type name="none"/>
12126         </return-value>
12127         <parameters>
12128           <parameter name="object" transfer-ownership="none">
12129             <doc xml:whitespace="preserve">the @GdkEventOwnerChange event</doc>
12130             <type name="Gdk.Event"/>
12131           </parameter>
12132         </parameters>
12133       </glib:signal>
12134     </class>
12135     <callback name="ClipboardClearFunc" c:type="GtkClipboardClearFunc">
12136       <return-value transfer-ownership="none">
12137         <type name="none" c:type="void"/>
12138       </return-value>
12139       <parameters>
12140         <parameter name="clipboard" transfer-ownership="none">
12141           <type name="Clipboard" c:type="GtkClipboard*"/>
12142         </parameter>
12143         <parameter name="user_data_or_owner" transfer-ownership="none">
12144           <type name="gpointer" c:type="gpointer"/>
12145         </parameter>
12146       </parameters>
12147     </callback>
12148     <callback name="ClipboardGetFunc" c:type="GtkClipboardGetFunc">
12149       <return-value transfer-ownership="none">
12150         <type name="none" c:type="void"/>
12151       </return-value>
12152       <parameters>
12153         <parameter name="clipboard" transfer-ownership="none">
12154           <type name="Clipboard" c:type="GtkClipboard*"/>
12155         </parameter>
12156         <parameter name="selection_data" transfer-ownership="none">
12157           <type name="SelectionData" c:type="GtkSelectionData*"/>
12158         </parameter>
12159         <parameter name="info" transfer-ownership="none">
12160           <type name="guint" c:type="guint"/>
12161         </parameter>
12162         <parameter name="user_data_or_owner" transfer-ownership="none">
12163           <type name="gpointer" c:type="gpointer"/>
12164         </parameter>
12165       </parameters>
12166     </callback>
12167     <callback name="ClipboardImageReceivedFunc"
12168               c:type="GtkClipboardImageReceivedFunc">
12169       <return-value transfer-ownership="none">
12170         <type name="none" c:type="void"/>
12171       </return-value>
12172       <parameters>
12173         <parameter name="clipboard" transfer-ownership="none">
12174           <type name="Clipboard" c:type="GtkClipboard*"/>
12175         </parameter>
12176         <parameter name="pixbuf" transfer-ownership="none">
12177           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
12178         </parameter>
12179         <parameter name="data" transfer-ownership="none">
12180           <type name="gpointer" c:type="gpointer"/>
12181         </parameter>
12182       </parameters>
12183     </callback>
12184     <callback name="ClipboardReceivedFunc" c:type="GtkClipboardReceivedFunc">
12185       <return-value transfer-ownership="none">
12186         <type name="none" c:type="void"/>
12187       </return-value>
12188       <parameters>
12189         <parameter name="clipboard" transfer-ownership="none">
12190           <type name="Clipboard" c:type="GtkClipboard*"/>
12191         </parameter>
12192         <parameter name="selection_data" transfer-ownership="none">
12193           <type name="SelectionData" c:type="GtkSelectionData*"/>
12194         </parameter>
12195         <parameter name="data" transfer-ownership="none">
12196           <type name="gpointer" c:type="gpointer"/>
12197         </parameter>
12198       </parameters>
12199     </callback>
12200     <callback name="ClipboardRichTextReceivedFunc"
12201               c:type="GtkClipboardRichTextReceivedFunc">
12202       <return-value transfer-ownership="none">
12203         <type name="none" c:type="void"/>
12204       </return-value>
12205       <parameters>
12206         <parameter name="clipboard" transfer-ownership="none">
12207           <type name="Clipboard" c:type="GtkClipboard*"/>
12208         </parameter>
12209         <parameter name="format" transfer-ownership="none">
12210           <type name="Gdk.Atom" c:type="GdkAtom"/>
12211         </parameter>
12212         <parameter name="text" transfer-ownership="none">
12213           <type name="guint8" c:type="guint8*"/>
12214         </parameter>
12215         <parameter name="length" transfer-ownership="none">
12216           <type name="gulong" c:type="gsize"/>
12217         </parameter>
12218         <parameter name="data" transfer-ownership="none">
12219           <type name="gpointer" c:type="gpointer"/>
12220         </parameter>
12221       </parameters>
12222     </callback>
12223     <callback name="ClipboardTargetsReceivedFunc"
12224               c:type="GtkClipboardTargetsReceivedFunc">
12225       <return-value transfer-ownership="none">
12226         <type name="none" c:type="void"/>
12227       </return-value>
12228       <parameters>
12229         <parameter name="clipboard" transfer-ownership="none">
12230           <type name="Clipboard" c:type="GtkClipboard*"/>
12231         </parameter>
12232         <parameter name="atoms" transfer-ownership="none">
12233           <type name="Gdk.Atom" c:type="GdkAtom*"/>
12234         </parameter>
12235         <parameter name="n_atoms" transfer-ownership="none">
12236           <type name="gint" c:type="gint"/>
12237         </parameter>
12238         <parameter name="data" transfer-ownership="none">
12239           <type name="gpointer" c:type="gpointer"/>
12240         </parameter>
12241       </parameters>
12242     </callback>
12243     <callback name="ClipboardTextReceivedFunc"
12244               c:type="GtkClipboardTextReceivedFunc">
12245       <return-value transfer-ownership="none">
12246         <type name="none" c:type="void"/>
12247       </return-value>
12248       <parameters>
12249         <parameter name="clipboard" transfer-ownership="none">
12250           <type name="Clipboard" c:type="GtkClipboard*"/>
12251         </parameter>
12252         <parameter name="text" transfer-ownership="none">
12253           <type name="utf8" c:type="gchar*"/>
12254         </parameter>
12255         <parameter name="data" transfer-ownership="none">
12256           <type name="gpointer" c:type="gpointer"/>
12257         </parameter>
12258       </parameters>
12259     </callback>
12260     <callback name="ClipboardURIReceivedFunc"
12261               c:type="GtkClipboardURIReceivedFunc">
12262       <return-value transfer-ownership="none">
12263         <type name="none" c:type="void"/>
12264       </return-value>
12265       <parameters>
12266         <parameter name="clipboard" transfer-ownership="none">
12267           <type name="Clipboard" c:type="GtkClipboard*"/>
12268         </parameter>
12269         <parameter name="uris" transfer-ownership="none">
12270           <type name="utf8" c:type="gchar**"/>
12271         </parameter>
12272         <parameter name="data" transfer-ownership="none">
12273           <type name="gpointer" c:type="gpointer"/>
12274         </parameter>
12275       </parameters>
12276     </callback>
12277     <class name="ColorButton"
12278            c:symbol-prefix="color_button"
12279            c:type="GtkColorButton"
12280            parent="Button"
12281            glib:type-name="GtkColorButton"
12282            glib:get-type="gtk_color_button_get_type"
12283            glib:type-struct="ColorButtonClass">
12284       <implements name="Atk.ImplementorIface"/>
12285       <implements name="Activatable"/>
12286       <implements name="Buildable"/>
12287       <implements name="SizeRequest"/>
12288       <constructor name="new"
12289                    c:identifier="gtk_color_button_new"
12290                    version="2.4">
12291         <doc xml:whitespace="preserve">Creates a new color button. This returns a widget in the form of
12292 a small button containing a swatch representing the current selected 
12293 color. When the button is clicked, a color-selection dialog will open, 
12294 allowing the user to select a color. The swatch will be updated to reflect 
12295 the new color when the user finishes.</doc>
12296         <return-value transfer-ownership="none">
12297           <doc xml:whitespace="preserve">a new color button.</doc>
12298           <type name="Widget" c:type="GtkWidget*"/>
12299         </return-value>
12300       </constructor>
12301       <constructor name="new_with_color"
12302                    c:identifier="gtk_color_button_new_with_color"
12303                    version="2.4">
12304         <doc xml:whitespace="preserve">Creates a new color button.</doc>
12305         <return-value transfer-ownership="none">
12306           <doc xml:whitespace="preserve">a new color button.</doc>
12307           <type name="Widget" c:type="GtkWidget*"/>
12308         </return-value>
12309         <parameters>
12310           <parameter name="color" transfer-ownership="none">
12311             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
12312             <type name="Gdk.Color" c:type="GdkColor*"/>
12313           </parameter>
12314         </parameters>
12315       </constructor>
12316       <method name="get_alpha"
12317               c:identifier="gtk_color_button_get_alpha"
12318               version="2.4">
12319         <doc xml:whitespace="preserve">Returns the current alpha value.</doc>
12320         <return-value transfer-ownership="none">
12321           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12322           <type name="guint16" c:type="guint16"/>
12323         </return-value>
12324       </method>
12325       <method name="get_color"
12326               c:identifier="gtk_color_button_get_color"
12327               version="2.4">
12328         <doc xml:whitespace="preserve">Sets @color to be the current color in the #GtkColorButton widget.</doc>
12329         <return-value transfer-ownership="none">
12330           <type name="none" c:type="void"/>
12331         </return-value>
12332         <parameters>
12333           <parameter name="color" transfer-ownership="none">
12334             <doc xml:whitespace="preserve">a #GdkColor to fill in with the current color.</doc>
12335             <type name="Gdk.Color" c:type="GdkColor*"/>
12336           </parameter>
12337         </parameters>
12338       </method>
12339       <method name="get_title"
12340               c:identifier="gtk_color_button_get_title"
12341               version="2.4">
12342         <doc xml:whitespace="preserve">Gets the title of the color selection dialog.</doc>
12343         <return-value transfer-ownership="none">
12344           <doc xml:whitespace="preserve">An internal string, do not free the return value</doc>
12345           <type name="utf8" c:type="gchar*"/>
12346         </return-value>
12347       </method>
12348       <method name="get_use_alpha"
12349               c:identifier="gtk_color_button_get_use_alpha"
12350               version="2.4">
12351         <doc xml:whitespace="preserve">Does the color selection dialog use the alpha channel?</doc>
12352         <return-value transfer-ownership="none">
12353           <doc xml:whitespace="preserve">%TRUE if the color sample uses alpha channel, %FALSE if not.</doc>
12354           <type name="gboolean" c:type="gboolean"/>
12355         </return-value>
12356       </method>
12357       <method name="set_alpha"
12358               c:identifier="gtk_color_button_set_alpha"
12359               version="2.4">
12360         <doc xml:whitespace="preserve">Sets the current opacity to be @alpha.</doc>
12361         <return-value transfer-ownership="none">
12362           <type name="none" c:type="void"/>
12363         </return-value>
12364         <parameters>
12365           <parameter name="alpha" transfer-ownership="none">
12366             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12367             <type name="guint16" c:type="guint16"/>
12368           </parameter>
12369         </parameters>
12370       </method>
12371       <method name="set_color"
12372               c:identifier="gtk_color_button_set_color"
12373               version="2.4">
12374         <doc xml:whitespace="preserve">Sets the current color to be @color.</doc>
12375         <return-value transfer-ownership="none">
12376           <type name="none" c:type="void"/>
12377         </return-value>
12378         <parameters>
12379           <parameter name="color" transfer-ownership="none">
12380             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
12381             <type name="Gdk.Color" c:type="GdkColor*"/>
12382           </parameter>
12383         </parameters>
12384       </method>
12385       <method name="set_title"
12386               c:identifier="gtk_color_button_set_title"
12387               version="2.4">
12388         <doc xml:whitespace="preserve">Sets the title for the color selection dialog.</doc>
12389         <return-value transfer-ownership="none">
12390           <type name="none" c:type="void"/>
12391         </return-value>
12392         <parameters>
12393           <parameter name="title" transfer-ownership="none">
12394             <doc xml:whitespace="preserve">String containing new window title.</doc>
12395             <type name="utf8" c:type="gchar*"/>
12396           </parameter>
12397         </parameters>
12398       </method>
12399       <method name="set_use_alpha"
12400               c:identifier="gtk_color_button_set_use_alpha"
12401               version="2.4">
12402         <doc xml:whitespace="preserve">Sets whether or not the color button should use the alpha channel.</doc>
12403         <return-value transfer-ownership="none">
12404           <type name="none" c:type="void"/>
12405         </return-value>
12406         <parameters>
12407           <parameter name="use_alpha" transfer-ownership="none">
12408             <doc xml:whitespace="preserve">%TRUE if color button should use alpha channel, %FALSE if not.</doc>
12409             <type name="gboolean" c:type="gboolean"/>
12410           </parameter>
12411         </parameters>
12412       </method>
12413       <property name="alpha"
12414                 version="2.4"
12415                 writable="1"
12416                 transfer-ownership="none">
12417         <doc xml:whitespace="preserve">The selected opacity value (0 fully transparent, 65535 fully opaque).</doc>
12418         <type name="guint"/>
12419       </property>
12420       <property name="color"
12421                 version="2.4"
12422                 writable="1"
12423                 transfer-ownership="none">
12424         <doc xml:whitespace="preserve">The selected color.</doc>
12425         <type name="Gdk.Color"/>
12426       </property>
12427       <property name="title"
12428                 version="2.4"
12429                 writable="1"
12430                 transfer-ownership="none">
12431         <doc xml:whitespace="preserve">The title of the color selection dialog</doc>
12432         <type name="utf8"/>
12433       </property>
12434       <property name="use-alpha"
12435                 version="2.4"
12436                 writable="1"
12437                 transfer-ownership="none">
12438         <doc xml:whitespace="preserve">If this property is set to %TRUE, the color swatch on the button is rendered against a 
12439 checkerboard background to show its opacity and the opacity slider is displayed in the 
12440 color selection dialog.</doc>
12441         <type name="gboolean"/>
12442       </property>
12443       <field name="button">
12444         <type name="Button" c:type="GtkButton"/>
12445       </field>
12446       <field name="priv">
12447         <type name="ColorButtonPrivate" c:type="GtkColorButtonPrivate*"/>
12448       </field>
12449       <glib:signal name="color-set" version="2.4">
12450         <doc xml:whitespace="preserve">The ::color-set signal is emitted when the user selects a color. 
12451 When handling this signal, use gtk_color_button_get_color() and 
12452 gtk_color_button_get_alpha() to find out which color was just selected.
12453 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
12454 changes the color. If you need to react to programmatic color changes
12455 as well, use the notify::color signal.</doc>
12456         <return-value transfer-ownership="none">
12457           <type name="none"/>
12458         </return-value>
12459       </glib:signal>
12460     </class>
12461     <record name="ColorButtonClass"
12462             c:type="GtkColorButtonClass"
12463             glib:is-gtype-struct-for="ColorButton">
12464       <field name="parent_class">
12465         <type name="ButtonClass" c:type="GtkButtonClass"/>
12466       </field>
12467       <field name="color_set">
12468         <callback name="color_set">
12469           <return-value transfer-ownership="none">
12470             <type name="none" c:type="void"/>
12471           </return-value>
12472           <parameters>
12473             <parameter name="cp" transfer-ownership="none">
12474               <type name="ColorButton" c:type="GtkColorButton*"/>
12475             </parameter>
12476           </parameters>
12477         </callback>
12478       </field>
12479       <field name="_gtk_reserved1" introspectable="0">
12480         <callback name="_gtk_reserved1">
12481           <return-value transfer-ownership="none">
12482             <type name="none" c:type="void"/>
12483           </return-value>
12484         </callback>
12485       </field>
12486       <field name="_gtk_reserved2" introspectable="0">
12487         <callback name="_gtk_reserved2">
12488           <return-value transfer-ownership="none">
12489             <type name="none" c:type="void"/>
12490           </return-value>
12491         </callback>
12492       </field>
12493       <field name="_gtk_reserved3" introspectable="0">
12494         <callback name="_gtk_reserved3">
12495           <return-value transfer-ownership="none">
12496             <type name="none" c:type="void"/>
12497           </return-value>
12498         </callback>
12499       </field>
12500       <field name="_gtk_reserved4" introspectable="0">
12501         <callback name="_gtk_reserved4">
12502           <return-value transfer-ownership="none">
12503             <type name="none" c:type="void"/>
12504           </return-value>
12505         </callback>
12506       </field>
12507     </record>
12508     <record name="ColorButtonPrivate"
12509             c:type="GtkColorButtonPrivate"
12510             disguised="1">
12511     </record>
12512     <class name="ColorSelection"
12513            c:symbol-prefix="color_selection"
12514            c:type="GtkColorSelection"
12515            parent="VBox"
12516            glib:type-name="GtkColorSelection"
12517            glib:get-type="gtk_color_selection_get_type"
12518            glib:type-struct="ColorSelectionClass">
12519       <implements name="Atk.ImplementorIface"/>
12520       <implements name="Buildable"/>
12521       <implements name="Orientable"/>
12522       <implements name="SizeRequest"/>
12523       <constructor name="new" c:identifier="gtk_color_selection_new">
12524         <doc xml:whitespace="preserve">Creates a new GtkColorSelection.</doc>
12525         <return-value transfer-ownership="none">
12526           <doc xml:whitespace="preserve">a new #GtkColorSelection</doc>
12527           <type name="Widget" c:type="GtkWidget*"/>
12528         </return-value>
12529       </constructor>
12530       <function name="palette_from_string"
12531                 c:identifier="gtk_color_selection_palette_from_string">
12532         <doc xml:whitespace="preserve">Parses a color palette string; the string is a colon-separated
12533 list of color names readable by gdk_color_parse().</doc>
12534         <return-value transfer-ownership="none">
12535           <doc xml:whitespace="preserve">%TRUE if a palette was successfully parsed.</doc>
12536           <type name="gboolean" c:type="gboolean"/>
12537         </return-value>
12538         <parameters>
12539           <parameter name="str" transfer-ownership="none">
12540             <doc xml:whitespace="preserve">a string encoding a color palette.</doc>
12541             <type name="utf8" c:type="gchar*"/>
12542           </parameter>
12543           <parameter name="colors" transfer-ownership="none">
12544             <doc xml:whitespace="preserve">return location for allocated array of #GdkColor.</doc>
12545             <type name="Gdk.Color" c:type="GdkColor**"/>
12546           </parameter>
12547           <parameter name="n_colors" transfer-ownership="none">
12548             <doc xml:whitespace="preserve">return location for length of array.</doc>
12549             <type name="gint" c:type="gint*"/>
12550           </parameter>
12551         </parameters>
12552       </function>
12553       <function name="palette_to_string"
12554                 c:identifier="gtk_color_selection_palette_to_string">
12555         <doc xml:whitespace="preserve">Encodes a palette as a string, useful for persistent storage.</doc>
12556         <return-value transfer-ownership="full">
12557           <doc xml:whitespace="preserve">allocated string encoding the palette.</doc>
12558           <type name="utf8" c:type="gchar*"/>
12559         </return-value>
12560         <parameters>
12561           <parameter name="colors" transfer-ownership="none">
12562             <doc xml:whitespace="preserve">an array of colors.</doc>
12563             <type name="Gdk.Color" c:type="GdkColor*"/>
12564           </parameter>
12565           <parameter name="n_colors" transfer-ownership="none">
12566             <doc xml:whitespace="preserve">length of the array.</doc>
12567             <type name="gint" c:type="gint"/>
12568           </parameter>
12569         </parameters>
12570       </function>
12571       <function name="set_change_palette_with_screen_hook"
12572                 c:identifier="gtk_color_selection_set_change_palette_with_screen_hook"
12573                 version="2.2"
12574                 introspectable="0">
12575         <doc xml:whitespace="preserve">Installs a global function to be called whenever the user tries to
12576 modify the palette in a color selection. This function should save
12577 the new palette contents, and update the GtkSettings property
12578 "gtk-color-palette" so all GtkColorSelection widgets will be modified.</doc>
12579         <return-value>
12580           <doc xml:whitespace="preserve">the previous change palette hook (that was replaced).</doc>
12581           <type name="ColorSelectionChangePaletteWithScreenFunc"
12582                 c:type="GtkColorSelectionChangePaletteWithScreenFunc"/>
12583         </return-value>
12584         <parameters>
12585           <parameter name="func" transfer-ownership="none">
12586             <doc xml:whitespace="preserve">a function to call when the custom palette needs saving.</doc>
12587             <type name="ColorSelectionChangePaletteWithScreenFunc"
12588                   c:type="GtkColorSelectionChangePaletteWithScreenFunc"/>
12589           </parameter>
12590         </parameters>
12591       </function>
12592       <method name="get_current_alpha"
12593               c:identifier="gtk_color_selection_get_current_alpha">
12594         <doc xml:whitespace="preserve">Returns the current alpha value.</doc>
12595         <return-value transfer-ownership="none">
12596           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12597           <type name="guint16" c:type="guint16"/>
12598         </return-value>
12599       </method>
12600       <method name="get_current_color"
12601               c:identifier="gtk_color_selection_get_current_color">
12602         <doc xml:whitespace="preserve">Sets @color to be the current color in the GtkColorSelection widget.</doc>
12603         <return-value transfer-ownership="none">
12604           <type name="none" c:type="void"/>
12605         </return-value>
12606         <parameters>
12607           <parameter name="color"
12608                      direction="out"
12609                      caller-allocates="1"
12610                      transfer-ownership="none">
12611             <doc xml:whitespace="preserve">a #GdkColor to fill in with the current color.</doc>
12612             <type name="Gdk.Color" c:type="GdkColor*"/>
12613           </parameter>
12614         </parameters>
12615       </method>
12616       <method name="get_has_opacity_control"
12617               c:identifier="gtk_color_selection_get_has_opacity_control">
12618         <doc xml:whitespace="preserve">Determines whether the colorsel has an opacity control.</doc>
12619         <return-value transfer-ownership="none">
12620           <doc xml:whitespace="preserve">%TRUE if the @colorsel has an opacity control.  %FALSE if it does't.</doc>
12621           <type name="gboolean" c:type="gboolean"/>
12622         </return-value>
12623       </method>
12624       <method name="get_has_palette"
12625               c:identifier="gtk_color_selection_get_has_palette">
12626         <doc xml:whitespace="preserve">Determines whether the color selector has a color palette.</doc>
12627         <return-value transfer-ownership="none">
12628           <doc xml:whitespace="preserve">%TRUE if the selector has a palette.  %FALSE if it hasn't.</doc>
12629           <type name="gboolean" c:type="gboolean"/>
12630         </return-value>
12631       </method>
12632       <method name="get_previous_alpha"
12633               c:identifier="gtk_color_selection_get_previous_alpha">
12634         <doc xml:whitespace="preserve">Returns the previous alpha value.</doc>
12635         <return-value transfer-ownership="none">
12636           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12637           <type name="guint16" c:type="guint16"/>
12638         </return-value>
12639       </method>
12640       <method name="get_previous_color"
12641               c:identifier="gtk_color_selection_get_previous_color">
12642         <doc xml:whitespace="preserve">Fills @color in with the original color value.</doc>
12643         <return-value transfer-ownership="none">
12644           <type name="none" c:type="void"/>
12645         </return-value>
12646         <parameters>
12647           <parameter name="color" transfer-ownership="none">
12648             <doc xml:whitespace="preserve">a #GdkColor to fill in with the original color value.</doc>
12649             <type name="Gdk.Color" c:type="GdkColor*"/>
12650           </parameter>
12651         </parameters>
12652       </method>
12653       <method name="is_adjusting"
12654               c:identifier="gtk_color_selection_is_adjusting">
12655         <doc xml:whitespace="preserve">Gets the current state of the @colorsel.
12656 if the selection has stopped.</doc>
12657         <return-value transfer-ownership="none">
12658           <doc xml:whitespace="preserve">%TRUE if the user is currently dragging a color around, and %FALSE</doc>
12659           <type name="gboolean" c:type="gboolean"/>
12660         </return-value>
12661       </method>
12662       <method name="set_current_alpha"
12663               c:identifier="gtk_color_selection_set_current_alpha">
12664         <doc xml:whitespace="preserve">Sets the current opacity to be @alpha.  The first time this is called, it will
12665 also set the original opacity to be @alpha too.</doc>
12666         <return-value transfer-ownership="none">
12667           <type name="none" c:type="void"/>
12668         </return-value>
12669         <parameters>
12670           <parameter name="alpha" transfer-ownership="none">
12671             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12672             <type name="guint16" c:type="guint16"/>
12673           </parameter>
12674         </parameters>
12675       </method>
12676       <method name="set_current_color"
12677               c:identifier="gtk_color_selection_set_current_color">
12678         <doc xml:whitespace="preserve">Sets the current color to be @color.  The first time this is called, it will
12679 also set the original color to be @color too.</doc>
12680         <return-value transfer-ownership="none">
12681           <type name="none" c:type="void"/>
12682         </return-value>
12683         <parameters>
12684           <parameter name="color" transfer-ownership="none">
12685             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
12686             <type name="Gdk.Color" c:type="GdkColor*"/>
12687           </parameter>
12688         </parameters>
12689       </method>
12690       <method name="set_has_opacity_control"
12691               c:identifier="gtk_color_selection_set_has_opacity_control">
12692         <doc xml:whitespace="preserve">Sets the @colorsel to use or not use opacity.</doc>
12693         <return-value transfer-ownership="none">
12694           <type name="none" c:type="void"/>
12695         </return-value>
12696         <parameters>
12697           <parameter name="has_opacity" transfer-ownership="none">
12698             <doc xml:whitespace="preserve">%TRUE if @colorsel can set the opacity, %FALSE otherwise.</doc>
12699             <type name="gboolean" c:type="gboolean"/>
12700           </parameter>
12701         </parameters>
12702       </method>
12703       <method name="set_has_palette"
12704               c:identifier="gtk_color_selection_set_has_palette">
12705         <doc xml:whitespace="preserve">Shows and hides the palette based upon the value of @has_palette.</doc>
12706         <return-value transfer-ownership="none">
12707           <type name="none" c:type="void"/>
12708         </return-value>
12709         <parameters>
12710           <parameter name="has_palette" transfer-ownership="none">
12711             <doc xml:whitespace="preserve">%TRUE if palette is to be visible, %FALSE otherwise.</doc>
12712             <type name="gboolean" c:type="gboolean"/>
12713           </parameter>
12714         </parameters>
12715       </method>
12716       <method name="set_previous_alpha"
12717               c:identifier="gtk_color_selection_set_previous_alpha">
12718         <doc xml:whitespace="preserve">Sets the 'previous' alpha to be @alpha.  This function should be called with
12719 some hesitations, as it might seem confusing to have that alpha change.</doc>
12720         <return-value transfer-ownership="none">
12721           <type name="none" c:type="void"/>
12722         </return-value>
12723         <parameters>
12724           <parameter name="alpha" transfer-ownership="none">
12725             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
12726             <type name="guint16" c:type="guint16"/>
12727           </parameter>
12728         </parameters>
12729       </method>
12730       <method name="set_previous_color"
12731               c:identifier="gtk_color_selection_set_previous_color">
12732         <doc xml:whitespace="preserve">Sets the 'previous' color to be @color.  This function should be called with
12733 some hesitations, as it might seem confusing to have that color change.
12734 Calling gtk_color_selection_set_current_color() will also set this color the first
12735 time it is called.</doc>
12736         <return-value transfer-ownership="none">
12737           <type name="none" c:type="void"/>
12738         </return-value>
12739         <parameters>
12740           <parameter name="color" transfer-ownership="none">
12741             <doc xml:whitespace="preserve">a #GdkColor to set the previous color with.</doc>
12742             <type name="Gdk.Color" c:type="GdkColor*"/>
12743           </parameter>
12744         </parameters>
12745       </method>
12746       <property name="current-alpha" writable="1" transfer-ownership="none">
12747         <type name="guint"/>
12748       </property>
12749       <property name="current-color" writable="1" transfer-ownership="none">
12750         <type name="Gdk.Color"/>
12751       </property>
12752       <property name="has-opacity-control"
12753                 writable="1"
12754                 transfer-ownership="none">
12755         <type name="gboolean"/>
12756       </property>
12757       <property name="has-palette" writable="1" transfer-ownership="none">
12758         <type name="gboolean"/>
12759       </property>
12760       <field name="parent_instance">
12761         <type name="VBox" c:type="GtkVBox"/>
12762       </field>
12763       <field name="private_data">
12764         <type name="ColorSelectionPrivate" c:type="GtkColorSelectionPrivate*"/>
12765       </field>
12766       <glib:signal name="color-changed">
12767         <return-value transfer-ownership="none">
12768           <type name="none"/>
12769         </return-value>
12770       </glib:signal>
12771     </class>
12772     <callback name="ColorSelectionChangePaletteFunc"
12773               c:type="GtkColorSelectionChangePaletteFunc">
12774       <return-value transfer-ownership="none">
12775         <type name="none" c:type="void"/>
12776       </return-value>
12777       <parameters>
12778         <parameter name="colors" transfer-ownership="none">
12779           <type name="Gdk.Color" c:type="GdkColor*"/>
12780         </parameter>
12781         <parameter name="n_colors" transfer-ownership="none">
12782           <type name="gint" c:type="gint"/>
12783         </parameter>
12784       </parameters>
12785     </callback>
12786     <callback name="ColorSelectionChangePaletteWithScreenFunc"
12787               c:type="GtkColorSelectionChangePaletteWithScreenFunc">
12788       <return-value transfer-ownership="none">
12789         <type name="none" c:type="void"/>
12790       </return-value>
12791       <parameters>
12792         <parameter name="screen" transfer-ownership="none">
12793           <type name="Gdk.Screen" c:type="GdkScreen*"/>
12794         </parameter>
12795         <parameter name="colors" transfer-ownership="none">
12796           <type name="Gdk.Color" c:type="GdkColor*"/>
12797         </parameter>
12798         <parameter name="n_colors" transfer-ownership="none">
12799           <type name="gint" c:type="gint"/>
12800         </parameter>
12801       </parameters>
12802     </callback>
12803     <record name="ColorSelectionClass"
12804             c:type="GtkColorSelectionClass"
12805             glib:is-gtype-struct-for="ColorSelection">
12806       <field name="parent_class">
12807         <type name="VBoxClass" c:type="GtkVBoxClass"/>
12808       </field>
12809       <field name="color_changed">
12810         <callback name="color_changed">
12811           <return-value transfer-ownership="none">
12812             <type name="none" c:type="void"/>
12813           </return-value>
12814           <parameters>
12815             <parameter name="color_selection" transfer-ownership="none">
12816               <type name="ColorSelection" c:type="GtkColorSelection*"/>
12817             </parameter>
12818           </parameters>
12819         </callback>
12820       </field>
12821       <field name="_gtk_reserved1" introspectable="0">
12822         <callback name="_gtk_reserved1">
12823           <return-value transfer-ownership="none">
12824             <type name="none" c:type="void"/>
12825           </return-value>
12826         </callback>
12827       </field>
12828       <field name="_gtk_reserved2" introspectable="0">
12829         <callback name="_gtk_reserved2">
12830           <return-value transfer-ownership="none">
12831             <type name="none" c:type="void"/>
12832           </return-value>
12833         </callback>
12834       </field>
12835       <field name="_gtk_reserved3" introspectable="0">
12836         <callback name="_gtk_reserved3">
12837           <return-value transfer-ownership="none">
12838             <type name="none" c:type="void"/>
12839           </return-value>
12840         </callback>
12841       </field>
12842       <field name="_gtk_reserved4" introspectable="0">
12843         <callback name="_gtk_reserved4">
12844           <return-value transfer-ownership="none">
12845             <type name="none" c:type="void"/>
12846           </return-value>
12847         </callback>
12848       </field>
12849     </record>
12850     <class name="ColorSelectionDialog"
12851            c:symbol-prefix="color_selection_dialog"
12852            c:type="GtkColorSelectionDialog"
12853            parent="Dialog"
12854            glib:type-name="GtkColorSelectionDialog"
12855            glib:get-type="gtk_color_selection_dialog_get_type"
12856            glib:type-struct="ColorSelectionDialogClass">
12857       <implements name="Atk.ImplementorIface"/>
12858       <implements name="Buildable"/>
12859       <implements name="SizeRequest"/>
12860       <constructor name="new" c:identifier="gtk_color_selection_dialog_new">
12861         <return-value transfer-ownership="none">
12862           <type name="Widget" c:type="GtkWidget*"/>
12863         </return-value>
12864         <parameters>
12865           <parameter name="title" transfer-ownership="none">
12866             <type name="utf8" c:type="gchar*"/>
12867           </parameter>
12868         </parameters>
12869       </constructor>
12870       <method name="get_color_selection"
12871               c:identifier="gtk_color_selection_dialog_get_color_selection"
12872               version="2.14">
12873         <doc xml:whitespace="preserve">Retrieves the #GtkColorSelection widget embedded in the dialog.</doc>
12874         <return-value transfer-ownership="none">
12875           <doc xml:whitespace="preserve">the embedded #GtkColorSelection</doc>
12876           <type name="Widget" c:type="GtkWidget*"/>
12877         </return-value>
12878       </method>
12879       <property name="cancel-button" transfer-ownership="none">
12880         <type name="Widget"/>
12881       </property>
12882       <property name="color-selection" transfer-ownership="none">
12883         <type name="Widget"/>
12884       </property>
12885       <property name="help-button" transfer-ownership="none">
12886         <type name="Widget"/>
12887       </property>
12888       <property name="ok-button" transfer-ownership="none">
12889         <type name="Widget"/>
12890       </property>
12891       <field name="parent_instance">
12892         <type name="Dialog" c:type="GtkDialog"/>
12893       </field>
12894       <field name="priv" readable="0" private="1">
12895         <type name="ColorSelectionDialogPrivate"
12896               c:type="GtkColorSelectionDialogPrivate*"/>
12897       </field>
12898     </class>
12899     <record name="ColorSelectionDialogClass"
12900             c:type="GtkColorSelectionDialogClass"
12901             glib:is-gtype-struct-for="ColorSelectionDialog">
12902       <field name="parent_class">
12903         <type name="DialogClass" c:type="GtkDialogClass"/>
12904       </field>
12905       <field name="_gtk_reserved1" introspectable="0">
12906         <callback name="_gtk_reserved1">
12907           <return-value transfer-ownership="none">
12908             <type name="none" c:type="void"/>
12909           </return-value>
12910         </callback>
12911       </field>
12912       <field name="_gtk_reserved2" introspectable="0">
12913         <callback name="_gtk_reserved2">
12914           <return-value transfer-ownership="none">
12915             <type name="none" c:type="void"/>
12916           </return-value>
12917         </callback>
12918       </field>
12919       <field name="_gtk_reserved3" introspectable="0">
12920         <callback name="_gtk_reserved3">
12921           <return-value transfer-ownership="none">
12922             <type name="none" c:type="void"/>
12923           </return-value>
12924         </callback>
12925       </field>
12926       <field name="_gtk_reserved4" introspectable="0">
12927         <callback name="_gtk_reserved4">
12928           <return-value transfer-ownership="none">
12929             <type name="none" c:type="void"/>
12930           </return-value>
12931         </callback>
12932       </field>
12933     </record>
12934     <record name="ColorSelectionDialogPrivate"
12935             c:type="GtkColorSelectionDialogPrivate"
12936             disguised="1">
12937     </record>
12938     <record name="ColorSelectionPrivate"
12939             c:type="GtkColorSelectionPrivate"
12940             disguised="1">
12941     </record>
12942     <class name="ComboBox"
12943            c:symbol-prefix="combo_box"
12944            c:type="GtkComboBox"
12945            parent="Bin"
12946            glib:type-name="GtkComboBox"
12947            glib:get-type="gtk_combo_box_get_type"
12948            glib:type-struct="ComboBoxClass">
12949       <implements name="Atk.ImplementorIface"/>
12950       <implements name="Buildable"/>
12951       <implements name="CellEditable"/>
12952       <implements name="CellLayout"/>
12953       <implements name="SizeRequest"/>
12954       <constructor name="new" c:identifier="gtk_combo_box_new" version="2.4">
12955         <doc xml:whitespace="preserve">Creates a new empty #GtkComboBox.</doc>
12956         <return-value transfer-ownership="none">
12957           <doc xml:whitespace="preserve">A new #GtkComboBox.</doc>
12958           <type name="Widget" c:type="GtkWidget*"/>
12959         </return-value>
12960       </constructor>
12961       <constructor name="new_text"
12962                    c:identifier="gtk_combo_box_new_text"
12963                    version="2.4">
12964         <doc xml:whitespace="preserve">Convenience function which constructs a new text combo box, which is a
12965 #GtkComboBox just displaying strings. If you use this function to create
12966 a text combo box, you should only manipulate its data source with the
12967 gtk_combo_box_insert_text(), gtk_combo_box_prepend_text() and
12968 gtk_combo_box_remove_text().</doc>
12969         <return-value transfer-ownership="none">
12970           <doc xml:whitespace="preserve">A new text combo box.</doc>
12971           <type name="Widget" c:type="GtkWidget*"/>
12972         </return-value>
12973       </constructor>
12974       <constructor name="new_with_model"
12975                    c:identifier="gtk_combo_box_new_with_model"
12976                    version="2.4">
12977         <doc xml:whitespace="preserve">Creates a new #GtkComboBox with the model initialized to @model.</doc>
12978         <return-value transfer-ownership="none">
12979           <doc xml:whitespace="preserve">A new #GtkComboBox.</doc>
12980           <type name="Widget" c:type="GtkWidget*"/>
12981         </return-value>
12982         <parameters>
12983           <parameter name="model" transfer-ownership="none">
12984             <doc xml:whitespace="preserve">A #GtkTreeModel.</doc>
12985             <type name="TreeModel" c:type="GtkTreeModel*"/>
12986           </parameter>
12987         </parameters>
12988       </constructor>
12989       <virtual-method name="get_active_text"
12990                       invoker="get_active_text"
12991                       version="2.6">
12992         <doc xml:whitespace="preserve">Returns the currently active string in @combo_box or %NULL if none
12993 is selected.  Note that you can only use this function with combo
12994 boxes constructed with gtk_combo_box_new_text() and with
12995 #GtkComboBoxEntry&lt;!-- --&gt;s.
12996 Must be freed with g_free().</doc>
12997         <return-value transfer-ownership="full">
12998           <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
12999           <type name="utf8" c:type="gchar*"/>
13000         </return-value>
13001       </virtual-method>
13002       <method name="append_text"
13003               c:identifier="gtk_combo_box_append_text"
13004               version="2.4">
13005         <doc xml:whitespace="preserve">Appends @string to the list of strings stored in @combo_box. Note that
13006 you can only use this function with combo boxes constructed with
13007 gtk_combo_box_new_text().</doc>
13008         <return-value transfer-ownership="none">
13009           <type name="none" c:type="void"/>
13010         </return-value>
13011         <parameters>
13012           <parameter name="text" transfer-ownership="none">
13013             <doc xml:whitespace="preserve">A string</doc>
13014             <type name="utf8" c:type="gchar*"/>
13015           </parameter>
13016         </parameters>
13017       </method>
13018       <method name="get_active"
13019               c:identifier="gtk_combo_box_get_active"
13020               version="2.4">
13021         <doc xml:whitespace="preserve">Returns the index of the currently active item, or -1 if there's no
13022 active item. If the model is a non-flat treemodel, and the active item 
13023 is not an immediate child of the root of the tree, this function returns 
13024 &lt;literal&gt;gtk_tree_path_get_indices (path)[0]&lt;/literal&gt;, where 
13025 &lt;literal&gt;path&lt;/literal&gt; is the #GtkTreePath of the active item.
13026 or -1 if there's no active item.</doc>
13027         <return-value transfer-ownership="none">
13028           <doc xml:whitespace="preserve">An integer which is the index of the currently active item,</doc>
13029           <type name="gint" c:type="gint"/>
13030         </return-value>
13031       </method>
13032       <method name="get_active_iter"
13033               c:identifier="gtk_combo_box_get_active_iter"
13034               version="2.4">
13035         <doc xml:whitespace="preserve">Sets @iter to point to the current active item, if it exists.</doc>
13036         <return-value transfer-ownership="none">
13037           <doc xml:whitespace="preserve">%TRUE, if @iter was set</doc>
13038           <type name="gboolean" c:type="gboolean"/>
13039         </return-value>
13040         <parameters>
13041           <parameter name="iter"
13042                      direction="out"
13043                      caller-allocates="1"
13044                      transfer-ownership="none">
13045             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter</doc>
13046             <type name="TreeIter" c:type="GtkTreeIter*"/>
13047           </parameter>
13048         </parameters>
13049       </method>
13050       <method name="get_active_text"
13051               c:identifier="gtk_combo_box_get_active_text"
13052               version="2.6">
13053         <doc xml:whitespace="preserve">Returns the currently active string in @combo_box or %NULL if none
13054 is selected.  Note that you can only use this function with combo
13055 boxes constructed with gtk_combo_box_new_text() and with
13056 #GtkComboBoxEntry&lt;!-- --&gt;s.
13057 Must be freed with g_free().</doc>
13058         <return-value transfer-ownership="full">
13059           <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
13060           <type name="utf8" c:type="gchar*"/>
13061         </return-value>
13062       </method>
13063       <method name="get_add_tearoffs"
13064               c:identifier="gtk_combo_box_get_add_tearoffs">
13065         <doc xml:whitespace="preserve">Gets the current value of the :add-tearoffs property.</doc>
13066         <return-value transfer-ownership="none">
13067           <doc xml:whitespace="preserve">the current value of the :add-tearoffs property.</doc>
13068           <type name="gboolean" c:type="gboolean"/>
13069         </return-value>
13070       </method>
13071       <method name="get_button_sensitivity"
13072               c:identifier="gtk_combo_box_get_button_sensitivity"
13073               version="2.14">
13074         <doc xml:whitespace="preserve">Returns whether the combo box sets the dropdown button
13075 sensitive or not when there are no items in the model.
13076 is sensitive when the model is empty, %GTK_SENSITIVITY_OFF
13077 if the button is always insensitive or
13078 %GTK_SENSITIVITY_AUTO if it is only sensitive as long as
13079 the model has one item to be selected.</doc>
13080         <return-value transfer-ownership="none">
13081           <doc xml:whitespace="preserve">%GTK_SENSITIVITY_ON if the dropdown button</doc>
13082           <type name="SensitivityType" c:type="GtkSensitivityType"/>
13083         </return-value>
13084       </method>
13085       <method name="get_column_span_column"
13086               c:identifier="gtk_combo_box_get_column_span_column"
13087               version="2.6">
13088         <doc xml:whitespace="preserve">Returns the column with column span information for @combo_box.</doc>
13089         <return-value transfer-ownership="none">
13090           <doc xml:whitespace="preserve">the column span column.</doc>
13091           <type name="gint" c:type="gint"/>
13092         </return-value>
13093       </method>
13094       <method name="get_focus_on_click"
13095               c:identifier="gtk_combo_box_get_focus_on_click"
13096               version="2.6">
13097         <doc xml:whitespace="preserve">Returns whether the combo box grabs focus when it is clicked 
13098 with the mouse. See gtk_combo_box_set_focus_on_click().
13099 clicked with the mouse.</doc>
13100         <return-value transfer-ownership="none">
13101           <doc xml:whitespace="preserve">%TRUE if the combo box grabs focus when it is</doc>
13102           <type name="gboolean" c:type="gboolean"/>
13103         </return-value>
13104       </method>
13105       <method name="get_model"
13106               c:identifier="gtk_combo_box_get_model"
13107               version="2.4">
13108         <doc xml:whitespace="preserve">Returns the #GtkTreeModel which is acting as data source for @combo_box.
13109 during construction.</doc>
13110         <return-value transfer-ownership="none">
13111           <doc xml:whitespace="preserve">A #GtkTreeModel which was passed</doc>
13112           <type name="TreeModel" c:type="GtkTreeModel*"/>
13113         </return-value>
13114       </method>
13115       <method name="get_popup_accessible"
13116               c:identifier="gtk_combo_box_get_popup_accessible"
13117               version="2.6">
13118         <doc xml:whitespace="preserve">Gets the accessible object corresponding to the combo box's popup.
13119 This function is mostly intended for use by accessibility technologies;
13120 applications should have little use for it.
13121 to the combo box's popup.</doc>
13122         <return-value transfer-ownership="none">
13123           <doc xml:whitespace="preserve">the accessible object corresponding</doc>
13124           <type name="Atk.Object" c:type="AtkObject*"/>
13125         </return-value>
13126       </method>
13127       <method name="get_row_separator_func"
13128               c:identifier="gtk_combo_box_get_row_separator_func"
13129               version="2.6"
13130               introspectable="0">
13131         <doc xml:whitespace="preserve">Returns the current row separator function.</doc>
13132         <return-value>
13133           <doc xml:whitespace="preserve">the current row separator function.</doc>
13134           <type name="TreeViewRowSeparatorFunc"
13135                 c:type="GtkTreeViewRowSeparatorFunc"/>
13136         </return-value>
13137       </method>
13138       <method name="get_row_span_column"
13139               c:identifier="gtk_combo_box_get_row_span_column"
13140               version="2.6">
13141         <doc xml:whitespace="preserve">Returns the column with row span information for @combo_box.</doc>
13142         <return-value transfer-ownership="none">
13143           <doc xml:whitespace="preserve">the row span column.</doc>
13144           <type name="gint" c:type="gint"/>
13145         </return-value>
13146       </method>
13147       <method name="get_title"
13148               c:identifier="gtk_combo_box_get_title"
13149               version="2.10">
13150         <doc xml:whitespace="preserve">Gets the current title of the menu in tearoff mode. See
13151 gtk_combo_box_set_add_tearoffs().
13152 string which must not be freed.</doc>
13153         <return-value transfer-ownership="none">
13154           <doc xml:whitespace="preserve">the menu's title in tearoff mode. This is an internal copy of the</doc>
13155           <type name="utf8" c:type="gchar*"/>
13156         </return-value>
13157       </method>
13158       <method name="get_wrap_width"
13159               c:identifier="gtk_combo_box_get_wrap_width"
13160               version="2.6">
13161         <doc xml:whitespace="preserve">Returns the wrap width which is used to determine the number of columns 
13162 for the popup menu. If the wrap width is larger than 1, the combo box 
13163 is in table mode.</doc>
13164         <return-value transfer-ownership="none">
13165           <doc xml:whitespace="preserve">the wrap width.</doc>
13166           <type name="gint" c:type="gint"/>
13167         </return-value>
13168       </method>
13169       <method name="insert_text"
13170               c:identifier="gtk_combo_box_insert_text"
13171               version="2.4">
13172         <doc xml:whitespace="preserve">Inserts @string at @position in the list of strings stored in @combo_box.
13173 Note that you can only use this function with combo boxes constructed
13174 with gtk_combo_box_new_text().</doc>
13175         <return-value transfer-ownership="none">
13176           <type name="none" c:type="void"/>
13177         </return-value>
13178         <parameters>
13179           <parameter name="position" transfer-ownership="none">
13180             <doc xml:whitespace="preserve">An index to insert @text</doc>
13181             <type name="gint" c:type="gint"/>
13182           </parameter>
13183           <parameter name="text" transfer-ownership="none">
13184             <doc xml:whitespace="preserve">A string</doc>
13185             <type name="utf8" c:type="gchar*"/>
13186           </parameter>
13187         </parameters>
13188       </method>
13189       <method name="popdown"
13190               c:identifier="gtk_combo_box_popdown"
13191               version="2.4">
13192         <doc xml:whitespace="preserve">Hides the menu or dropdown list of @combo_box.
13193 This function is mostly intended for use by accessibility technologies;
13194 applications should have little use for it.</doc>
13195         <return-value transfer-ownership="none">
13196           <type name="none" c:type="void"/>
13197         </return-value>
13198       </method>
13199       <method name="popup" c:identifier="gtk_combo_box_popup" version="2.4">
13200         <doc xml:whitespace="preserve">Pops up the menu or dropdown list of @combo_box. 
13201 This function is mostly intended for use by accessibility technologies;
13202 applications should have little use for it.</doc>
13203         <return-value transfer-ownership="none">
13204           <type name="none" c:type="void"/>
13205         </return-value>
13206       </method>
13207       <method name="popup_for_device"
13208               c:identifier="gtk_combo_box_popup_for_device"
13209               version="3.0">
13210         <doc xml:whitespace="preserve">Pops up the menu or dropdown list of @combo_box, the popup window
13211 will be grabbed so only @device and its associated pointer/keyboard
13212 are the only #GdkDevice&lt;!-- --&gt;s able to send events to it.</doc>
13213         <return-value transfer-ownership="none">
13214           <type name="none" c:type="void"/>
13215         </return-value>
13216         <parameters>
13217           <parameter name="device" transfer-ownership="none">
13218             <doc xml:whitespace="preserve">a #GdkDevice</doc>
13219             <type name="Gdk.Device" c:type="GdkDevice*"/>
13220           </parameter>
13221         </parameters>
13222       </method>
13223       <method name="prepend_text"
13224               c:identifier="gtk_combo_box_prepend_text"
13225               version="2.4">
13226         <doc xml:whitespace="preserve">Prepends @string to the list of strings stored in @combo_box. Note that
13227 you can only use this function with combo boxes constructed with
13228 gtk_combo_box_new_text().</doc>
13229         <return-value transfer-ownership="none">
13230           <type name="none" c:type="void"/>
13231         </return-value>
13232         <parameters>
13233           <parameter name="text" transfer-ownership="none">
13234             <doc xml:whitespace="preserve">A string</doc>
13235             <type name="utf8" c:type="gchar*"/>
13236           </parameter>
13237         </parameters>
13238       </method>
13239       <method name="remove_text"
13240               c:identifier="gtk_combo_box_remove_text"
13241               version="2.4">
13242         <doc xml:whitespace="preserve">Removes the string at @position from @combo_box. Note that you can only use
13243 this function with combo boxes constructed with gtk_combo_box_new_text().</doc>
13244         <return-value transfer-ownership="none">
13245           <type name="none" c:type="void"/>
13246         </return-value>
13247         <parameters>
13248           <parameter name="position" transfer-ownership="none">
13249             <doc xml:whitespace="preserve">Index of the item to remove</doc>
13250             <type name="gint" c:type="gint"/>
13251           </parameter>
13252         </parameters>
13253       </method>
13254       <method name="set_active"
13255               c:identifier="gtk_combo_box_set_active"
13256               version="2.4">
13257         <doc xml:whitespace="preserve">Sets the active item of @combo_box to be the item at @index.</doc>
13258         <return-value transfer-ownership="none">
13259           <type name="none" c:type="void"/>
13260         </return-value>
13261         <parameters>
13262           <parameter name="index_" transfer-ownership="none">
13263             <doc xml:whitespace="preserve">An index in the model passed during construction, or -1 to have no active item</doc>
13264             <type name="gint" c:type="gint"/>
13265           </parameter>
13266         </parameters>
13267       </method>
13268       <method name="set_active_iter"
13269               c:identifier="gtk_combo_box_set_active_iter"
13270               version="2.4">
13271         <doc xml:whitespace="preserve">Sets the current active item to be the one referenced by @iter, or
13272 unsets the active item if @iter is %NULL.</doc>
13273         <return-value transfer-ownership="none">
13274           <type name="none" c:type="void"/>
13275         </return-value>
13276         <parameters>
13277           <parameter name="iter" transfer-ownership="none" allow-none="1">
13278             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
13279             <type name="TreeIter" c:type="GtkTreeIter*"/>
13280           </parameter>
13281         </parameters>
13282       </method>
13283       <method name="set_add_tearoffs"
13284               c:identifier="gtk_combo_box_set_add_tearoffs"
13285               version="2.6">
13286         <doc xml:whitespace="preserve">Sets whether the popup menu should have a tearoff 
13287 menu item.</doc>
13288         <return-value transfer-ownership="none">
13289           <type name="none" c:type="void"/>
13290         </return-value>
13291         <parameters>
13292           <parameter name="add_tearoffs" transfer-ownership="none">
13293             <doc xml:whitespace="preserve">%TRUE to add tearoff menu items</doc>
13294             <type name="gboolean" c:type="gboolean"/>
13295           </parameter>
13296         </parameters>
13297       </method>
13298       <method name="set_button_sensitivity"
13299               c:identifier="gtk_combo_box_set_button_sensitivity"
13300               version="2.14">
13301         <doc xml:whitespace="preserve">Sets whether the dropdown button of the combo box should be
13302 always sensitive (%GTK_SENSITIVITY_ON), never sensitive (%GTK_SENSITIVITY_OFF)
13303 or only if there is at least one item to display (%GTK_SENSITIVITY_AUTO).</doc>
13304         <return-value transfer-ownership="none">
13305           <type name="none" c:type="void"/>
13306         </return-value>
13307         <parameters>
13308           <parameter name="sensitivity" transfer-ownership="none">
13309             <doc xml:whitespace="preserve">specify the sensitivity of the dropdown button</doc>
13310             <type name="SensitivityType" c:type="GtkSensitivityType"/>
13311           </parameter>
13312         </parameters>
13313       </method>
13314       <method name="set_column_span_column"
13315               c:identifier="gtk_combo_box_set_column_span_column"
13316               version="2.4">
13317         <doc xml:whitespace="preserve">Sets the column with column span information for @combo_box to be
13318 how many columns an item should span.</doc>
13319         <return-value transfer-ownership="none">
13320           <type name="none" c:type="void"/>
13321         </return-value>
13322         <parameters>
13323           <parameter name="column_span" transfer-ownership="none">
13324             <doc xml:whitespace="preserve">A column in the model passed during construction</doc>
13325             <type name="gint" c:type="gint"/>
13326           </parameter>
13327         </parameters>
13328       </method>
13329       <method name="set_focus_on_click"
13330               c:identifier="gtk_combo_box_set_focus_on_click"
13331               version="2.6">
13332         <doc xml:whitespace="preserve">Sets whether the combo box will grab focus when it is clicked with 
13333 the mouse. Making mouse clicks not grab focus is useful in places 
13334 like toolbars where you don't want the keyboard focus removed from 
13335 the main area of the application.</doc>
13336         <return-value transfer-ownership="none">
13337           <type name="none" c:type="void"/>
13338         </return-value>
13339         <parameters>
13340           <parameter name="focus_on_click" transfer-ownership="none">
13341             <doc xml:whitespace="preserve">whether the combo box grabs focus when clicked with the mouse</doc>
13342             <type name="gboolean" c:type="gboolean"/>
13343           </parameter>
13344         </parameters>
13345       </method>
13346       <method name="set_model"
13347               c:identifier="gtk_combo_box_set_model"
13348               version="2.4">
13349         <doc xml:whitespace="preserve">Sets the model used by @combo_box to be @model. Will unset a previously set
13350 model (if applicable). If model is %NULL, then it will unset the model.
13351 Note that this function does not clear the cell renderers, you have to 
13352 call gtk_cell_layout_clear() yourself if you need to set up different 
13353 cell renderers for the new model.</doc>
13354         <return-value transfer-ownership="none">
13355           <type name="none" c:type="void"/>
13356         </return-value>
13357         <parameters>
13358           <parameter name="model" transfer-ownership="none" allow-none="1">
13359             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
13360             <type name="TreeModel" c:type="GtkTreeModel*"/>
13361           </parameter>
13362         </parameters>
13363       </method>
13364       <method name="set_row_separator_func"
13365               c:identifier="gtk_combo_box_set_row_separator_func"
13366               version="2.6">
13367         <doc xml:whitespace="preserve">Sets the row separator function, which is used to determine
13368 whether a row should be drawn as a separator. If the row separator
13369 function is %NULL, no separators are drawn. This is the default value.</doc>
13370         <return-value transfer-ownership="none">
13371           <type name="none" c:type="void"/>
13372         </return-value>
13373         <parameters>
13374           <parameter name="func"
13375                      transfer-ownership="none"
13376                      scope="notified"
13377                      closure="1"
13378                      destroy="2">
13379             <doc xml:whitespace="preserve">a #GtkTreeViewRowSeparatorFunc</doc>
13380             <type name="TreeViewRowSeparatorFunc"
13381                   c:type="GtkTreeViewRowSeparatorFunc"/>
13382           </parameter>
13383           <parameter name="data" transfer-ownership="none" allow-none="1">
13384             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
13385             <type name="gpointer" c:type="gpointer"/>
13386           </parameter>
13387           <parameter name="destroy"
13388                      transfer-ownership="none"
13389                      allow-none="1"
13390                      scope="async">
13391             <doc xml:whitespace="preserve">destroy notifier for @data, or %NULL</doc>
13392             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
13393           </parameter>
13394         </parameters>
13395       </method>
13396       <method name="set_row_span_column"
13397               c:identifier="gtk_combo_box_set_row_span_column"
13398               version="2.4">
13399         <doc xml:whitespace="preserve">Sets the column with row span information for @combo_box to be @row_span.
13400 The row span column contains integers which indicate how many rows
13401 an item should span.</doc>
13402         <return-value transfer-ownership="none">
13403           <type name="none" c:type="void"/>
13404         </return-value>
13405         <parameters>
13406           <parameter name="row_span" transfer-ownership="none">
13407             <doc xml:whitespace="preserve">A column in the model passed during construction.</doc>
13408             <type name="gint" c:type="gint"/>
13409           </parameter>
13410         </parameters>
13411       </method>
13412       <method name="set_title"
13413               c:identifier="gtk_combo_box_set_title"
13414               version="2.10">
13415         <doc xml:whitespace="preserve">Sets the menu's title in tearoff mode.</doc>
13416         <return-value transfer-ownership="none">
13417           <type name="none" c:type="void"/>
13418         </return-value>
13419         <parameters>
13420           <parameter name="title" transfer-ownership="none">
13421             <doc xml:whitespace="preserve">a title for the menu in tearoff mode</doc>
13422             <type name="utf8" c:type="gchar*"/>
13423           </parameter>
13424         </parameters>
13425       </method>
13426       <method name="set_wrap_width"
13427               c:identifier="gtk_combo_box_set_wrap_width"
13428               version="2.4">
13429         <doc xml:whitespace="preserve">Sets the wrap width of @combo_box to be @width. The wrap width is basically
13430 the preferred number of columns when you want the popup to be layed out
13431 in a table.</doc>
13432         <return-value transfer-ownership="none">
13433           <type name="none" c:type="void"/>
13434         </return-value>
13435         <parameters>
13436           <parameter name="width" transfer-ownership="none">
13437             <doc xml:whitespace="preserve">Preferred number of columns</doc>
13438             <type name="gint" c:type="gint"/>
13439           </parameter>
13440         </parameters>
13441       </method>
13442       <property name="active"
13443                 version="2.4"
13444                 writable="1"
13445                 transfer-ownership="none">
13446         <doc xml:whitespace="preserve">The item which is currently active. If the model is a non-flat treemodel,
13447 and the active item is not an immediate child of the root of the tree,
13448 this property has the value 
13449 &lt;literal&gt;gtk_tree_path_get_indices (path)[0]&lt;/literal&gt;,
13450 where &lt;literal&gt;path&lt;/literal&gt; is the #GtkTreePath of the active item.</doc>
13451         <type name="gint"/>
13452       </property>
13453       <property name="add-tearoffs"
13454                 version="2.6"
13455                 writable="1"
13456                 transfer-ownership="none">
13457         <doc xml:whitespace="preserve">The add-tearoffs property controls whether generated menus 
13458 have tearoff menu items. 
13459 Note that this only affects menu style combo boxes.</doc>
13460         <type name="gboolean"/>
13461       </property>
13462       <property name="button-sensitivity"
13463                 version="2.14"
13464                 writable="1"
13465                 transfer-ownership="none">
13466         <doc xml:whitespace="preserve">Whether the dropdown button is sensitive when
13467 the model is empty.</doc>
13468         <type name="SensitivityType"/>
13469       </property>
13470       <property name="column-span-column"
13471                 version="2.4"
13472                 writable="1"
13473                 transfer-ownership="none">
13474         <doc xml:whitespace="preserve">If this is set to a non-negative value, it must be the index of a column 
13475 of type %G_TYPE_INT in the model. 
13476 The values of that column are used to determine how many columns a value 
13477 in the list will span.</doc>
13478         <type name="gint"/>
13479       </property>
13480       <property name="focus-on-click" writable="1" transfer-ownership="none">
13481         <type name="gboolean"/>
13482       </property>
13483       <property name="has-frame"
13484                 version="2.6"
13485                 writable="1"
13486                 transfer-ownership="none">
13487         <doc xml:whitespace="preserve">The has-frame property controls whether a frame
13488 is drawn around the entry.</doc>
13489         <type name="gboolean"/>
13490       </property>
13491       <property name="model"
13492                 version="2.4"
13493                 writable="1"
13494                 transfer-ownership="none">
13495         <doc xml:whitespace="preserve">The model from which the combo box takes the values shown
13496 in the list.</doc>
13497         <type name="TreeModel"/>
13498       </property>
13499       <property name="popup-shown" version="2.10" transfer-ownership="none">
13500         <doc xml:whitespace="preserve">Whether the combo boxes dropdown is popped up. 
13501 Note that this property is mainly useful, because
13502 it allows you to connect to notify::popup-shown.</doc>
13503         <type name="gboolean"/>
13504       </property>
13505       <property name="row-span-column"
13506                 version="2.4"
13507                 writable="1"
13508                 transfer-ownership="none">
13509         <doc xml:whitespace="preserve">If this is set to a non-negative value, it must be the index of a column 
13510 of type %G_TYPE_INT in the model. 
13511 The values of that column are used to determine how many rows a value in 
13512 the list will span. Therefore, the values in the model column pointed to 
13513 by this property must be greater than zero and not larger than wrap-width.</doc>
13514         <type name="gint"/>
13515       </property>
13516       <property name="tearoff-title"
13517                 version="2.10"
13518                 writable="1"
13519                 transfer-ownership="none">
13520         <doc xml:whitespace="preserve">A title that may be displayed by the window manager 
13521 when the popup is torn-off.</doc>
13522         <type name="utf8"/>
13523       </property>
13524       <property name="wrap-width"
13525                 version="2.4"
13526                 writable="1"
13527                 transfer-ownership="none">
13528         <doc xml:whitespace="preserve">If wrap-width is set to a positive value, the list will be
13529 displayed in multiple columns, the number of columns is
13530 determined by wrap-width.</doc>
13531         <type name="gint"/>
13532       </property>
13533       <field name="parent_instance">
13534         <type name="Bin" c:type="GtkBin"/>
13535       </field>
13536       <field name="priv">
13537         <type name="ComboBoxPrivate" c:type="GtkComboBoxPrivate*"/>
13538       </field>
13539       <glib:signal name="changed" version="2.4">
13540         <doc xml:whitespace="preserve">The changed signal is emitted when the active
13541 item is changed. The can be due to the user selecting
13542 a different item from the list, or due to a 
13543 call to gtk_combo_box_set_active_iter().
13544 It will also be emitted while typing into a GtkComboBoxEntry, 
13545 as well as when selecting an item from the GtkComboBoxEntry's list.</doc>
13546         <return-value transfer-ownership="none">
13547           <type name="none"/>
13548         </return-value>
13549       </glib:signal>
13550       <glib:signal name="move-active" version="2.12">
13551         <doc xml:whitespace="preserve">The ::move-active signal is a 
13552 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
13553 which gets emitted to move the active selection.</doc>
13554         <return-value transfer-ownership="none">
13555           <type name="none"/>
13556         </return-value>
13557         <parameters>
13558           <parameter name="object" transfer-ownership="none">
13559             <doc xml:whitespace="preserve">a #GtkScrollType</doc>
13560             <type name="ScrollType"/>
13561           </parameter>
13562         </parameters>
13563       </glib:signal>
13564       <glib:signal name="popdown" version="2.12">
13565         <doc xml:whitespace="preserve">The ::popdown signal is a 
13566 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
13567 which gets emitted to popdown the combo box list.
13568 The default bindings for this signal are Alt+Up and Escape.</doc>
13569         <return-value transfer-ownership="none">
13570           <type name="gboolean"/>
13571         </return-value>
13572       </glib:signal>
13573       <glib:signal name="popup" version="2.12">
13574         <doc xml:whitespace="preserve">The ::popup signal is a 
13575 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
13576 which gets emitted to popup the combo box list.
13577 The default binding for this signal is Alt+Down.</doc>
13578         <return-value transfer-ownership="none">
13579           <type name="none"/>
13580         </return-value>
13581       </glib:signal>
13582     </class>
13583     <record name="ComboBoxClass"
13584             c:type="GtkComboBoxClass"
13585             glib:is-gtype-struct-for="ComboBox">
13586       <field name="parent_class">
13587         <type name="BinClass" c:type="GtkBinClass"/>
13588       </field>
13589       <field name="changed">
13590         <callback name="changed">
13591           <return-value transfer-ownership="none">
13592             <type name="none" c:type="void"/>
13593           </return-value>
13594           <parameters>
13595             <parameter name="combo_box" transfer-ownership="none">
13596               <type name="ComboBox" c:type="GtkComboBox*"/>
13597             </parameter>
13598           </parameters>
13599         </callback>
13600       </field>
13601       <field name="get_active_text">
13602         <callback name="get_active_text">
13603           <return-value transfer-ownership="full">
13604             <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
13605             <type name="utf8" c:type="gchar*"/>
13606           </return-value>
13607           <parameters>
13608             <parameter name="combo_box" transfer-ownership="none">
13609               <type name="ComboBox" c:type="GtkComboBox*"/>
13610             </parameter>
13611           </parameters>
13612         </callback>
13613       </field>
13614       <field name="_gtk_reserved0" introspectable="0">
13615         <callback name="_gtk_reserved0">
13616           <return-value transfer-ownership="none">
13617             <type name="none" c:type="void"/>
13618           </return-value>
13619         </callback>
13620       </field>
13621       <field name="_gtk_reserved1" introspectable="0">
13622         <callback name="_gtk_reserved1">
13623           <return-value transfer-ownership="none">
13624             <type name="none" c:type="void"/>
13625           </return-value>
13626         </callback>
13627       </field>
13628       <field name="_gtk_reserved2" introspectable="0">
13629         <callback name="_gtk_reserved2">
13630           <return-value transfer-ownership="none">
13631             <type name="none" c:type="void"/>
13632           </return-value>
13633         </callback>
13634       </field>
13635     </record>
13636     <class name="ComboBoxEntry"
13637            c:symbol-prefix="combo_box_entry"
13638            c:type="GtkComboBoxEntry"
13639            parent="ComboBox"
13640            glib:type-name="GtkComboBoxEntry"
13641            glib:get-type="gtk_combo_box_entry_get_type"
13642            glib:type-struct="ComboBoxEntryClass">
13643       <implements name="Atk.ImplementorIface"/>
13644       <implements name="Buildable"/>
13645       <implements name="CellEditable"/>
13646       <implements name="CellLayout"/>
13647       <implements name="SizeRequest"/>
13648       <constructor name="new"
13649                    c:identifier="gtk_combo_box_entry_new"
13650                    version="2.4">
13651         <doc xml:whitespace="preserve">Creates a new #GtkComboBoxEntry which has a #GtkEntry as child. After
13652 construction, you should set a model using gtk_combo_box_set_model() and a
13653 text column using gtk_combo_box_entry_set_text_column().</doc>
13654         <return-value transfer-ownership="none">
13655           <doc xml:whitespace="preserve">A new #GtkComboBoxEntry.</doc>
13656           <type name="Widget" c:type="GtkWidget*"/>
13657         </return-value>
13658       </constructor>
13659       <constructor name="new_text"
13660                    c:identifier="gtk_combo_box_entry_new_text"
13661                    version="2.4">
13662         <doc xml:whitespace="preserve">Convenience function which constructs a new editable text combo box, which 
13663 is a #GtkComboBoxEntry just displaying strings. If you use this function to
13664 create a text combo box, you should only manipulate its data source with
13665 gtk_combo_box_insert_text(), gtk_combo_box_prepend_text() and
13666 gtk_combo_box_remove_text().</doc>
13667         <return-value transfer-ownership="none">
13668           <doc xml:whitespace="preserve">A new text #GtkComboBoxEntry.</doc>
13669           <type name="Widget" c:type="GtkWidget*"/>
13670         </return-value>
13671       </constructor>
13672       <constructor name="new_with_model"
13673                    c:identifier="gtk_combo_box_entry_new_with_model"
13674                    version="2.4">
13675         <doc xml:whitespace="preserve">Creates a new #GtkComboBoxEntry which has a #GtkEntry as child and a list
13676 of strings as popup. You can get the #GtkEntry from a #GtkComboBoxEntry
13677 using GTK_ENTRY (GTK_BIN (combo_box_entry)-&gt;child). To add and remove
13678 strings from the list, just modify @model using its data manipulation
13679 API.</doc>
13680         <return-value transfer-ownership="none">
13681           <doc xml:whitespace="preserve">A new #GtkComboBoxEntry.</doc>
13682           <type name="Widget" c:type="GtkWidget*"/>
13683         </return-value>
13684         <parameters>
13685           <parameter name="model" transfer-ownership="none">
13686             <doc xml:whitespace="preserve">A #GtkTreeModel.</doc>
13687             <type name="TreeModel" c:type="GtkTreeModel*"/>
13688           </parameter>
13689           <parameter name="text_column" transfer-ownership="none">
13690             <doc xml:whitespace="preserve">A column in @model to get the strings from.</doc>
13691             <type name="gint" c:type="gint"/>
13692           </parameter>
13693         </parameters>
13694       </constructor>
13695       <method name="get_text_column"
13696               c:identifier="gtk_combo_box_entry_get_text_column"
13697               version="2.4">
13698         <doc xml:whitespace="preserve">Returns the column which @entry_box is using to get the strings from.</doc>
13699         <return-value transfer-ownership="none">
13700           <doc xml:whitespace="preserve">A column in the data source model of @entry_box.</doc>
13701           <type name="gint" c:type="gint"/>
13702         </return-value>
13703       </method>
13704       <method name="set_text_column"
13705               c:identifier="gtk_combo_box_entry_set_text_column"
13706               version="2.4">
13707         <doc xml:whitespace="preserve">Sets the model column which @entry_box should use to get strings from
13708 to be @text_column.</doc>
13709         <return-value transfer-ownership="none">
13710           <type name="none" c:type="void"/>
13711         </return-value>
13712         <parameters>
13713           <parameter name="text_column" transfer-ownership="none">
13714             <doc xml:whitespace="preserve">A column in @model to get the strings from.</doc>
13715             <type name="gint" c:type="gint"/>
13716           </parameter>
13717         </parameters>
13718       </method>
13719       <property name="text-column" writable="1" transfer-ownership="none">
13720         <type name="gint"/>
13721       </property>
13722       <field name="parent_instance">
13723         <type name="ComboBox" c:type="GtkComboBox"/>
13724       </field>
13725       <field name="priv">
13726         <type name="ComboBoxEntryPrivate" c:type="GtkComboBoxEntryPrivate*"/>
13727       </field>
13728     </class>
13729     <record name="ComboBoxEntryClass"
13730             c:type="GtkComboBoxEntryClass"
13731             glib:is-gtype-struct-for="ComboBoxEntry">
13732       <field name="parent_class">
13733         <type name="ComboBoxClass" c:type="GtkComboBoxClass"/>
13734       </field>
13735       <field name="_gtk_reserved0" introspectable="0">
13736         <callback name="_gtk_reserved0">
13737           <return-value transfer-ownership="none">
13738             <type name="none" c:type="void"/>
13739           </return-value>
13740         </callback>
13741       </field>
13742       <field name="_gtk_reserved1" introspectable="0">
13743         <callback name="_gtk_reserved1">
13744           <return-value transfer-ownership="none">
13745             <type name="none" c:type="void"/>
13746           </return-value>
13747         </callback>
13748       </field>
13749       <field name="_gtk_reserved2" introspectable="0">
13750         <callback name="_gtk_reserved2">
13751           <return-value transfer-ownership="none">
13752             <type name="none" c:type="void"/>
13753           </return-value>
13754         </callback>
13755       </field>
13756       <field name="_gtk_reserved3" introspectable="0">
13757         <callback name="_gtk_reserved3">
13758           <return-value transfer-ownership="none">
13759             <type name="none" c:type="void"/>
13760           </return-value>
13761         </callback>
13762       </field>
13763     </record>
13764     <record name="ComboBoxEntryPrivate"
13765             c:type="GtkComboBoxEntryPrivate"
13766             disguised="1">
13767     </record>
13768     <record name="ComboBoxPrivate" c:type="GtkComboBoxPrivate" disguised="1">
13769     </record>
13770     <class name="Container"
13771            c:symbol-prefix="container"
13772            c:type="GtkContainer"
13773            parent="Widget"
13774            abstract="1"
13775            glib:type-name="GtkContainer"
13776            glib:get-type="gtk_container_get_type"
13777            glib:type-struct="ContainerClass">
13778       <implements name="Atk.ImplementorIface"/>
13779       <implements name="Buildable"/>
13780       <implements name="SizeRequest"/>
13781       <virtual-method name="child_type" invoker="child_type">
13782         <doc xml:whitespace="preserve">Returns the type of the children supported by the container.
13783 Note that this may return %G_TYPE_NONE to indicate that no more
13784 children can be added, e.g. for a #GtkPaned which already has two 
13785 children.</doc>
13786         <return-value transfer-ownership="none">
13787           <doc xml:whitespace="preserve">a #GType.</doc>
13788           <type name="GType" c:type="GType"/>
13789         </return-value>
13790       </virtual-method>
13791       <virtual-method name="composite_name">
13792         <return-value transfer-ownership="full">
13793           <type name="utf8" c:type="gchar*"/>
13794         </return-value>
13795         <parameters>
13796           <parameter name="child" transfer-ownership="none">
13797             <type name="Widget" c:type="GtkWidget*"/>
13798           </parameter>
13799         </parameters>
13800       </virtual-method>
13801       <virtual-method name="forall" introspectable="0">
13802         <return-value transfer-ownership="none">
13803           <type name="none" c:type="void"/>
13804         </return-value>
13805         <parameters>
13806           <parameter name="include_internals" transfer-ownership="none">
13807             <type name="gboolean" c:type="gboolean"/>
13808           </parameter>
13809           <parameter name="callback" transfer-ownership="none" closure="2">
13810             <type name="Callback" c:type="GtkCallback"/>
13811           </parameter>
13812           <parameter name="callback_data" transfer-ownership="none">
13813             <type name="gpointer" c:type="gpointer"/>
13814           </parameter>
13815         </parameters>
13816       </virtual-method>
13817       <virtual-method name="get_child_property">
13818         <return-value transfer-ownership="none">
13819           <type name="none" c:type="void"/>
13820         </return-value>
13821         <parameters>
13822           <parameter name="child" transfer-ownership="none">
13823             <type name="Widget" c:type="GtkWidget*"/>
13824           </parameter>
13825           <parameter name="property_id" transfer-ownership="none">
13826             <type name="guint" c:type="guint"/>
13827           </parameter>
13828           <parameter name="value" transfer-ownership="none">
13829             <type name="GObject.Value" c:type="GValue*"/>
13830           </parameter>
13831           <parameter name="pspec" transfer-ownership="none">
13832             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
13833           </parameter>
13834         </parameters>
13835       </virtual-method>
13836       <virtual-method name="set_child_property">
13837         <return-value transfer-ownership="none">
13838           <type name="none" c:type="void"/>
13839         </return-value>
13840         <parameters>
13841           <parameter name="child" transfer-ownership="none">
13842             <type name="Widget" c:type="GtkWidget*"/>
13843           </parameter>
13844           <parameter name="property_id" transfer-ownership="none">
13845             <type name="guint" c:type="guint"/>
13846           </parameter>
13847           <parameter name="value" transfer-ownership="none">
13848             <type name="GObject.Value" c:type="GValue*"/>
13849           </parameter>
13850           <parameter name="pspec" transfer-ownership="none">
13851             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
13852           </parameter>
13853         </parameters>
13854       </virtual-method>
13855       <method name="add" c:identifier="gtk_container_add">
13856         <doc xml:whitespace="preserve">Adds @widget to @container. Typically used for simple containers
13857 such as #GtkWindow, #GtkFrame, or #GtkButton; for more complicated
13858 layout containers such as #GtkBox or #GtkTable, this function will
13859 pick default packing parameters that may not be correct.  So
13860 consider functions such as gtk_box_pack_start() and
13861 gtk_table_attach() as an alternative to gtk_container_add() in
13862 those cases. A widget may be added to only one container at a time;
13863 you can't place the same widget inside two different containers.</doc>
13864         <return-value transfer-ownership="none">
13865           <type name="none" c:type="void"/>
13866         </return-value>
13867         <parameters>
13868           <parameter name="widget" transfer-ownership="none">
13869             <doc xml:whitespace="preserve">a widget to be placed inside @container</doc>
13870             <type name="Widget" c:type="GtkWidget*"/>
13871           </parameter>
13872         </parameters>
13873       </method>
13874       <method name="add_with_properties"
13875               c:identifier="gtk_container_add_with_properties"
13876               introspectable="0">
13877         <doc xml:whitespace="preserve">Adds @widget to @container, setting child properties at the same time.
13878 See gtk_container_add() and gtk_container_child_set() for more details.</doc>
13879         <return-value transfer-ownership="none">
13880           <type name="none" c:type="void"/>
13881         </return-value>
13882         <parameters>
13883           <parameter name="widget" transfer-ownership="none">
13884             <doc xml:whitespace="preserve">a widget to be placed inside @container</doc>
13885             <type name="Widget" c:type="GtkWidget*"/>
13886           </parameter>
13887           <parameter name="first_prop_name" transfer-ownership="none">
13888             <doc xml:whitespace="preserve">the name of the first child property to set</doc>
13889             <type name="utf8" c:type="gchar*"/>
13890           </parameter>
13891           <parameter transfer-ownership="none">
13892             <varargs>
13893             </varargs>
13894           </parameter>
13895         </parameters>
13896       </method>
13897       <method name="check_resize" c:identifier="gtk_container_check_resize">
13898         <return-value transfer-ownership="none">
13899           <type name="none" c:type="void"/>
13900         </return-value>
13901       </method>
13902       <method name="child_get"
13903               c:identifier="gtk_container_child_get"
13904               introspectable="0">
13905         <doc xml:whitespace="preserve">Gets the values of one or more child properties for @child and @container.</doc>
13906         <return-value transfer-ownership="none">
13907           <type name="none" c:type="void"/>
13908         </return-value>
13909         <parameters>
13910           <parameter name="child" transfer-ownership="none">
13911             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
13912             <type name="Widget" c:type="GtkWidget*"/>
13913           </parameter>
13914           <parameter name="first_prop_name" transfer-ownership="none">
13915             <doc xml:whitespace="preserve">the name of the first property to get</doc>
13916             <type name="utf8" c:type="gchar*"/>
13917           </parameter>
13918           <parameter transfer-ownership="none">
13919             <varargs>
13920             </varargs>
13921           </parameter>
13922         </parameters>
13923       </method>
13924       <method name="child_get_property"
13925               c:identifier="gtk_container_child_get_property">
13926         <doc xml:whitespace="preserve">Gets the value of a child property for @child and @container.</doc>
13927         <return-value transfer-ownership="none">
13928           <type name="none" c:type="void"/>
13929         </return-value>
13930         <parameters>
13931           <parameter name="child" transfer-ownership="none">
13932             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
13933             <type name="Widget" c:type="GtkWidget*"/>
13934           </parameter>
13935           <parameter name="property_name" transfer-ownership="none">
13936             <doc xml:whitespace="preserve">the name of the property to get</doc>
13937             <type name="utf8" c:type="gchar*"/>
13938           </parameter>
13939           <parameter name="value" transfer-ownership="none">
13940             <doc xml:whitespace="preserve">a location to return the value</doc>
13941             <type name="GObject.Value" c:type="GValue*"/>
13942           </parameter>
13943         </parameters>
13944       </method>
13945       <method name="child_get_valist"
13946               c:identifier="gtk_container_child_get_valist"
13947               introspectable="0">
13948         <doc xml:whitespace="preserve">Gets the values of one or more child properties for @child and @container.</doc>
13949         <return-value transfer-ownership="none">
13950           <type name="none" c:type="void"/>
13951         </return-value>
13952         <parameters>
13953           <parameter name="child" transfer-ownership="none">
13954             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
13955             <type name="Widget" c:type="GtkWidget*"/>
13956           </parameter>
13957           <parameter name="first_property_name" transfer-ownership="none">
13958             <doc xml:whitespace="preserve">the name of the first property to get</doc>
13959             <type name="utf8" c:type="gchar*"/>
13960           </parameter>
13961           <parameter name="var_args" transfer-ownership="none">
13962             <doc xml:whitespace="preserve">return location for the first property, followed optionally by more name/return location pairs, followed by %NULL</doc>
13963             <type name="va_list" c:type="va_list"/>
13964           </parameter>
13965         </parameters>
13966       </method>
13967       <method name="child_set"
13968               c:identifier="gtk_container_child_set"
13969               introspectable="0">
13970         <doc xml:whitespace="preserve">Sets one or more child properties for @child and @container.</doc>
13971         <return-value transfer-ownership="none">
13972           <type name="none" c:type="void"/>
13973         </return-value>
13974         <parameters>
13975           <parameter name="child" transfer-ownership="none">
13976             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
13977             <type name="Widget" c:type="GtkWidget*"/>
13978           </parameter>
13979           <parameter name="first_prop_name" transfer-ownership="none">
13980             <doc xml:whitespace="preserve">the name of the first property to set</doc>
13981             <type name="utf8" c:type="gchar*"/>
13982           </parameter>
13983           <parameter transfer-ownership="none">
13984             <varargs>
13985             </varargs>
13986           </parameter>
13987         </parameters>
13988       </method>
13989       <method name="child_set_property"
13990               c:identifier="gtk_container_child_set_property">
13991         <doc xml:whitespace="preserve">Sets a child property for @child and @container.</doc>
13992         <return-value transfer-ownership="none">
13993           <type name="none" c:type="void"/>
13994         </return-value>
13995         <parameters>
13996           <parameter name="child" transfer-ownership="none">
13997             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
13998             <type name="Widget" c:type="GtkWidget*"/>
13999           </parameter>
14000           <parameter name="property_name" transfer-ownership="none">
14001             <doc xml:whitespace="preserve">the name of the property to set</doc>
14002             <type name="utf8" c:type="gchar*"/>
14003           </parameter>
14004           <parameter name="value" transfer-ownership="none">
14005             <doc xml:whitespace="preserve">the value to set the property to</doc>
14006             <type name="GObject.Value" c:type="GValue*"/>
14007           </parameter>
14008         </parameters>
14009       </method>
14010       <method name="child_set_valist"
14011               c:identifier="gtk_container_child_set_valist"
14012               introspectable="0">
14013         <doc xml:whitespace="preserve">Sets one or more child properties for @child and @container.</doc>
14014         <return-value transfer-ownership="none">
14015           <type name="none" c:type="void"/>
14016         </return-value>
14017         <parameters>
14018           <parameter name="child" transfer-ownership="none">
14019             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
14020             <type name="Widget" c:type="GtkWidget*"/>
14021           </parameter>
14022           <parameter name="first_property_name" transfer-ownership="none">
14023             <doc xml:whitespace="preserve">the name of the first property to set</doc>
14024             <type name="utf8" c:type="gchar*"/>
14025           </parameter>
14026           <parameter name="var_args" transfer-ownership="none">
14027             <doc xml:whitespace="preserve">a %NULL-terminated list of property names and values, starting with @first_prop_name</doc>
14028             <type name="va_list" c:type="va_list"/>
14029           </parameter>
14030         </parameters>
14031       </method>
14032       <method name="child_type" c:identifier="gtk_container_child_type">
14033         <doc xml:whitespace="preserve">Returns the type of the children supported by the container.
14034 Note that this may return %G_TYPE_NONE to indicate that no more
14035 children can be added, e.g. for a #GtkPaned which already has two 
14036 children.</doc>
14037         <return-value transfer-ownership="none">
14038           <doc xml:whitespace="preserve">a #GType.</doc>
14039           <type name="GType" c:type="GType"/>
14040         </return-value>
14041       </method>
14042       <method name="forall"
14043               c:identifier="gtk_container_forall"
14044               introspectable="0">
14045         <doc xml:whitespace="preserve">Invokes @callback on each child of @container, including children
14046 that are considered "internal" (implementation details of the
14047 container). "Internal" children generally weren't added by the user
14048 of the container, but were added by the container implementation
14049 itself.  Most applications should use gtk_container_foreach(),
14050 rather than gtk_container_forall().</doc>
14051         <return-value transfer-ownership="none">
14052           <type name="none" c:type="void"/>
14053         </return-value>
14054         <parameters>
14055           <parameter name="callback" transfer-ownership="none" closure="1">
14056             <doc xml:whitespace="preserve">a callback</doc>
14057             <type name="Callback" c:type="GtkCallback"/>
14058           </parameter>
14059           <parameter name="callback_data" transfer-ownership="none">
14060             <doc xml:whitespace="preserve">callback user data</doc>
14061             <type name="gpointer" c:type="gpointer"/>
14062           </parameter>
14063         </parameters>
14064       </method>
14065       <method name="foreach" c:identifier="gtk_container_foreach">
14066         <doc xml:whitespace="preserve">Invokes @callback on each non-internal child of @container. See
14067 gtk_container_forall() for details on what constitutes an
14068 "internal" child.  Most applications should use
14069 gtk_container_foreach(), rather than gtk_container_forall().</doc>
14070         <return-value transfer-ownership="none">
14071           <type name="none" c:type="void"/>
14072         </return-value>
14073         <parameters>
14074           <parameter name="callback"
14075                      transfer-ownership="none"
14076                      scope="call"
14077                      closure="1">
14078             <doc xml:whitespace="preserve">a callback</doc>
14079             <type name="Callback" c:type="GtkCallback"/>
14080           </parameter>
14081           <parameter name="callback_data" transfer-ownership="none">
14082             <doc xml:whitespace="preserve">callback user data</doc>
14083             <type name="gpointer" c:type="gpointer"/>
14084           </parameter>
14085         </parameters>
14086       </method>
14087       <method name="get_border_width"
14088               c:identifier="gtk_container_get_border_width">
14089         <doc xml:whitespace="preserve">Retrieves the border width of the container. See
14090 gtk_container_set_border_width().</doc>
14091         <return-value transfer-ownership="none">
14092           <doc xml:whitespace="preserve">the current border width</doc>
14093           <type name="guint" c:type="guint"/>
14094         </return-value>
14095       </method>
14096       <method name="get_children" c:identifier="gtk_container_get_children">
14097         <doc xml:whitespace="preserve">Returns the container's non-internal children. See
14098 gtk_container_forall() for details on what constitutes an "internal" child.</doc>
14099         <return-value transfer-ownership="container">
14100           <doc xml:whitespace="preserve">a newly-allocated list of the container's non-internal children.</doc>
14101           <type name="GLib.List" c:type="GList*">
14102             <type name="Widget"/>
14103           </type>
14104         </return-value>
14105       </method>
14106       <method name="get_focus_chain"
14107               c:identifier="gtk_container_get_focus_chain">
14108         <doc xml:whitespace="preserve">Retrieves the focus chain of the container, if one has been
14109 set explicitly. If no focus chain has been explicitly
14110 set, GTK+ computes the focus chain based on the positions
14111 of the children. In that case, GTK+ stores %NULL in
14112 has been set explicitly.</doc>
14113         <return-value transfer-ownership="none">
14114           <doc xml:whitespace="preserve">%TRUE if the focus chain of the container</doc>
14115           <type name="gboolean" c:type="gboolean"/>
14116         </return-value>
14117         <parameters>
14118           <parameter name="focusable_widgets"
14119                      direction="out"
14120                      caller-allocates="0"
14121                      transfer-ownership="container">
14122             <doc xml:whitespace="preserve">location to store the focus chain of the container, or %NULL. You should free this list using g_list_free() when you are done with it, however no additional reference count is added to the individual widgets in the focus chain.</doc>
14123             <type name="GLib.List" c:type="GList**">
14124               <type name="Widget"/>
14125             </type>
14126           </parameter>
14127         </parameters>
14128       </method>
14129       <method name="get_focus_child"
14130               c:identifier="gtk_container_get_focus_child"
14131               version="2.14"
14132               introspectable="0">
14133         <doc xml:whitespace="preserve">Returns the current focus child widget inside @container. This is not the
14134 currently focused widget. That can be obtained by calling
14135 gtk_window_get_focus().
14136 the @conatiner is focussed, or %NULL if none is set.</doc>
14137         <return-value>
14138           <doc xml:whitespace="preserve">The child widget which will recieve the focus inside @container when</doc>
14139           <type name="Widget" c:type="GtkWidget*"/>
14140         </return-value>
14141       </method>
14142       <method name="get_focus_hadjustment"
14143               c:identifier="gtk_container_get_focus_hadjustment">
14144         <doc xml:whitespace="preserve">Retrieves the horizontal focus adjustment for the container. See
14145 gtk_container_set_focus_hadjustment ().
14146 none has been set.</doc>
14147         <return-value transfer-ownership="none">
14148           <doc xml:whitespace="preserve">the horizontal focus adjustment, or %NULL if</doc>
14149           <type name="Adjustment" c:type="GtkAdjustment*"/>
14150         </return-value>
14151       </method>
14152       <method name="get_focus_vadjustment"
14153               c:identifier="gtk_container_get_focus_vadjustment">
14154         <doc xml:whitespace="preserve">Retrieves the vertical focus adjustment for the container. See
14155 gtk_container_set_focus_vadjustment().
14156 none has been set.</doc>
14157         <return-value transfer-ownership="none">
14158           <doc xml:whitespace="preserve">the vertical focus adjustment, or %NULL if</doc>
14159           <type name="Adjustment" c:type="GtkAdjustment*"/>
14160         </return-value>
14161       </method>
14162       <method name="get_resize_mode"
14163               c:identifier="gtk_container_get_resize_mode">
14164         <doc xml:whitespace="preserve">Returns the resize mode for the container. See
14165 gtk_container_set_resize_mode ().</doc>
14166         <return-value transfer-ownership="none">
14167           <doc xml:whitespace="preserve">the current resize mode</doc>
14168           <type name="ResizeMode" c:type="GtkResizeMode"/>
14169         </return-value>
14170       </method>
14171       <method name="propagate_expose"
14172               c:identifier="gtk_container_propagate_expose">
14173         <doc xml:whitespace="preserve">When a container receives an expose event, it must send synthetic
14174 expose events to all children that don't have their own #GdkWindows.
14175 This function provides a convenient way of doing this. A container,
14176 when it receives an expose event, calls gtk_container_propagate_expose() 
14177 once for each child, passing in the event the container received.
14178 gtk_container_propagate_expose() takes care of deciding whether
14179 an expose event needs to be sent to the child, intersecting
14180 the event's area with the child area, and sending the event.
14181 In most cases, a container can simply either simply inherit the
14182 #GtkWidget::expose implementation from #GtkContainer, or, do some drawing 
14183 and then chain to the ::expose implementation from #GtkContainer.</doc>
14184         <return-value transfer-ownership="none">
14185           <type name="none" c:type="void"/>
14186         </return-value>
14187         <parameters>
14188           <parameter name="child" transfer-ownership="none">
14189             <doc xml:whitespace="preserve">a child of @container</doc>
14190             <type name="Widget" c:type="GtkWidget*"/>
14191           </parameter>
14192           <parameter name="event" transfer-ownership="none">
14193             <doc xml:whitespace="preserve">a expose event sent to container</doc>
14194             <type name="Gdk.EventExpose" c:type="GdkEventExpose*"/>
14195           </parameter>
14196         </parameters>
14197       </method>
14198       <method name="remove" c:identifier="gtk_container_remove">
14199         <doc xml:whitespace="preserve">Removes @widget from @container. @widget must be inside @container.
14200 Note that @container will own a reference to @widget, and that this
14201 may be the last reference held; so removing a widget from its
14202 container can destroy that widget. If you want to use @widget
14203 again, you need to add a reference to it while it's not inside
14204 a container, using g_object_ref(). If you don't want to use @widget
14205 again it's usually more efficient to simply destroy it directly
14206 using gtk_widget_destroy() since this will remove it from the
14207 container and help break any circular reference count cycles.</doc>
14208         <return-value transfer-ownership="none">
14209           <type name="none" c:type="void"/>
14210         </return-value>
14211         <parameters>
14212           <parameter name="widget" transfer-ownership="none">
14213             <doc xml:whitespace="preserve">a current child of @container</doc>
14214             <type name="Widget" c:type="GtkWidget*"/>
14215           </parameter>
14216         </parameters>
14217       </method>
14218       <method name="resize_children"
14219               c:identifier="gtk_container_resize_children">
14220         <return-value transfer-ownership="none">
14221           <type name="none" c:type="void"/>
14222         </return-value>
14223       </method>
14224       <method name="set_border_width"
14225               c:identifier="gtk_container_set_border_width">
14226         <doc xml:whitespace="preserve">Sets the border width of the container.
14227 The border width of a container is the amount of space to leave
14228 around the outside of the container. The only exception to this is
14229 #GtkWindow; because toplevel windows can't leave space outside,
14230 they leave the space inside. The border is added on all sides of
14231 the container. To add space to only one side, one approach is to
14232 create a #GtkAlignment widget, call gtk_widget_set_size_request()
14233 to give it a size, and place it on the side of the container as
14234 a spacer.</doc>
14235         <return-value transfer-ownership="none">
14236           <type name="none" c:type="void"/>
14237         </return-value>
14238         <parameters>
14239           <parameter name="border_width" transfer-ownership="none">
14240             <doc xml:whitespace="preserve">amount of blank space to leave &lt;emphasis&gt;outside&lt;/emphasis&gt; the container. Valid values are in the range 0-65535 pixels.</doc>
14241             <type name="guint" c:type="guint"/>
14242           </parameter>
14243         </parameters>
14244       </method>
14245       <method name="set_focus_chain"
14246               c:identifier="gtk_container_set_focus_chain">
14247         <doc xml:whitespace="preserve">Sets a focus chain, overriding the one computed automatically by GTK+.
14248 In principle each widget in the chain should be a descendant of the 
14249 container, but this is not enforced by this method, since it's allowed 
14250 to set the focus chain before you pack the widgets, or have a widget 
14251 in the chain that isn't always packed. The necessary checks are done 
14252 when the focus chain is actually traversed.</doc>
14253         <return-value transfer-ownership="none">
14254           <type name="none" c:type="void"/>
14255         </return-value>
14256         <parameters>
14257           <parameter name="focusable_widgets" transfer-ownership="none">
14258             <doc xml:whitespace="preserve">the new focus chain</doc>
14259             <type name="GLib.List" c:type="GList*">
14260               <type name="Widget"/>
14261             </type>
14262           </parameter>
14263         </parameters>
14264       </method>
14265       <method name="set_focus_child"
14266               c:identifier="gtk_container_set_focus_child">
14267         <doc xml:whitespace="preserve">Sets, or unsets if @child is %NULL, the focused child of @container.
14268 This function emits the GtkContainer::set_focus_child signal of
14269 default behaviour by overriding the class closure of this signal.
14270 This is function is mostly meant to be used by widgets. Applications can use
14271 gtk_widget_grab_focus() to manualy set the focus to a specific widget.</doc>
14272         <return-value transfer-ownership="none">
14273           <type name="none" c:type="void"/>
14274         </return-value>
14275         <parameters>
14276           <parameter name="child" transfer-ownership="none" allow-none="1">
14277             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL</doc>
14278             <type name="Widget" c:type="GtkWidget*"/>
14279           </parameter>
14280         </parameters>
14281       </method>
14282       <method name="set_focus_hadjustment"
14283               c:identifier="gtk_container_set_focus_hadjustment">
14284         <doc xml:whitespace="preserve">Hooks up an adjustment to focus handling in a container, so when a child 
14285 of the container is focused, the adjustment is scrolled to show that 
14286 widget. This function sets the horizontal alignment. 
14287 See gtk_scrolled_window_get_hadjustment() for a typical way of obtaining 
14288 the adjustment and gtk_container_set_focus_vadjustment() for setting
14289 the vertical adjustment.
14290 The adjustments have to be in pixel units and in the same coordinate 
14291 system as the allocation for immediate children of the container.</doc>
14292         <return-value transfer-ownership="none">
14293           <type name="none" c:type="void"/>
14294         </return-value>
14295         <parameters>
14296           <parameter name="adjustment" transfer-ownership="none">
14297             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the focus is moved among the descendents of @container</doc>
14298             <type name="Adjustment" c:type="GtkAdjustment*"/>
14299           </parameter>
14300         </parameters>
14301       </method>
14302       <method name="set_focus_vadjustment"
14303               c:identifier="gtk_container_set_focus_vadjustment">
14304         <doc xml:whitespace="preserve">Hooks up an adjustment to focus handling in a container, so when a 
14305 child of the container is focused, the adjustment is scrolled to 
14306 show that widget. This function sets the vertical alignment. See 
14307 gtk_scrolled_window_get_vadjustment() for a typical way of obtaining 
14308 the adjustment and gtk_container_set_focus_hadjustment() for setting
14309 the horizontal adjustment.
14310 The adjustments have to be in pixel units and in the same coordinate 
14311 system as the allocation for immediate children of the container.</doc>
14312         <return-value transfer-ownership="none">
14313           <type name="none" c:type="void"/>
14314         </return-value>
14315         <parameters>
14316           <parameter name="adjustment" transfer-ownership="none">
14317             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the focus is moved among the descendents of @container</doc>
14318             <type name="Adjustment" c:type="GtkAdjustment*"/>
14319           </parameter>
14320         </parameters>
14321       </method>
14322       <method name="set_reallocate_redraws"
14323               c:identifier="gtk_container_set_reallocate_redraws">
14324         <doc xml:whitespace="preserve">Sets the @reallocate_redraws flag of the container to the given value.
14325 Containers requesting reallocation redraws get automatically
14326 redrawn if any of their children changed allocation.</doc>
14327         <return-value transfer-ownership="none">
14328           <type name="none" c:type="void"/>
14329         </return-value>
14330         <parameters>
14331           <parameter name="needs_redraws" transfer-ownership="none">
14332             <doc xml:whitespace="preserve">the new value for the container's @reallocate_redraws flag</doc>
14333             <type name="gboolean" c:type="gboolean"/>
14334           </parameter>
14335         </parameters>
14336       </method>
14337       <method name="set_resize_mode"
14338               c:identifier="gtk_container_set_resize_mode">
14339         <doc xml:whitespace="preserve">Sets the resize mode for the container.
14340 The resize mode of a container determines whether a resize request 
14341 will be passed to the container's parent, queued for later execution
14342 or executed immediately.</doc>
14343         <return-value transfer-ownership="none">
14344           <type name="none" c:type="void"/>
14345         </return-value>
14346         <parameters>
14347           <parameter name="resize_mode" transfer-ownership="none">
14348             <doc xml:whitespace="preserve">the new resize mode</doc>
14349             <type name="ResizeMode" c:type="GtkResizeMode"/>
14350           </parameter>
14351         </parameters>
14352       </method>
14353       <method name="unset_focus_chain"
14354               c:identifier="gtk_container_unset_focus_chain">
14355         <doc xml:whitespace="preserve">Removes a focus chain explicitly set with gtk_container_set_focus_chain().</doc>
14356         <return-value transfer-ownership="none">
14357           <type name="none" c:type="void"/>
14358         </return-value>
14359       </method>
14360       <property name="border-width" writable="1" transfer-ownership="none">
14361         <type name="guint"/>
14362       </property>
14363       <property name="child"
14364                 readable="0"
14365                 writable="1"
14366                 transfer-ownership="none">
14367         <type name="Widget"/>
14368       </property>
14369       <property name="resize-mode" writable="1" transfer-ownership="none">
14370         <type name="ResizeMode"/>
14371       </property>
14372       <field name="widget">
14373         <type name="Widget" c:type="GtkWidget"/>
14374       </field>
14375       <field name="priv">
14376         <type name="ContainerPrivate" c:type="GtkContainerPrivate*"/>
14377       </field>
14378       <glib:signal name="add">
14379         <return-value transfer-ownership="none">
14380           <type name="none"/>
14381         </return-value>
14382         <parameters>
14383           <parameter name="object" transfer-ownership="none">
14384             <type name="Widget"/>
14385           </parameter>
14386         </parameters>
14387       </glib:signal>
14388       <glib:signal name="check-resize">
14389         <return-value transfer-ownership="none">
14390           <type name="none"/>
14391         </return-value>
14392       </glib:signal>
14393       <glib:signal name="remove">
14394         <return-value transfer-ownership="none">
14395           <type name="none"/>
14396         </return-value>
14397         <parameters>
14398           <parameter name="object" transfer-ownership="none">
14399             <type name="Widget"/>
14400           </parameter>
14401         </parameters>
14402       </glib:signal>
14403       <glib:signal name="set-focus-child">
14404         <return-value transfer-ownership="none">
14405           <type name="none"/>
14406         </return-value>
14407         <parameters>
14408           <parameter name="object" transfer-ownership="none">
14409             <type name="Widget"/>
14410           </parameter>
14411         </parameters>
14412       </glib:signal>
14413     </class>
14414     <record name="ContainerClass"
14415             c:type="GtkContainerClass"
14416             glib:is-gtype-struct-for="Container">
14417       <field name="parent_class">
14418         <type name="WidgetClass" c:type="GtkWidgetClass"/>
14419       </field>
14420       <field name="handle_border_width" bits="1">
14421         <type name="guint" c:type="unsigned"/>
14422       </field>
14423       <field name="add">
14424         <callback name="add">
14425           <return-value transfer-ownership="none">
14426             <type name="none" c:type="void"/>
14427           </return-value>
14428           <parameters>
14429             <parameter name="container" transfer-ownership="none">
14430               <type name="Container" c:type="GtkContainer*"/>
14431             </parameter>
14432             <parameter name="widget" transfer-ownership="none">
14433               <type name="Widget" c:type="GtkWidget*"/>
14434             </parameter>
14435           </parameters>
14436         </callback>
14437       </field>
14438       <field name="remove">
14439         <callback name="remove">
14440           <return-value transfer-ownership="none">
14441             <type name="none" c:type="void"/>
14442           </return-value>
14443           <parameters>
14444             <parameter name="container" transfer-ownership="none">
14445               <type name="Container" c:type="GtkContainer*"/>
14446             </parameter>
14447             <parameter name="widget" transfer-ownership="none">
14448               <type name="Widget" c:type="GtkWidget*"/>
14449             </parameter>
14450           </parameters>
14451         </callback>
14452       </field>
14453       <field name="check_resize">
14454         <callback name="check_resize">
14455           <return-value transfer-ownership="none">
14456             <type name="none" c:type="void"/>
14457           </return-value>
14458           <parameters>
14459             <parameter name="container" transfer-ownership="none">
14460               <type name="Container" c:type="GtkContainer*"/>
14461             </parameter>
14462           </parameters>
14463         </callback>
14464       </field>
14465       <field name="forall" introspectable="0">
14466         <callback name="forall" introspectable="0">
14467           <return-value transfer-ownership="none">
14468             <type name="none" c:type="void"/>
14469           </return-value>
14470           <parameters>
14471             <parameter name="container" transfer-ownership="none">
14472               <type name="Container" c:type="GtkContainer*"/>
14473             </parameter>
14474             <parameter name="include_internals" transfer-ownership="none">
14475               <type name="gboolean" c:type="gboolean"/>
14476             </parameter>
14477             <parameter name="callback" transfer-ownership="none" closure="3">
14478               <type name="Callback" c:type="GtkCallback"/>
14479             </parameter>
14480             <parameter name="callback_data" transfer-ownership="none">
14481               <type name="gpointer" c:type="gpointer"/>
14482             </parameter>
14483           </parameters>
14484         </callback>
14485       </field>
14486       <field name="set_focus_child">
14487         <callback name="set_focus_child">
14488           <return-value transfer-ownership="none">
14489             <type name="none" c:type="void"/>
14490           </return-value>
14491           <parameters>
14492             <parameter name="container" transfer-ownership="none">
14493               <type name="Container" c:type="GtkContainer*"/>
14494             </parameter>
14495             <parameter name="widget" transfer-ownership="none">
14496               <type name="Widget" c:type="GtkWidget*"/>
14497             </parameter>
14498           </parameters>
14499         </callback>
14500       </field>
14501       <field name="child_type">
14502         <callback name="child_type">
14503           <return-value transfer-ownership="none">
14504             <doc xml:whitespace="preserve">a #GType.</doc>
14505             <type name="GType" c:type="GType"/>
14506           </return-value>
14507           <parameters>
14508             <parameter name="container" transfer-ownership="none">
14509               <type name="Container" c:type="GtkContainer*"/>
14510             </parameter>
14511           </parameters>
14512         </callback>
14513       </field>
14514       <field name="composite_name">
14515         <callback name="composite_name">
14516           <return-value transfer-ownership="full">
14517             <type name="utf8" c:type="gchar*"/>
14518           </return-value>
14519           <parameters>
14520             <parameter name="container" transfer-ownership="none">
14521               <type name="Container" c:type="GtkContainer*"/>
14522             </parameter>
14523             <parameter name="child" transfer-ownership="none">
14524               <type name="Widget" c:type="GtkWidget*"/>
14525             </parameter>
14526           </parameters>
14527         </callback>
14528       </field>
14529       <field name="set_child_property">
14530         <callback name="set_child_property">
14531           <return-value transfer-ownership="none">
14532             <type name="none" c:type="void"/>
14533           </return-value>
14534           <parameters>
14535             <parameter name="container" transfer-ownership="none">
14536               <type name="Container" c:type="GtkContainer*"/>
14537             </parameter>
14538             <parameter name="child" transfer-ownership="none">
14539               <type name="Widget" c:type="GtkWidget*"/>
14540             </parameter>
14541             <parameter name="property_id" transfer-ownership="none">
14542               <type name="guint" c:type="guint"/>
14543             </parameter>
14544             <parameter name="value" transfer-ownership="none">
14545               <type name="GObject.Value" c:type="GValue*"/>
14546             </parameter>
14547             <parameter name="pspec" transfer-ownership="none">
14548               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
14549             </parameter>
14550           </parameters>
14551         </callback>
14552       </field>
14553       <field name="get_child_property">
14554         <callback name="get_child_property">
14555           <return-value transfer-ownership="none">
14556             <type name="none" c:type="void"/>
14557           </return-value>
14558           <parameters>
14559             <parameter name="container" transfer-ownership="none">
14560               <type name="Container" c:type="GtkContainer*"/>
14561             </parameter>
14562             <parameter name="child" transfer-ownership="none">
14563               <type name="Widget" c:type="GtkWidget*"/>
14564             </parameter>
14565             <parameter name="property_id" transfer-ownership="none">
14566               <type name="guint" c:type="guint"/>
14567             </parameter>
14568             <parameter name="value" transfer-ownership="none">
14569               <type name="GObject.Value" c:type="GValue*"/>
14570             </parameter>
14571             <parameter name="pspec" transfer-ownership="none">
14572               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
14573             </parameter>
14574           </parameters>
14575         </callback>
14576       </field>
14577       <field name="_gtk_reserved1" introspectable="0">
14578         <callback name="_gtk_reserved1">
14579           <return-value transfer-ownership="none">
14580             <type name="none" c:type="void"/>
14581           </return-value>
14582         </callback>
14583       </field>
14584       <field name="_gtk_reserved2" introspectable="0">
14585         <callback name="_gtk_reserved2">
14586           <return-value transfer-ownership="none">
14587             <type name="none" c:type="void"/>
14588           </return-value>
14589         </callback>
14590       </field>
14591       <field name="_gtk_reserved3" introspectable="0">
14592         <callback name="_gtk_reserved3">
14593           <return-value transfer-ownership="none">
14594             <type name="none" c:type="void"/>
14595           </return-value>
14596         </callback>
14597       </field>
14598       <field name="_gtk_reserved4" introspectable="0">
14599         <callback name="_gtk_reserved4">
14600           <return-value transfer-ownership="none">
14601             <type name="none" c:type="void"/>
14602           </return-value>
14603         </callback>
14604       </field>
14605       <method name="handle_border_width"
14606               c:identifier="gtk_container_class_handle_border_width">
14607         <doc xml:whitespace="preserve">Modifies a subclass of #GtkContainerClass to automatically add and
14608 remove the border-width setting on GtkContainer.  This allows the
14609 subclass to ignore the border width in its size request and
14610 allocate methods. The intent is for a subclass to invoke this
14611 in its class_init function.
14612 gtk_container_class_handle_border_width() is necessary because it
14613 would break API too badly to make this behavior the default. So
14614 subclasses must "opt in" to the parent class handling border_width
14615 for them.</doc>
14616         <return-value transfer-ownership="none">
14617           <type name="none" c:type="void"/>
14618         </return-value>
14619       </method>
14620       <method name="install_child_property"
14621               c:identifier="gtk_container_class_install_child_property">
14622         <doc xml:whitespace="preserve">Installs a child property on a container class.</doc>
14623         <return-value transfer-ownership="none">
14624           <type name="none" c:type="void"/>
14625         </return-value>
14626         <parameters>
14627           <parameter name="property_id" transfer-ownership="none">
14628             <doc xml:whitespace="preserve">the id for the property</doc>
14629             <type name="guint" c:type="guint"/>
14630           </parameter>
14631           <parameter name="pspec" transfer-ownership="none">
14632             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
14633             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
14634           </parameter>
14635         </parameters>
14636       </method>
14637     </record>
14638     <record name="ContainerPrivate" c:type="GtkContainerPrivate" disguised="1">
14639     </record>
14640     <enumeration name="CornerType"
14641                  glib:type-name="GtkCornerType"
14642                  glib:get-type="gtk_corner_type_get_type"
14643                  c:type="GtkCornerType">
14644       <member name="top_left"
14645               value="0"
14646               c:identifier="GTK_CORNER_TOP_LEFT"
14647               glib:nick="top-left"/>
14648       <member name="bottom_left"
14649               value="1"
14650               c:identifier="GTK_CORNER_BOTTOM_LEFT"
14651               glib:nick="bottom-left"/>
14652       <member name="top_right"
14653               value="2"
14654               c:identifier="GTK_CORNER_TOP_RIGHT"
14655               glib:nick="top-right"/>
14656       <member name="bottom_right"
14657               value="3"
14658               c:identifier="GTK_CORNER_BOTTOM_RIGHT"
14659               glib:nick="bottom-right"/>
14660     </enumeration>
14661     <bitfield name="DebugFlag"
14662               glib:type-name="GtkDebugFlag"
14663               glib:get-type="gtk_debug_flag_get_type"
14664               c:type="GtkDebugFlag">
14665       <member name="misc"
14666               value="1"
14667               c:identifier="GTK_DEBUG_MISC"
14668               glib:nick="misc"/>
14669       <member name="plugsocket"
14670               value="2"
14671               c:identifier="GTK_DEBUG_PLUGSOCKET"
14672               glib:nick="plugsocket"/>
14673       <member name="text"
14674               value="4"
14675               c:identifier="GTK_DEBUG_TEXT"
14676               glib:nick="text"/>
14677       <member name="tree"
14678               value="8"
14679               c:identifier="GTK_DEBUG_TREE"
14680               glib:nick="tree"/>
14681       <member name="updates"
14682               value="16"
14683               c:identifier="GTK_DEBUG_UPDATES"
14684               glib:nick="updates"/>
14685       <member name="keybindings"
14686               value="32"
14687               c:identifier="GTK_DEBUG_KEYBINDINGS"
14688               glib:nick="keybindings"/>
14689       <member name="multihead"
14690               value="64"
14691               c:identifier="GTK_DEBUG_MULTIHEAD"
14692               glib:nick="multihead"/>
14693       <member name="modules"
14694               value="128"
14695               c:identifier="GTK_DEBUG_MODULES"
14696               glib:nick="modules"/>
14697       <member name="geometry"
14698               value="256"
14699               c:identifier="GTK_DEBUG_GEOMETRY"
14700               glib:nick="geometry"/>
14701       <member name="icontheme"
14702               value="512"
14703               c:identifier="GTK_DEBUG_ICONTHEME"
14704               glib:nick="icontheme"/>
14705       <member name="printing"
14706               value="1024"
14707               c:identifier="GTK_DEBUG_PRINTING"
14708               glib:nick="printing"/>
14709       <member name="builder"
14710               value="2048"
14711               c:identifier="GTK_DEBUG_BUILDER"
14712               glib:nick="builder"/>
14713       <member name="size_request"
14714               value="4096"
14715               c:identifier="GTK_DEBUG_SIZE_REQUEST"
14716               glib:nick="size-request"/>
14717     </bitfield>
14718     <enumeration name="DeleteType"
14719                  glib:type-name="GtkDeleteType"
14720                  glib:get-type="gtk_delete_type_get_type"
14721                  c:type="GtkDeleteType">
14722       <member name="chars"
14723               value="0"
14724               c:identifier="GTK_DELETE_CHARS"
14725               glib:nick="chars"/>
14726       <member name="word_ends"
14727               value="1"
14728               c:identifier="GTK_DELETE_WORD_ENDS"
14729               glib:nick="word-ends"/>
14730       <member name="words"
14731               value="2"
14732               c:identifier="GTK_DELETE_WORDS"
14733               glib:nick="words"/>
14734       <member name="display_lines"
14735               value="3"
14736               c:identifier="GTK_DELETE_DISPLAY_LINES"
14737               glib:nick="display-lines"/>
14738       <member name="display_line_ends"
14739               value="4"
14740               c:identifier="GTK_DELETE_DISPLAY_LINE_ENDS"
14741               glib:nick="display-line-ends"/>
14742       <member name="paragraph_ends"
14743               value="5"
14744               c:identifier="GTK_DELETE_PARAGRAPH_ENDS"
14745               glib:nick="paragraph-ends"/>
14746       <member name="paragraphs"
14747               value="6"
14748               c:identifier="GTK_DELETE_PARAGRAPHS"
14749               glib:nick="paragraphs"/>
14750       <member name="whitespace"
14751               value="7"
14752               c:identifier="GTK_DELETE_WHITESPACE"
14753               glib:nick="whitespace"/>
14754     </enumeration>
14755     <bitfield name="DestDefaults"
14756               glib:type-name="GtkDestDefaults"
14757               glib:get-type="gtk_dest_defaults_get_type"
14758               c:type="GtkDestDefaults">
14759       <member name="motion"
14760               value="1"
14761               c:identifier="GTK_DEST_DEFAULT_MOTION"
14762               glib:nick="motion"/>
14763       <member name="highlight"
14764               value="2"
14765               c:identifier="GTK_DEST_DEFAULT_HIGHLIGHT"
14766               glib:nick="highlight"/>
14767       <member name="drop"
14768               value="4"
14769               c:identifier="GTK_DEST_DEFAULT_DROP"
14770               glib:nick="drop"/>
14771       <member name="all"
14772               value="7"
14773               c:identifier="GTK_DEST_DEFAULT_ALL"
14774               glib:nick="all"/>
14775     </bitfield>
14776     <class name="Dialog"
14777            c:symbol-prefix="dialog"
14778            c:type="GtkDialog"
14779            parent="Window"
14780            glib:type-name="GtkDialog"
14781            glib:get-type="gtk_dialog_get_type"
14782            glib:type-struct="DialogClass">
14783       <implements name="Atk.ImplementorIface"/>
14784       <implements name="Buildable"/>
14785       <implements name="SizeRequest"/>
14786       <constructor name="new" c:identifier="gtk_dialog_new">
14787         <return-value transfer-ownership="none">
14788           <type name="Widget" c:type="GtkWidget*"/>
14789         </return-value>
14790       </constructor>
14791       <constructor name="new_with_buttons"
14792                    c:identifier="gtk_dialog_new_with_buttons"
14793                    introspectable="0">
14794         <doc xml:whitespace="preserve">Creates a new #GtkDialog with title @title (or %NULL for the default
14795 title; see gtk_window_set_title()) and transient parent @parent (or
14796 %NULL for none; see gtk_window_set_transient_for()). The @flags
14797 argument can be used to make the dialog modal (#GTK_DIALOG_MODAL)
14798 and/or to have it destroyed along with its transient parent
14799 (#GTK_DIALOG_DESTROY_WITH_PARENT). After @flags, button
14800 text/response ID pairs should be listed, with a %NULL pointer ending
14801 the list. Button text can be either a stock ID such as
14802 #GTK_STOCK_OK, or some arbitrary text. A response ID can be
14803 any positive number, or one of the values in the #GtkResponseType
14804 enumeration. If the user clicks one of these dialog buttons,
14805 #GtkDialog will emit the #GtkDialog::response signal with the corresponding
14806 response ID. If a #GtkDialog receives the #GtkWidget::delete-event signal, 
14807 it will emit ::response with a response ID of #GTK_RESPONSE_DELETE_EVENT.
14808 However, destroying a dialog does not emit the ::response signal;
14809 so be careful relying on ::response when using the 
14810 #GTK_DIALOG_DESTROY_WITH_PARENT flag. Buttons are from left to right,
14811 so the first button in the list will be the leftmost button in the dialog.
14812 Here's a simple example:
14813 |[
14814 GtkWidget *dialog = gtk_dialog_new_with_buttons ("My dialog",
14815 main_app_window,
14816 GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
14817 GTK_STOCK_OK,
14818 GTK_RESPONSE_ACCEPT,
14819 GTK_STOCK_CANCEL,
14820 GTK_RESPONSE_REJECT,
14821 NULL);
14822 ]|</doc>
14823         <return-value transfer-ownership="none">
14824           <doc xml:whitespace="preserve">a new #GtkDialog</doc>
14825           <type name="Widget" c:type="GtkWidget*"/>
14826         </return-value>
14827         <parameters>
14828           <parameter name="title" transfer-ownership="none" allow-none="1">
14829             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
14830             <type name="utf8" c:type="gchar*"/>
14831           </parameter>
14832           <parameter name="parent" transfer-ownership="none" allow-none="1">
14833             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL</doc>
14834             <type name="Window" c:type="GtkWindow*"/>
14835           </parameter>
14836           <parameter name="flags" transfer-ownership="none">
14837             <doc xml:whitespace="preserve">from #GtkDialogFlags</doc>
14838             <type name="DialogFlags" c:type="GtkDialogFlags"/>
14839           </parameter>
14840           <parameter name="first_button_text"
14841                      transfer-ownership="none"
14842                      allow-none="1">
14843             <doc xml:whitespace="preserve">stock ID or text to go in first button, or %NULL</doc>
14844             <type name="utf8" c:type="gchar*"/>
14845           </parameter>
14846           <parameter transfer-ownership="none">
14847             <varargs>
14848             </varargs>
14849           </parameter>
14850         </parameters>
14851       </constructor>
14852       <method name="add_action_widget"
14853               c:identifier="gtk_dialog_add_action_widget">
14854         <doc xml:whitespace="preserve">Adds an activatable widget to the action area of a #GtkDialog,
14855 connecting a signal handler that will emit the #GtkDialog::response 
14856 signal on the dialog when the widget is activated. The widget is 
14857 appended to the end of the dialog's action area. If you want to add a
14858 non-activatable widget, simply pack it into the @action_area field 
14859 of the #GtkDialog struct.</doc>
14860         <return-value transfer-ownership="none">
14861           <type name="none" c:type="void"/>
14862         </return-value>
14863         <parameters>
14864           <parameter name="child" transfer-ownership="none">
14865             <doc xml:whitespace="preserve">an activatable widget</doc>
14866             <type name="Widget" c:type="GtkWidget*"/>
14867           </parameter>
14868           <parameter name="response_id" transfer-ownership="none">
14869             <doc xml:whitespace="preserve">response ID for @child</doc>
14870             <type name="gint" c:type="gint"/>
14871           </parameter>
14872         </parameters>
14873       </method>
14874       <method name="add_button" c:identifier="gtk_dialog_add_button">
14875         <doc xml:whitespace="preserve">Adds a button with the given text (or a stock button, if @button_text is a
14876 stock ID) and sets things up so that clicking the button will emit the
14877 #GtkDialog::response signal with the given @response_id. The button is 
14878 appended to the end of the dialog's action area. The button widget is 
14879 returned, but usually you don't need it.</doc>
14880         <return-value transfer-ownership="full">
14881           <doc xml:whitespace="preserve">the button widget that was added</doc>
14882           <type name="Widget" c:type="GtkWidget*"/>
14883         </return-value>
14884         <parameters>
14885           <parameter name="button_text" transfer-ownership="none">
14886             <doc xml:whitespace="preserve">text of button, or stock ID</doc>
14887             <type name="utf8" c:type="gchar*"/>
14888           </parameter>
14889           <parameter name="response_id" transfer-ownership="none">
14890             <doc xml:whitespace="preserve">response ID for the button</doc>
14891             <type name="gint" c:type="gint"/>
14892           </parameter>
14893         </parameters>
14894       </method>
14895       <method name="add_buttons"
14896               c:identifier="gtk_dialog_add_buttons"
14897               introspectable="0">
14898         <doc xml:whitespace="preserve">Adds more buttons, same as calling gtk_dialog_add_button()
14899 repeatedly.  The variable argument list should be %NULL-terminated
14900 as with gtk_dialog_new_with_buttons(). Each button must have both
14901 text and response ID.</doc>
14902         <return-value transfer-ownership="none">
14903           <type name="none" c:type="void"/>
14904         </return-value>
14905         <parameters>
14906           <parameter name="first_button_text" transfer-ownership="none">
14907             <doc xml:whitespace="preserve">button text or stock ID</doc>
14908             <type name="utf8" c:type="gchar*"/>
14909           </parameter>
14910           <parameter transfer-ownership="none">
14911             <varargs>
14912             </varargs>
14913           </parameter>
14914         </parameters>
14915       </method>
14916       <method name="get_action_area"
14917               c:identifier="gtk_dialog_get_action_area"
14918               version="2.14">
14919         <doc xml:whitespace="preserve">Returns the action area of @dialog.</doc>
14920         <return-value transfer-ownership="none">
14921           <doc xml:whitespace="preserve">the action area.</doc>
14922           <type name="Widget" c:type="GtkWidget*"/>
14923         </return-value>
14924       </method>
14925       <method name="get_content_area"
14926               c:identifier="gtk_dialog_get_content_area"
14927               version="2.14">
14928         <doc xml:whitespace="preserve">Returns the content area of @dialog.</doc>
14929         <return-value transfer-ownership="none">
14930           <doc xml:whitespace="preserve">the content area #GtkVBox.</doc>
14931           <type name="Widget" c:type="GtkWidget*"/>
14932         </return-value>
14933       </method>
14934       <method name="get_response_for_widget"
14935               c:identifier="gtk_dialog_get_response_for_widget"
14936               version="2.8">
14937         <doc xml:whitespace="preserve">Gets the response id of a widget in the action area
14938 of a dialog.
14939 if @widget doesn't have a response id set.</doc>
14940         <return-value transfer-ownership="none">
14941           <doc xml:whitespace="preserve">the response id of @widget, or %GTK_RESPONSE_NONE</doc>
14942           <type name="gint" c:type="gint"/>
14943         </return-value>
14944         <parameters>
14945           <parameter name="widget" transfer-ownership="none">
14946             <doc xml:whitespace="preserve">a widget in the action area of @dialog</doc>
14947             <type name="Widget" c:type="GtkWidget*"/>
14948           </parameter>
14949         </parameters>
14950       </method>
14951       <method name="get_widget_for_response"
14952               c:identifier="gtk_dialog_get_widget_for_response"
14953               version="2.20">
14954         <doc xml:whitespace="preserve">Gets the widget button that uses the given response ID in the action area
14955 of a dialog.</doc>
14956         <return-value transfer-ownership="none">
14957           <doc xml:whitespace="preserve">the @widget button that uses the given @response_id, or %NULL.</doc>
14958           <type name="Widget" c:type="GtkWidget*"/>
14959         </return-value>
14960         <parameters>
14961           <parameter name="response_id" transfer-ownership="none">
14962             <doc xml:whitespace="preserve">the response ID used by the @dialog widget</doc>
14963             <type name="gint" c:type="gint"/>
14964           </parameter>
14965         </parameters>
14966       </method>
14967       <method name="response" c:identifier="gtk_dialog_response">
14968         <doc xml:whitespace="preserve">Emits the #GtkDialog::response signal with the given response ID. 
14969 Used to indicate that the user has responded to the dialog in some way;
14970 typically either you or gtk_dialog_run() will be monitoring the
14971 ::response signal and take appropriate action.</doc>
14972         <return-value transfer-ownership="none">
14973           <type name="none" c:type="void"/>
14974         </return-value>
14975         <parameters>
14976           <parameter name="response_id" transfer-ownership="none">
14977             <doc xml:whitespace="preserve">response ID</doc>
14978             <type name="gint" c:type="gint"/>
14979           </parameter>
14980         </parameters>
14981       </method>
14982       <method name="run" c:identifier="gtk_dialog_run">
14983         <doc xml:whitespace="preserve">Blocks in a recursive main loop until the @dialog either emits the
14984 #GtkDialog::response signal, or is destroyed. If the dialog is 
14985 destroyed during the call to gtk_dialog_run(), gtk_dialog_run() returns 
14986 #GTK_RESPONSE_NONE. Otherwise, it returns the response ID from the 
14987 ::response signal emission.
14988 Before entering the recursive main loop, gtk_dialog_run() calls
14989 gtk_widget_show() on the dialog for you. Note that you still
14990 need to show any children of the dialog yourself.
14991 During gtk_dialog_run(), the default behavior of #GtkWidget::delete-event 
14992 is disabled; if the dialog receives ::delete_event, it will not be
14993 destroyed as windows usually are, and gtk_dialog_run() will return
14994 #GTK_RESPONSE_DELETE_EVENT. Also, during gtk_dialog_run() the dialog 
14995 will be modal. You can force gtk_dialog_run() to return at any time by
14996 calling gtk_dialog_response() to emit the ::response signal. Destroying 
14997 the dialog during gtk_dialog_run() is a very bad idea, because your 
14998 post-run code won't know whether the dialog was destroyed or not.
14999 After gtk_dialog_run() returns, you are responsible for hiding or
15000 destroying the dialog if you wish to do so.
15001 Typical usage of this function might be:
15002 |[
15003 gint result = gtk_dialog_run (GTK_DIALOG (dialog));
15004 switch (result)
15005 {
15006 case GTK_RESPONSE_ACCEPT:
15007 do_application_specific_something ();
15008 break;
15009 default:
15010 do_nothing_since_dialog_was_cancelled ();
15011 break;
15012 }
15013 gtk_widget_destroy (dialog);
15014 ]|
15015 Note that even though the recursive main loop gives the effect of a
15016 modal dialog (it prevents the user from interacting with other 
15017 windows in the same window group while the dialog is run), callbacks 
15018 such as timeouts, IO channel watches, DND drops, etc, &lt;emphasis&gt;will&lt;/emphasis&gt; 
15019 be triggered during a gtk_dialog_run() call.</doc>
15020         <return-value transfer-ownership="none">
15021           <doc xml:whitespace="preserve">response ID</doc>
15022           <type name="gint" c:type="gint"/>
15023         </return-value>
15024       </method>
15025       <method name="set_alternative_button_order"
15026               c:identifier="gtk_dialog_set_alternative_button_order"
15027               version="2.6"
15028               introspectable="0">
15029         <doc xml:whitespace="preserve">Sets an alternative button order. If the 
15030 #GtkSettings:gtk-alternative-button-order setting is set to %TRUE, 
15031 the dialog buttons are reordered according to the order of the 
15032 response ids passed to this function.
15033 By default, GTK+ dialogs use the button order advocated by the Gnome 
15034 &lt;ulink url="http://developer.gnome.org/projects/gup/hig/2.0/"&gt;Human 
15035 Interface Guidelines&lt;/ulink&gt; with the affirmative button at the far 
15036 right, and the cancel button left of it. But the builtin GTK+ dialogs
15037 and #GtkMessageDialog&lt;!-- --&gt;s do provide an alternative button order,
15038 which is more suitable on some platforms, e.g. Windows.
15039 Use this function after adding all the buttons to your dialog, as the 
15040 following example shows:
15041 |[
15042 cancel_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
15043 GTK_STOCK_CANCEL,
15044 GTK_RESPONSE_CANCEL);
15045 ok_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
15046 GTK_STOCK_OK,
15047 GTK_RESPONSE_OK);
15048 gtk_widget_grab_default (ok_button);
15049 help_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
15050 GTK_STOCK_HELP,
15051 GTK_RESPONSE_HELP);
15052 gtk_dialog_set_alternative_button_order (GTK_DIALOG (dialog),
15053 GTK_RESPONSE_OK,
15054 GTK_RESPONSE_CANCEL,
15055 GTK_RESPONSE_HELP,
15056 -1);
15057 ]|</doc>
15058         <return-value transfer-ownership="none">
15059           <type name="none" c:type="void"/>
15060         </return-value>
15061         <parameters>
15062           <parameter name="first_response_id" transfer-ownership="none">
15063             <doc xml:whitespace="preserve">a response id used by one @dialog's buttons</doc>
15064             <type name="gint" c:type="gint"/>
15065           </parameter>
15066           <parameter transfer-ownership="none">
15067             <varargs>
15068             </varargs>
15069           </parameter>
15070         </parameters>
15071       </method>
15072       <method name="set_alternative_button_order_from_array"
15073               c:identifier="gtk_dialog_set_alternative_button_order_from_array"
15074               version="2.6">
15075         <doc xml:whitespace="preserve">Sets an alternative button order. If the 
15076 #GtkSettings:gtk-alternative-button-order setting is set to %TRUE, 
15077 the dialog buttons are reordered according to the order of the 
15078 response ids in @new_order.
15079 See gtk_dialog_set_alternative_button_order() for more information.
15080 This function is for use by language bindings.</doc>
15081         <return-value transfer-ownership="none">
15082           <type name="none" c:type="void"/>
15083         </return-value>
15084         <parameters>
15085           <parameter name="n_params" transfer-ownership="none">
15086             <doc xml:whitespace="preserve">the number of response ids in @new_order</doc>
15087             <type name="gint" c:type="gint"/>
15088           </parameter>
15089           <parameter name="new_order" transfer-ownership="none">
15090             <doc xml:whitespace="preserve">an array of response ids of @dialog's buttons</doc>
15091             <type name="gint" c:type="gint*"/>
15092           </parameter>
15093         </parameters>
15094       </method>
15095       <method name="set_default_response"
15096               c:identifier="gtk_dialog_set_default_response">
15097         <doc xml:whitespace="preserve">Sets the last widget in the dialog's action area with the given @response_id
15098 as the default widget for the dialog. Pressing "Enter" normally activates
15099 the default widget.</doc>
15100         <return-value transfer-ownership="none">
15101           <type name="none" c:type="void"/>
15102         </return-value>
15103         <parameters>
15104           <parameter name="response_id" transfer-ownership="none">
15105             <doc xml:whitespace="preserve">a response ID</doc>
15106             <type name="gint" c:type="gint"/>
15107           </parameter>
15108         </parameters>
15109       </method>
15110       <method name="set_response_sensitive"
15111               c:identifier="gtk_dialog_set_response_sensitive">
15112         <doc xml:whitespace="preserve">Calls &lt;literal&gt;gtk_widget_set_sensitive (widget, @setting)&lt;/literal&gt; 
15113 for each widget in the dialog's action area with the given @response_id.
15114 A convenient way to sensitize/desensitize dialog buttons.</doc>
15115         <return-value transfer-ownership="none">
15116           <type name="none" c:type="void"/>
15117         </return-value>
15118         <parameters>
15119           <parameter name="response_id" transfer-ownership="none">
15120             <doc xml:whitespace="preserve">a response ID</doc>
15121             <type name="gint" c:type="gint"/>
15122           </parameter>
15123           <parameter name="setting" transfer-ownership="none">
15124             <doc xml:whitespace="preserve">%TRUE for sensitive</doc>
15125             <type name="gboolean" c:type="gboolean"/>
15126           </parameter>
15127         </parameters>
15128       </method>
15129       <field name="window">
15130         <type name="Window" c:type="GtkWindow"/>
15131       </field>
15132       <field name="priv">
15133         <type name="DialogPrivate" c:type="GtkDialogPrivate*"/>
15134       </field>
15135       <glib:signal name="close">
15136         <doc xml:whitespace="preserve">The ::close signal is a 
15137 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
15138 which gets emitted when the user uses a keybinding to close
15139 the dialog.
15140 The default binding for this signal is the Escape key.</doc>
15141         <return-value transfer-ownership="none">
15142           <type name="none"/>
15143         </return-value>
15144       </glib:signal>
15145       <glib:signal name="response">
15146         <doc xml:whitespace="preserve">Emitted when an action widget is clicked, the dialog receives a 
15147 delete event, or the application programmer calls gtk_dialog_response(). 
15148 On a delete event, the response ID is #GTK_RESPONSE_DELETE_EVENT. 
15149 Otherwise, it depends on which action widget was clicked.</doc>
15150         <return-value transfer-ownership="none">
15151           <type name="none"/>
15152         </return-value>
15153         <parameters>
15154           <parameter name="object" transfer-ownership="none">
15155             <doc xml:whitespace="preserve">the response ID</doc>
15156             <type name="gint"/>
15157           </parameter>
15158         </parameters>
15159       </glib:signal>
15160     </class>
15161     <record name="DialogClass"
15162             c:type="GtkDialogClass"
15163             glib:is-gtype-struct-for="Dialog">
15164       <field name="parent_class">
15165         <type name="WindowClass" c:type="GtkWindowClass"/>
15166       </field>
15167       <field name="response">
15168         <callback name="response">
15169           <return-value transfer-ownership="none">
15170             <type name="none" c:type="void"/>
15171           </return-value>
15172           <parameters>
15173             <parameter name="dialog" transfer-ownership="none">
15174               <type name="Dialog" c:type="GtkDialog*"/>
15175             </parameter>
15176             <parameter name="response_id" transfer-ownership="none">
15177               <type name="gint" c:type="gint"/>
15178             </parameter>
15179           </parameters>
15180         </callback>
15181       </field>
15182       <field name="close">
15183         <callback name="close">
15184           <return-value transfer-ownership="none">
15185             <type name="none" c:type="void"/>
15186           </return-value>
15187           <parameters>
15188             <parameter name="dialog" transfer-ownership="none">
15189               <type name="Dialog" c:type="GtkDialog*"/>
15190             </parameter>
15191           </parameters>
15192         </callback>
15193       </field>
15194       <field name="_gtk_reserved1" introspectable="0">
15195         <callback name="_gtk_reserved1">
15196           <return-value transfer-ownership="none">
15197             <type name="none" c:type="void"/>
15198           </return-value>
15199         </callback>
15200       </field>
15201       <field name="_gtk_reserved2" introspectable="0">
15202         <callback name="_gtk_reserved2">
15203           <return-value transfer-ownership="none">
15204             <type name="none" c:type="void"/>
15205           </return-value>
15206         </callback>
15207       </field>
15208       <field name="_gtk_reserved3" introspectable="0">
15209         <callback name="_gtk_reserved3">
15210           <return-value transfer-ownership="none">
15211             <type name="none" c:type="void"/>
15212           </return-value>
15213         </callback>
15214       </field>
15215       <field name="_gtk_reserved4" introspectable="0">
15216         <callback name="_gtk_reserved4">
15217           <return-value transfer-ownership="none">
15218             <type name="none" c:type="void"/>
15219           </return-value>
15220         </callback>
15221       </field>
15222     </record>
15223     <bitfield name="DialogFlags"
15224               glib:type-name="GtkDialogFlags"
15225               glib:get-type="gtk_dialog_flags_get_type"
15226               c:type="GtkDialogFlags">
15227       <member name="modal"
15228               value="1"
15229               c:identifier="GTK_DIALOG_MODAL"
15230               glib:nick="modal"/>
15231       <member name="destroy_with_parent"
15232               value="2"
15233               c:identifier="GTK_DIALOG_DESTROY_WITH_PARENT"
15234               glib:nick="destroy-with-parent"/>
15235     </bitfield>
15236     <record name="DialogPrivate" c:type="GtkDialogPrivate" disguised="1">
15237     </record>
15238     <enumeration name="DirectionType"
15239                  glib:type-name="GtkDirectionType"
15240                  glib:get-type="gtk_direction_type_get_type"
15241                  c:type="GtkDirectionType">
15242       <member name="tab_forward"
15243               value="0"
15244               c:identifier="GTK_DIR_TAB_FORWARD"
15245               glib:nick="tab-forward"/>
15246       <member name="tab_backward"
15247               value="1"
15248               c:identifier="GTK_DIR_TAB_BACKWARD"
15249               glib:nick="tab-backward"/>
15250       <member name="up" value="2" c:identifier="GTK_DIR_UP" glib:nick="up"/>
15251       <member name="down"
15252               value="3"
15253               c:identifier="GTK_DIR_DOWN"
15254               glib:nick="down"/>
15255       <member name="left"
15256               value="4"
15257               c:identifier="GTK_DIR_LEFT"
15258               glib:nick="left"/>
15259       <member name="right"
15260               value="5"
15261               c:identifier="GTK_DIR_RIGHT"
15262               glib:nick="right"/>
15263     </enumeration>
15264     <enumeration name="DragResult"
15265                  glib:type-name="GtkDragResult"
15266                  glib:get-type="gtk_drag_result_get_type"
15267                  c:type="GtkDragResult">
15268       <member name="success"
15269               value="0"
15270               c:identifier="GTK_DRAG_RESULT_SUCCESS"
15271               glib:nick="success"/>
15272       <member name="no_target"
15273               value="1"
15274               c:identifier="GTK_DRAG_RESULT_NO_TARGET"
15275               glib:nick="no-target"/>
15276       <member name="user_cancelled"
15277               value="2"
15278               c:identifier="GTK_DRAG_RESULT_USER_CANCELLED"
15279               glib:nick="user-cancelled"/>
15280       <member name="timeout_expired"
15281               value="3"
15282               c:identifier="GTK_DRAG_RESULT_TIMEOUT_EXPIRED"
15283               glib:nick="timeout-expired"/>
15284       <member name="grab_broken"
15285               value="4"
15286               c:identifier="GTK_DRAG_RESULT_GRAB_BROKEN"
15287               glib:nick="grab-broken"/>
15288       <member name="error"
15289               value="5"
15290               c:identifier="GTK_DRAG_RESULT_ERROR"
15291               glib:nick="error"/>
15292     </enumeration>
15293     <class name="DrawingArea"
15294            c:symbol-prefix="drawing_area"
15295            c:type="GtkDrawingArea"
15296            parent="Widget"
15297            glib:type-name="GtkDrawingArea"
15298            glib:get-type="gtk_drawing_area_get_type"
15299            glib:type-struct="DrawingAreaClass">
15300       <implements name="Atk.ImplementorIface"/>
15301       <implements name="Buildable"/>
15302       <implements name="SizeRequest"/>
15303       <constructor name="new" c:identifier="gtk_drawing_area_new">
15304         <return-value transfer-ownership="none">
15305           <type name="Widget" c:type="GtkWidget*"/>
15306         </return-value>
15307       </constructor>
15308       <field name="widget">
15309         <type name="Widget" c:type="GtkWidget"/>
15310       </field>
15311       <field name="draw_data">
15312         <type name="gpointer" c:type="gpointer"/>
15313       </field>
15314     </class>
15315     <record name="DrawingAreaClass"
15316             c:type="GtkDrawingAreaClass"
15317             glib:is-gtype-struct-for="DrawingArea">
15318       <field name="parent_class">
15319         <type name="WidgetClass" c:type="GtkWidgetClass"/>
15320       </field>
15321       <field name="_gtk_reserved1" introspectable="0">
15322         <callback name="_gtk_reserved1">
15323           <return-value transfer-ownership="none">
15324             <type name="none" c:type="void"/>
15325           </return-value>
15326         </callback>
15327       </field>
15328       <field name="_gtk_reserved2" introspectable="0">
15329         <callback name="_gtk_reserved2">
15330           <return-value transfer-ownership="none">
15331             <type name="none" c:type="void"/>
15332           </return-value>
15333         </callback>
15334       </field>
15335       <field name="_gtk_reserved3" introspectable="0">
15336         <callback name="_gtk_reserved3">
15337           <return-value transfer-ownership="none">
15338             <type name="none" c:type="void"/>
15339           </return-value>
15340         </callback>
15341       </field>
15342       <field name="_gtk_reserved4" introspectable="0">
15343         <callback name="_gtk_reserved4">
15344           <return-value transfer-ownership="none">
15345             <type name="none" c:type="void"/>
15346           </return-value>
15347         </callback>
15348       </field>
15349     </record>
15350     <interface name="Editable"
15351                c:symbol-prefix="editable"
15352                c:type="GtkEditable"
15353                glib:type-name="GtkEditable"
15354                glib:get-type="gtk_editable_get_type"
15355                glib:type-struct="EditableInterface">
15356       <virtual-method name="do_delete_text">
15357         <return-value transfer-ownership="none">
15358           <type name="none" c:type="void"/>
15359         </return-value>
15360         <parameters>
15361           <parameter name="start_pos" transfer-ownership="none">
15362             <type name="gint" c:type="gint"/>
15363           </parameter>
15364           <parameter name="end_pos" transfer-ownership="none">
15365             <type name="gint" c:type="gint"/>
15366           </parameter>
15367         </parameters>
15368       </virtual-method>
15369       <virtual-method name="do_insert_text">
15370         <return-value transfer-ownership="none">
15371           <type name="none" c:type="void"/>
15372         </return-value>
15373         <parameters>
15374           <parameter name="text" transfer-ownership="none">
15375             <type name="utf8" c:type="gchar*"/>
15376           </parameter>
15377           <parameter name="length" transfer-ownership="none">
15378             <type name="gint" c:type="gint"/>
15379           </parameter>
15380           <parameter name="position" transfer-ownership="none">
15381             <type name="gint" c:type="gint*"/>
15382           </parameter>
15383         </parameters>
15384       </virtual-method>
15385       <virtual-method name="get_chars" invoker="get_chars">
15386         <doc xml:whitespace="preserve">Retrieves a sequence of characters. The characters that are retrieved 
15387 are those characters at positions from @start_pos up to, but not 
15388 including @end_pos. If @end_pos is negative, then the the characters 
15389 retrieved are those characters from @start_pos to the end of the text.
15390 Note that positions are specified in characters, not bytes.
15391 string. This string is allocated by the #GtkEditable
15392 implementation and should be freed by the caller.</doc>
15393         <return-value transfer-ownership="full">
15394           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
15395           <type name="utf8" c:type="gchar*"/>
15396         </return-value>
15397         <parameters>
15398           <parameter name="start_pos" transfer-ownership="none">
15399             <doc xml:whitespace="preserve">start of text</doc>
15400             <type name="gint" c:type="gint"/>
15401           </parameter>
15402           <parameter name="end_pos" transfer-ownership="none">
15403             <doc xml:whitespace="preserve">end of text</doc>
15404             <type name="gint" c:type="gint"/>
15405           </parameter>
15406         </parameters>
15407       </virtual-method>
15408       <virtual-method name="get_position" invoker="get_position">
15409         <doc xml:whitespace="preserve">Retrieves the current position of the cursor relative to the start
15410 of the content of the editable. 
15411 Note that this position is in characters, not in bytes.</doc>
15412         <return-value transfer-ownership="none">
15413           <doc xml:whitespace="preserve">the cursor position</doc>
15414           <type name="gint" c:type="gint"/>
15415         </return-value>
15416       </virtual-method>
15417       <virtual-method name="get_selection_bounds"
15418                       invoker="get_selection_bounds">
15419         <doc xml:whitespace="preserve">Retrieves the selection bound of the editable. start_pos will be filled
15420 with the start of the selection and @end_pos with end. If no text was
15421 selected both will be identical and %FALSE will be returned.
15422 Note that positions are specified in characters, not bytes.</doc>
15423         <return-value transfer-ownership="none">
15424           <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
15425           <type name="gboolean" c:type="gboolean"/>
15426         </return-value>
15427         <parameters>
15428           <parameter name="start_pos"
15429                      direction="out"
15430                      caller-allocates="0"
15431                      transfer-ownership="full"
15432                      allow-none="1">
15433             <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
15434             <type name="gint" c:type="gint*"/>
15435           </parameter>
15436           <parameter name="end_pos"
15437                      direction="out"
15438                      caller-allocates="0"
15439                      transfer-ownership="full"
15440                      allow-none="1">
15441             <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
15442             <type name="gint" c:type="gint*"/>
15443           </parameter>
15444         </parameters>
15445       </virtual-method>
15446       <virtual-method name="set_position" invoker="set_position">
15447         <doc xml:whitespace="preserve">Sets the cursor position in the editable to the given value.
15448 The cursor is displayed before the character with the given (base 0) 
15449 index in the contents of the editable. The value must be less than or 
15450 equal to the number of characters in the editable. A value of -1 
15451 indicates that the position should be set after the last character 
15452 of the editable. Note that @position is in characters, not in bytes.</doc>
15453         <return-value transfer-ownership="none">
15454           <type name="none" c:type="void"/>
15455         </return-value>
15456         <parameters>
15457           <parameter name="position" transfer-ownership="none">
15458             <doc xml:whitespace="preserve">the position of the cursor</doc>
15459             <type name="gint" c:type="gint"/>
15460           </parameter>
15461         </parameters>
15462       </virtual-method>
15463       <virtual-method name="set_selection_bounds">
15464         <return-value transfer-ownership="none">
15465           <type name="none" c:type="void"/>
15466         </return-value>
15467         <parameters>
15468           <parameter name="start_pos" transfer-ownership="none">
15469             <type name="gint" c:type="gint"/>
15470           </parameter>
15471           <parameter name="end_pos" transfer-ownership="none">
15472             <type name="gint" c:type="gint"/>
15473           </parameter>
15474         </parameters>
15475       </virtual-method>
15476       <method name="copy_clipboard" c:identifier="gtk_editable_copy_clipboard">
15477         <doc xml:whitespace="preserve">Copies the contents of the currently selected content in the editable and
15478 puts it on the clipboard.</doc>
15479         <return-value transfer-ownership="none">
15480           <type name="none" c:type="void"/>
15481         </return-value>
15482       </method>
15483       <method name="cut_clipboard" c:identifier="gtk_editable_cut_clipboard">
15484         <doc xml:whitespace="preserve">Removes the contents of the currently selected content in the editable and
15485 puts it on the clipboard.</doc>
15486         <return-value transfer-ownership="none">
15487           <type name="none" c:type="void"/>
15488         </return-value>
15489       </method>
15490       <method name="delete_selection"
15491               c:identifier="gtk_editable_delete_selection">
15492         <doc xml:whitespace="preserve">Deletes the currently selected text of the editable.
15493 This call doesn't do anything if there is no selected text.</doc>
15494         <return-value transfer-ownership="none">
15495           <type name="none" c:type="void"/>
15496         </return-value>
15497       </method>
15498       <method name="delete_text" c:identifier="gtk_editable_delete_text">
15499         <doc xml:whitespace="preserve">Deletes a sequence of characters. The characters that are deleted are 
15500 those characters at positions from @start_pos up to, but not including 
15501 are those from @start_pos to the end of the text.
15502 Note that the positions are specified in characters, not bytes.</doc>
15503         <return-value transfer-ownership="none">
15504           <type name="none" c:type="void"/>
15505         </return-value>
15506         <parameters>
15507           <parameter name="start_pos" transfer-ownership="none">
15508             <doc xml:whitespace="preserve">start position</doc>
15509             <type name="gint" c:type="gint"/>
15510           </parameter>
15511           <parameter name="end_pos" transfer-ownership="none">
15512             <doc xml:whitespace="preserve">end position</doc>
15513             <type name="gint" c:type="gint"/>
15514           </parameter>
15515         </parameters>
15516       </method>
15517       <method name="get_chars" c:identifier="gtk_editable_get_chars">
15518         <doc xml:whitespace="preserve">Retrieves a sequence of characters. The characters that are retrieved 
15519 are those characters at positions from @start_pos up to, but not 
15520 including @end_pos. If @end_pos is negative, then the the characters 
15521 retrieved are those characters from @start_pos to the end of the text.
15522 Note that positions are specified in characters, not bytes.
15523 string. This string is allocated by the #GtkEditable
15524 implementation and should be freed by the caller.</doc>
15525         <return-value transfer-ownership="full">
15526           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
15527           <type name="utf8" c:type="gchar*"/>
15528         </return-value>
15529         <parameters>
15530           <parameter name="start_pos" transfer-ownership="none">
15531             <doc xml:whitespace="preserve">start of text</doc>
15532             <type name="gint" c:type="gint"/>
15533           </parameter>
15534           <parameter name="end_pos" transfer-ownership="none">
15535             <doc xml:whitespace="preserve">end of text</doc>
15536             <type name="gint" c:type="gint"/>
15537           </parameter>
15538         </parameters>
15539       </method>
15540       <method name="get_editable" c:identifier="gtk_editable_get_editable">
15541         <doc xml:whitespace="preserve">Retrieves whether @editable is editable. See
15542 gtk_editable_set_editable().</doc>
15543         <return-value transfer-ownership="none">
15544           <doc xml:whitespace="preserve">%TRUE if @editable is editable.</doc>
15545           <type name="gboolean" c:type="gboolean"/>
15546         </return-value>
15547       </method>
15548       <method name="get_position" c:identifier="gtk_editable_get_position">
15549         <doc xml:whitespace="preserve">Retrieves the current position of the cursor relative to the start
15550 of the content of the editable. 
15551 Note that this position is in characters, not in bytes.</doc>
15552         <return-value transfer-ownership="none">
15553           <doc xml:whitespace="preserve">the cursor position</doc>
15554           <type name="gint" c:type="gint"/>
15555         </return-value>
15556       </method>
15557       <method name="get_selection_bounds"
15558               c:identifier="gtk_editable_get_selection_bounds">
15559         <doc xml:whitespace="preserve">Retrieves the selection bound of the editable. start_pos will be filled
15560 with the start of the selection and @end_pos with end. If no text was
15561 selected both will be identical and %FALSE will be returned.
15562 Note that positions are specified in characters, not bytes.</doc>
15563         <return-value transfer-ownership="none">
15564           <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
15565           <type name="gboolean" c:type="gboolean"/>
15566         </return-value>
15567         <parameters>
15568           <parameter name="start_pos"
15569                      direction="out"
15570                      caller-allocates="0"
15571                      transfer-ownership="full"
15572                      allow-none="1">
15573             <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
15574             <type name="gint" c:type="gint*"/>
15575           </parameter>
15576           <parameter name="end_pos"
15577                      direction="out"
15578                      caller-allocates="0"
15579                      transfer-ownership="full"
15580                      allow-none="1">
15581             <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
15582             <type name="gint" c:type="gint*"/>
15583           </parameter>
15584         </parameters>
15585       </method>
15586       <method name="insert_text" c:identifier="gtk_editable_insert_text">
15587         <doc xml:whitespace="preserve">Inserts @new_text_length bytes of @new_text into the contents of the
15588 widget, at position @position.
15589 Note that the position is in characters, not in bytes. 
15590 The function updates @position to point after the newly inserted text.</doc>
15591         <return-value transfer-ownership="none">
15592           <type name="none" c:type="void"/>
15593         </return-value>
15594         <parameters>
15595           <parameter name="new_text" transfer-ownership="none">
15596             <doc xml:whitespace="preserve">the text to append</doc>
15597             <type name="utf8" c:type="gchar*"/>
15598           </parameter>
15599           <parameter name="new_text_length" transfer-ownership="none">
15600             <doc xml:whitespace="preserve">the length of the text in bytes, or -1</doc>
15601             <type name="gint" c:type="gint"/>
15602           </parameter>
15603           <parameter name="position"
15604                      direction="inout"
15605                      caller-allocates="0"
15606                      transfer-ownership="full">
15607             <doc xml:whitespace="preserve">location of the position text will be inserted at</doc>
15608             <type name="gint" c:type="gint*"/>
15609           </parameter>
15610         </parameters>
15611       </method>
15612       <method name="paste_clipboard"
15613               c:identifier="gtk_editable_paste_clipboard">
15614         <doc xml:whitespace="preserve">Pastes the content of the clipboard to the current position of the
15615 cursor in the editable.</doc>
15616         <return-value transfer-ownership="none">
15617           <type name="none" c:type="void"/>
15618         </return-value>
15619       </method>
15620       <method name="select_region" c:identifier="gtk_editable_select_region">
15621         <doc xml:whitespace="preserve">Selects a region of text. The characters that are selected are 
15622 those characters at positions from @start_pos up to, but not 
15623 including @end_pos. If @end_pos is negative, then the the 
15624 characters selected are those characters from @start_pos to 
15625 the end of the text.
15626 Note that positions are specified in characters, not bytes.</doc>
15627         <return-value transfer-ownership="none">
15628           <type name="none" c:type="void"/>
15629         </return-value>
15630         <parameters>
15631           <parameter name="start_pos" transfer-ownership="none">
15632             <doc xml:whitespace="preserve">start of region</doc>
15633             <type name="gint" c:type="gint"/>
15634           </parameter>
15635           <parameter name="end_pos" transfer-ownership="none">
15636             <doc xml:whitespace="preserve">end of region</doc>
15637             <type name="gint" c:type="gint"/>
15638           </parameter>
15639         </parameters>
15640       </method>
15641       <method name="set_editable" c:identifier="gtk_editable_set_editable">
15642         <doc xml:whitespace="preserve">Determines if the user can edit the text in the editable
15643 widget or not.</doc>
15644         <return-value transfer-ownership="none">
15645           <type name="none" c:type="void"/>
15646         </return-value>
15647         <parameters>
15648           <parameter name="is_editable" transfer-ownership="none">
15649             <doc xml:whitespace="preserve">%TRUE if the user is allowed to edit the text in the widget</doc>
15650             <type name="gboolean" c:type="gboolean"/>
15651           </parameter>
15652         </parameters>
15653       </method>
15654       <method name="set_position" c:identifier="gtk_editable_set_position">
15655         <doc xml:whitespace="preserve">Sets the cursor position in the editable to the given value.
15656 The cursor is displayed before the character with the given (base 0) 
15657 index in the contents of the editable. The value must be less than or 
15658 equal to the number of characters in the editable. A value of -1 
15659 indicates that the position should be set after the last character 
15660 of the editable. Note that @position is in characters, not in bytes.</doc>
15661         <return-value transfer-ownership="none">
15662           <type name="none" c:type="void"/>
15663         </return-value>
15664         <parameters>
15665           <parameter name="position" transfer-ownership="none">
15666             <doc xml:whitespace="preserve">the position of the cursor</doc>
15667             <type name="gint" c:type="gint"/>
15668           </parameter>
15669         </parameters>
15670       </method>
15671       <glib:signal name="changed">
15672         <doc xml:whitespace="preserve">The ::changed signal is emitted at the end of a single
15673 user-visible operation on the contents of the #GtkEditable.
15674 E.g., a paste operation that replaces the contents of the
15675 selection will cause only one signal emission (even though it
15676 is implemented by first deleting the selection, then inserting
15677 the new content, and may cause multiple ::notify::text signals
15678 to be emitted).</doc>
15679         <return-value transfer-ownership="none">
15680           <type name="none"/>
15681         </return-value>
15682       </glib:signal>
15683       <glib:signal name="delete-text">
15684         <doc xml:whitespace="preserve">This signal is emitted when text is deleted from
15685 the widget by the user. The default handler for
15686 this signal will normally be responsible for deleting
15687 the text, so by connecting to this signal and then
15688 stopping the signal with g_signal_stop_emission(), it
15689 is possible to modify the range of deleted text, or
15690 prevent it from being deleted entirely. The @start_pos
15691 and @end_pos parameters are interpreted as for
15692 gtk_editable_delete_text().</doc>
15693         <return-value transfer-ownership="none">
15694           <type name="none"/>
15695         </return-value>
15696         <parameters>
15697           <parameter name="object" transfer-ownership="none">
15698             <doc xml:whitespace="preserve">the starting position</doc>
15699             <type name="gint"/>
15700           </parameter>
15701           <parameter name="p0" transfer-ownership="none">
15702             <doc xml:whitespace="preserve">the end position</doc>
15703             <type name="gint"/>
15704           </parameter>
15705         </parameters>
15706       </glib:signal>
15707       <glib:signal name="insert-text">
15708         <doc xml:whitespace="preserve">This signal is emitted when text is inserted into
15709 the widget by the user. The default handler for
15710 this signal will normally be responsible for inserting
15711 the text, so by connecting to this signal and then
15712 stopping the signal with g_signal_stop_emission(), it
15713 is possible to modify the inserted text, or prevent
15714 it from being inserted entirely.</doc>
15715         <return-value transfer-ownership="none">
15716           <type name="none"/>
15717         </return-value>
15718         <parameters>
15719           <parameter name="object" transfer-ownership="none">
15720             <doc xml:whitespace="preserve">the new text to insert</doc>
15721             <type name="utf8"/>
15722           </parameter>
15723           <parameter name="p0" transfer-ownership="none">
15724             <doc xml:whitespace="preserve">the length of the new text, in bytes, or -1 if new_text is nul-terminated</doc>
15725             <type name="gint"/>
15726           </parameter>
15727           <parameter name="p1" transfer-ownership="none">
15728             <doc xml:whitespace="preserve">the position, in characters, at which to insert the new text. this is an in-out parameter. After the signal emission is finished, it should point after the newly inserted text.</doc>
15729             <type name="gpointer"/>
15730           </parameter>
15731         </parameters>
15732       </glib:signal>
15733     </interface>
15734     <record name="EditableInterface"
15735             c:type="GtkEditableInterface"
15736             glib:is-gtype-struct-for="Editable">
15737       <field name="base_iface">
15738         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
15739       </field>
15740       <field name="insert_text">
15741         <callback name="insert_text">
15742           <return-value transfer-ownership="none">
15743             <type name="none" c:type="void"/>
15744           </return-value>
15745           <parameters>
15746             <parameter name="editable" transfer-ownership="none">
15747               <type name="Editable" c:type="GtkEditable*"/>
15748             </parameter>
15749             <parameter name="text" transfer-ownership="none">
15750               <type name="utf8" c:type="gchar*"/>
15751             </parameter>
15752             <parameter name="length" transfer-ownership="none">
15753               <type name="gint" c:type="gint"/>
15754             </parameter>
15755             <parameter name="position" transfer-ownership="none">
15756               <type name="gint" c:type="gint*"/>
15757             </parameter>
15758           </parameters>
15759         </callback>
15760       </field>
15761       <field name="delete_text">
15762         <callback name="delete_text">
15763           <return-value transfer-ownership="none">
15764             <type name="none" c:type="void"/>
15765           </return-value>
15766           <parameters>
15767             <parameter name="editable" transfer-ownership="none">
15768               <type name="Editable" c:type="GtkEditable*"/>
15769             </parameter>
15770             <parameter name="start_pos" transfer-ownership="none">
15771               <type name="gint" c:type="gint"/>
15772             </parameter>
15773             <parameter name="end_pos" transfer-ownership="none">
15774               <type name="gint" c:type="gint"/>
15775             </parameter>
15776           </parameters>
15777         </callback>
15778       </field>
15779       <field name="changed">
15780         <callback name="changed">
15781           <return-value transfer-ownership="none">
15782             <type name="none" c:type="void"/>
15783           </return-value>
15784           <parameters>
15785             <parameter name="editable" transfer-ownership="none">
15786               <type name="Editable" c:type="GtkEditable*"/>
15787             </parameter>
15788           </parameters>
15789         </callback>
15790       </field>
15791       <field name="do_insert_text">
15792         <callback name="do_insert_text">
15793           <return-value transfer-ownership="none">
15794             <type name="none" c:type="void"/>
15795           </return-value>
15796           <parameters>
15797             <parameter name="editable" transfer-ownership="none">
15798               <type name="Editable" c:type="GtkEditable*"/>
15799             </parameter>
15800             <parameter name="text" transfer-ownership="none">
15801               <type name="utf8" c:type="gchar*"/>
15802             </parameter>
15803             <parameter name="length" transfer-ownership="none">
15804               <type name="gint" c:type="gint"/>
15805             </parameter>
15806             <parameter name="position" transfer-ownership="none">
15807               <type name="gint" c:type="gint*"/>
15808             </parameter>
15809           </parameters>
15810         </callback>
15811       </field>
15812       <field name="do_delete_text">
15813         <callback name="do_delete_text">
15814           <return-value transfer-ownership="none">
15815             <type name="none" c:type="void"/>
15816           </return-value>
15817           <parameters>
15818             <parameter name="editable" transfer-ownership="none">
15819               <type name="Editable" c:type="GtkEditable*"/>
15820             </parameter>
15821             <parameter name="start_pos" transfer-ownership="none">
15822               <type name="gint" c:type="gint"/>
15823             </parameter>
15824             <parameter name="end_pos" transfer-ownership="none">
15825               <type name="gint" c:type="gint"/>
15826             </parameter>
15827           </parameters>
15828         </callback>
15829       </field>
15830       <field name="get_chars">
15831         <callback name="get_chars">
15832           <return-value transfer-ownership="full">
15833             <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
15834             <type name="utf8" c:type="gchar*"/>
15835           </return-value>
15836           <parameters>
15837             <parameter name="editable" transfer-ownership="none">
15838               <type name="Editable" c:type="GtkEditable*"/>
15839             </parameter>
15840             <parameter name="start_pos" transfer-ownership="none">
15841               <doc xml:whitespace="preserve">start of text</doc>
15842               <type name="gint" c:type="gint"/>
15843             </parameter>
15844             <parameter name="end_pos" transfer-ownership="none">
15845               <doc xml:whitespace="preserve">end of text</doc>
15846               <type name="gint" c:type="gint"/>
15847             </parameter>
15848           </parameters>
15849         </callback>
15850       </field>
15851       <field name="set_selection_bounds">
15852         <callback name="set_selection_bounds">
15853           <return-value transfer-ownership="none">
15854             <type name="none" c:type="void"/>
15855           </return-value>
15856           <parameters>
15857             <parameter name="editable" transfer-ownership="none">
15858               <type name="Editable" c:type="GtkEditable*"/>
15859             </parameter>
15860             <parameter name="start_pos" transfer-ownership="none">
15861               <type name="gint" c:type="gint"/>
15862             </parameter>
15863             <parameter name="end_pos" transfer-ownership="none">
15864               <type name="gint" c:type="gint"/>
15865             </parameter>
15866           </parameters>
15867         </callback>
15868       </field>
15869       <field name="get_selection_bounds">
15870         <callback name="get_selection_bounds">
15871           <return-value transfer-ownership="none">
15872             <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
15873             <type name="gboolean" c:type="gboolean"/>
15874           </return-value>
15875           <parameters>
15876             <parameter name="editable" transfer-ownership="none">
15877               <type name="Editable" c:type="GtkEditable*"/>
15878             </parameter>
15879             <parameter name="start_pos"
15880                        direction="out"
15881                        caller-allocates="0"
15882                        transfer-ownership="full"
15883                        allow-none="1">
15884               <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
15885               <type name="gint" c:type="gint*"/>
15886             </parameter>
15887             <parameter name="end_pos"
15888                        direction="out"
15889                        caller-allocates="0"
15890                        transfer-ownership="full"
15891                        allow-none="1">
15892               <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
15893               <type name="gint" c:type="gint*"/>
15894             </parameter>
15895           </parameters>
15896         </callback>
15897       </field>
15898       <field name="set_position">
15899         <callback name="set_position">
15900           <return-value transfer-ownership="none">
15901             <type name="none" c:type="void"/>
15902           </return-value>
15903           <parameters>
15904             <parameter name="editable" transfer-ownership="none">
15905               <type name="Editable" c:type="GtkEditable*"/>
15906             </parameter>
15907             <parameter name="position" transfer-ownership="none">
15908               <doc xml:whitespace="preserve">the position of the cursor</doc>
15909               <type name="gint" c:type="gint"/>
15910             </parameter>
15911           </parameters>
15912         </callback>
15913       </field>
15914       <field name="get_position">
15915         <callback name="get_position">
15916           <return-value transfer-ownership="none">
15917             <doc xml:whitespace="preserve">the cursor position</doc>
15918             <type name="gint" c:type="gint"/>
15919           </return-value>
15920           <parameters>
15921             <parameter name="editable" transfer-ownership="none">
15922               <type name="Editable" c:type="GtkEditable*"/>
15923             </parameter>
15924           </parameters>
15925         </callback>
15926       </field>
15927     </record>
15928     <class name="Entry"
15929            c:symbol-prefix="entry"
15930            c:type="GtkEntry"
15931            parent="Widget"
15932            glib:type-name="GtkEntry"
15933            glib:get-type="gtk_entry_get_type"
15934            glib:type-struct="EntryClass">
15935       <implements name="Atk.ImplementorIface"/>
15936       <implements name="Buildable"/>
15937       <implements name="CellEditable"/>
15938       <implements name="Editable"/>
15939       <implements name="SizeRequest"/>
15940       <constructor name="new" c:identifier="gtk_entry_new">
15941         <doc xml:whitespace="preserve">Creates a new entry.</doc>
15942         <return-value transfer-ownership="none">
15943           <doc xml:whitespace="preserve">a new #GtkEntry.</doc>
15944           <type name="Widget" c:type="GtkWidget*"/>
15945         </return-value>
15946       </constructor>
15947       <constructor name="new_with_buffer"
15948                    c:identifier="gtk_entry_new_with_buffer"
15949                    version="2.18">
15950         <doc xml:whitespace="preserve">Creates a new entry with the specified text buffer.</doc>
15951         <return-value transfer-ownership="none">
15952           <doc xml:whitespace="preserve">a new #GtkEntry</doc>
15953           <type name="Widget" c:type="GtkWidget*"/>
15954         </return-value>
15955         <parameters>
15956           <parameter name="buffer" transfer-ownership="none">
15957             <doc xml:whitespace="preserve">The buffer to use for the new #GtkEntry.</doc>
15958             <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
15959           </parameter>
15960         </parameters>
15961       </constructor>
15962       <virtual-method name="get_text_area_size">
15963         <return-value transfer-ownership="none">
15964           <type name="none" c:type="void"/>
15965         </return-value>
15966         <parameters>
15967           <parameter name="x" transfer-ownership="none">
15968             <type name="gint" c:type="gint*"/>
15969           </parameter>
15970           <parameter name="y" transfer-ownership="none">
15971             <type name="gint" c:type="gint*"/>
15972           </parameter>
15973           <parameter name="width" transfer-ownership="none">
15974             <type name="gint" c:type="gint*"/>
15975           </parameter>
15976           <parameter name="height" transfer-ownership="none">
15977             <type name="gint" c:type="gint*"/>
15978           </parameter>
15979         </parameters>
15980       </virtual-method>
15981       <method name="get_activates_default"
15982               c:identifier="gtk_entry_get_activates_default">
15983         <doc xml:whitespace="preserve">Retrieves the value set by gtk_entry_set_activates_default().</doc>
15984         <return-value transfer-ownership="none">
15985           <doc xml:whitespace="preserve">%TRUE if the entry will activate the default widget</doc>
15986           <type name="gboolean" c:type="gboolean"/>
15987         </return-value>
15988       </method>
15989       <method name="get_alignment"
15990               c:identifier="gtk_entry_get_alignment"
15991               version="2.4">
15992         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_alignment().</doc>
15993         <return-value transfer-ownership="none">
15994           <doc xml:whitespace="preserve">the alignment</doc>
15995           <type name="gfloat" c:type="gfloat"/>
15996         </return-value>
15997       </method>
15998       <method name="get_buffer"
15999               c:identifier="gtk_entry_get_buffer"
16000               version="2.18">
16001         <doc xml:whitespace="preserve">Get the #GtkEntryBuffer object which holds the text for
16002 this widget.</doc>
16003         <return-value transfer-ownership="none">
16004           <doc xml:whitespace="preserve">A #GtkEntryBuffer object.</doc>
16005           <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
16006         </return-value>
16007       </method>
16008       <method name="get_completion"
16009               c:identifier="gtk_entry_get_completion"
16010               version="2.4">
16011         <doc xml:whitespace="preserve">Returns the auxiliary completion object currently in use by @entry.
16012 in use by @entry.</doc>
16013         <return-value transfer-ownership="none">
16014           <doc xml:whitespace="preserve">The auxiliary completion object currently</doc>
16015           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
16016         </return-value>
16017       </method>
16018       <method name="get_current_icon_drag_source"
16019               c:identifier="gtk_entry_get_current_icon_drag_source"
16020               version="2.16">
16021         <doc xml:whitespace="preserve">Returns the index of the icon which is the source of the current
16022 DND operation, or -1.
16023 This function is meant to be used in a #GtkWidget::drag-data-get
16024 callback.
16025 DND operation, or -1.</doc>
16026         <return-value transfer-ownership="none">
16027           <doc xml:whitespace="preserve">index of the icon which is the source of the current</doc>
16028           <type name="gint" c:type="gint"/>
16029         </return-value>
16030       </method>
16031       <method name="get_cursor_hadjustment"
16032               c:identifier="gtk_entry_get_cursor_hadjustment"
16033               version="2.12">
16034         <doc xml:whitespace="preserve">Retrieves the horizontal cursor adjustment for the entry. 
16035 See gtk_entry_set_cursor_hadjustment().
16036 if none has been set.</doc>
16037         <return-value transfer-ownership="none">
16038           <doc xml:whitespace="preserve">the horizontal cursor adjustment, or %NULL</doc>
16039           <type name="Adjustment" c:type="GtkAdjustment*"/>
16040         </return-value>
16041       </method>
16042       <method name="get_has_frame" c:identifier="gtk_entry_get_has_frame">
16043         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_has_frame().</doc>
16044         <return-value transfer-ownership="none">
16045           <doc xml:whitespace="preserve">whether the entry has a beveled frame</doc>
16046           <type name="gboolean" c:type="gboolean"/>
16047         </return-value>
16048       </method>
16049       <method name="get_icon_activatable"
16050               c:identifier="gtk_entry_get_icon_activatable"
16051               version="2.16">
16052         <doc xml:whitespace="preserve">Returns whether the icon is activatable.</doc>
16053         <return-value transfer-ownership="none">
16054           <doc xml:whitespace="preserve">%TRUE if the icon is activatable.</doc>
16055           <type name="gboolean" c:type="gboolean"/>
16056         </return-value>
16057         <parameters>
16058           <parameter name="icon_pos" transfer-ownership="none">
16059             <doc xml:whitespace="preserve">Icon position</doc>
16060             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16061           </parameter>
16062         </parameters>
16063       </method>
16064       <method name="get_icon_at_pos"
16065               c:identifier="gtk_entry_get_icon_at_pos"
16066               version="2.16">
16067         <doc xml:whitespace="preserve">Finds the icon at the given position and return its index.
16068 If @x, @y doesn't lie inside an icon, -1 is returned.
16069 This function is intended for use in a #GtkWidget::query-tooltip
16070 signal handler.</doc>
16071         <return-value transfer-ownership="none">
16072           <doc xml:whitespace="preserve">the index of the icon at the given position, or -1</doc>
16073           <type name="gint" c:type="gint"/>
16074         </return-value>
16075         <parameters>
16076           <parameter name="x" transfer-ownership="none">
16077             <doc xml:whitespace="preserve">the x coordinate of the position to find</doc>
16078             <type name="gint" c:type="gint"/>
16079           </parameter>
16080           <parameter name="y" transfer-ownership="none">
16081             <doc xml:whitespace="preserve">the y coordinate of the position to find</doc>
16082             <type name="gint" c:type="gint"/>
16083           </parameter>
16084         </parameters>
16085       </method>
16086       <method name="get_icon_gicon"
16087               c:identifier="gtk_entry_get_icon_gicon"
16088               version="2.16">
16089         <doc xml:whitespace="preserve">Retrieves the #GIcon used for the icon, or %NULL if there is
16090 no icon or if the icon was set by some other method (e.g., by
16091 stock, pixbuf, or icon name).
16092 or if the icon is not a #GIcon</doc>
16093         <return-value transfer-ownership="none">
16094           <doc xml:whitespace="preserve">A #GIcon, or %NULL if no icon is set</doc>
16095           <type name="Gio.Icon" c:type="GIcon*"/>
16096         </return-value>
16097         <parameters>
16098           <parameter name="icon_pos" transfer-ownership="none">
16099             <doc xml:whitespace="preserve">Icon position</doc>
16100             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16101           </parameter>
16102         </parameters>
16103       </method>
16104       <method name="get_icon_name"
16105               c:identifier="gtk_entry_get_icon_name"
16106               version="2.16">
16107         <doc xml:whitespace="preserve">Retrieves the icon name used for the icon, or %NULL if there is
16108 no icon or if the icon was set by some other method (e.g., by
16109 pixbuf, stock or gicon).
16110 wasn't set from an icon name</doc>
16111         <return-value transfer-ownership="none">
16112           <doc xml:whitespace="preserve">An icon name, or %NULL if no icon is set or if the icon</doc>
16113           <type name="utf8" c:type="gchar*"/>
16114         </return-value>
16115         <parameters>
16116           <parameter name="icon_pos" transfer-ownership="none">
16117             <doc xml:whitespace="preserve">Icon position</doc>
16118             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16119           </parameter>
16120         </parameters>
16121       </method>
16122       <method name="get_icon_pixbuf"
16123               c:identifier="gtk_entry_get_icon_pixbuf"
16124               version="2.16">
16125         <doc xml:whitespace="preserve">Retrieves the image used for the icon.
16126 Unlike the other methods of setting and getting icon data, this
16127 method will work regardless of whether the icon was set using a
16128 #GdkPixbuf, a #GIcon, a stock item, or an icon name.
16129 set for this position.</doc>
16130         <return-value transfer-ownership="none">
16131           <doc xml:whitespace="preserve">A #GdkPixbuf, or %NULL if no icon is</doc>
16132           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
16133         </return-value>
16134         <parameters>
16135           <parameter name="icon_pos" transfer-ownership="none">
16136             <doc xml:whitespace="preserve">Icon position</doc>
16137             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16138           </parameter>
16139         </parameters>
16140       </method>
16141       <method name="get_icon_sensitive"
16142               c:identifier="gtk_entry_get_icon_sensitive"
16143               version="2.16">
16144         <doc xml:whitespace="preserve">Returns whether the icon appears sensitive or insensitive.</doc>
16145         <return-value transfer-ownership="none">
16146           <doc xml:whitespace="preserve">%TRUE if the icon is sensitive.</doc>
16147           <type name="gboolean" c:type="gboolean"/>
16148         </return-value>
16149         <parameters>
16150           <parameter name="icon_pos" transfer-ownership="none">
16151             <doc xml:whitespace="preserve">Icon position</doc>
16152             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16153           </parameter>
16154         </parameters>
16155       </method>
16156       <method name="get_icon_stock"
16157               c:identifier="gtk_entry_get_icon_stock"
16158               version="2.16">
16159         <doc xml:whitespace="preserve">Retrieves the stock id used for the icon, or %NULL if there is
16160 no icon or if the icon was set by some other method (e.g., by
16161 pixbuf, icon name or gicon).
16162 wasn't set from a stock id</doc>
16163         <return-value transfer-ownership="none">
16164           <doc xml:whitespace="preserve">A stock id, or %NULL if no icon is set or if the icon</doc>
16165           <type name="utf8" c:type="gchar*"/>
16166         </return-value>
16167         <parameters>
16168           <parameter name="icon_pos" transfer-ownership="none">
16169             <doc xml:whitespace="preserve">Icon position</doc>
16170             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16171           </parameter>
16172         </parameters>
16173       </method>
16174       <method name="get_icon_storage_type"
16175               c:identifier="gtk_entry_get_icon_storage_type"
16176               version="2.16">
16177         <doc xml:whitespace="preserve">Gets the type of representation being used by the icon
16178 to store image data. If the icon has no image data,
16179 the return value will be %GTK_IMAGE_EMPTY.</doc>
16180         <return-value transfer-ownership="none">
16181           <doc xml:whitespace="preserve">image representation being used</doc>
16182           <type name="ImageType" c:type="GtkImageType"/>
16183         </return-value>
16184         <parameters>
16185           <parameter name="icon_pos" transfer-ownership="none">
16186             <doc xml:whitespace="preserve">Icon position</doc>
16187             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16188           </parameter>
16189         </parameters>
16190       </method>
16191       <method name="get_icon_tooltip_markup"
16192               c:identifier="gtk_entry_get_icon_tooltip_markup"
16193               version="2.16">
16194         <doc xml:whitespace="preserve">Gets the contents of the tooltip on the icon at the specified 
16195 position in @entry.
16196 with g_free() when done.</doc>
16197         <return-value transfer-ownership="full">
16198           <doc xml:whitespace="preserve">the tooltip text, or %NULL. Free the returned string</doc>
16199           <type name="utf8" c:type="gchar*"/>
16200         </return-value>
16201         <parameters>
16202           <parameter name="icon_pos" transfer-ownership="none">
16203             <doc xml:whitespace="preserve">the icon position</doc>
16204             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16205           </parameter>
16206         </parameters>
16207       </method>
16208       <method name="get_icon_tooltip_text"
16209               c:identifier="gtk_entry_get_icon_tooltip_text"
16210               version="2.16">
16211         <doc xml:whitespace="preserve">Gets the contents of the tooltip on the icon at the specified 
16212 position in @entry.
16213 with g_free() when done.</doc>
16214         <return-value transfer-ownership="full">
16215           <doc xml:whitespace="preserve">the tooltip text, or %NULL. Free the returned string</doc>
16216           <type name="utf8" c:type="gchar*"/>
16217         </return-value>
16218         <parameters>
16219           <parameter name="icon_pos" transfer-ownership="none">
16220             <doc xml:whitespace="preserve">the icon position</doc>
16221             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16222           </parameter>
16223         </parameters>
16224       </method>
16225       <method name="get_icon_window"
16226               c:identifier="gtk_entry_get_icon_window"
16227               version="2.20">
16228         <doc xml:whitespace="preserve">Returns the #GdkWindow which contains the entry's icon at
16229 entry in an expose-event callback because it enables the callback
16230 to distinguish between the text window and entry's icon windows.
16231 See also gtk_entry_get_text_window().</doc>
16232         <return-value transfer-ownership="none">
16233           <doc xml:whitespace="preserve">the entry's icon window at @icon_pos.</doc>
16234           <type name="Gdk.Window" c:type="GdkWindow*"/>
16235         </return-value>
16236         <parameters>
16237           <parameter name="icon_pos" transfer-ownership="none">
16238             <doc xml:whitespace="preserve">Icon position</doc>
16239             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16240           </parameter>
16241         </parameters>
16242       </method>
16243       <method name="get_inner_border"
16244               c:identifier="gtk_entry_get_inner_border"
16245               version="2.10">
16246         <doc xml:whitespace="preserve">This function returns the entry's #GtkEntry:inner-border property. See
16247 gtk_entry_set_inner_border() for more information.</doc>
16248         <return-value transfer-ownership="none">
16249           <doc xml:whitespace="preserve">the entry's #GtkBorder, or %NULL if none was set.</doc>
16250           <type name="Border" c:type="GtkBorder*"/>
16251         </return-value>
16252       </method>
16253       <method name="get_invisible_char"
16254               c:identifier="gtk_entry_get_invisible_char"
16255               introspectable="0">
16256         <doc xml:whitespace="preserve">Retrieves the character displayed in place of the real characters
16257 for entries with visibility set to false. See gtk_entry_set_invisible_char().
16258 show invisible text at all.</doc>
16259         <return-value transfer-ownership="none">
16260           <doc xml:whitespace="preserve">the current invisible char, or 0, if the entry does not</doc>
16261           <type name="gunichar" c:type="gunichar"/>
16262         </return-value>
16263       </method>
16264       <method name="get_layout" c:identifier="gtk_entry_get_layout">
16265         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the entry.
16266 The layout is useful to e.g. convert text positions to
16267 pixel positions, in combination with gtk_entry_get_layout_offsets().
16268 The returned layout is owned by the entry and must not be 
16269 modified or freed by the caller.
16270 Keep in mind that the layout text may contain a preedit string, so
16271 gtk_entry_layout_index_to_text_index() and
16272 gtk_entry_text_index_to_layout_index() are needed to convert byte
16273 indices in the layout to byte indices in the entry contents.</doc>
16274         <return-value transfer-ownership="none">
16275           <doc xml:whitespace="preserve">the #PangoLayout for this entry</doc>
16276           <type name="Pango.Layout" c:type="PangoLayout*"/>
16277         </return-value>
16278       </method>
16279       <method name="get_layout_offsets"
16280               c:identifier="gtk_entry_get_layout_offsets">
16281         <doc xml:whitespace="preserve">Obtains the position of the #PangoLayout used to render text
16282 in the entry, in widget coordinates. Useful if you want to line
16283 up the text in an entry with some other text, e.g. when using the
16284 entry to implement editable cells in a sheet widget.
16285 Also useful to convert mouse events into coordinates inside the
16286 #PangoLayout, e.g. to take some action if some part of the entry text
16287 is clicked.
16288 Note that as the user scrolls around in the entry the offsets will
16289 change; you'll need to connect to the "notify::scroll-offset"
16290 signal to track this. Remember when using the #PangoLayout
16291 functions you need to convert to and from pixels using
16292 PANGO_PIXELS() or #PANGO_SCALE.
16293 Keep in mind that the layout text may contain a preedit string, so
16294 gtk_entry_layout_index_to_text_index() and
16295 gtk_entry_text_index_to_layout_index() are needed to convert byte
16296 indices in the layout to byte indices in the entry contents.</doc>
16297         <return-value transfer-ownership="none">
16298           <type name="none" c:type="void"/>
16299         </return-value>
16300         <parameters>
16301           <parameter name="x" transfer-ownership="none" allow-none="1">
16302             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
16303             <type name="gint" c:type="gint*"/>
16304           </parameter>
16305           <parameter name="y" transfer-ownership="none" allow-none="1">
16306             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
16307             <type name="gint" c:type="gint*"/>
16308           </parameter>
16309         </parameters>
16310       </method>
16311       <method name="get_max_length" c:identifier="gtk_entry_get_max_length">
16312         <doc xml:whitespace="preserve">Retrieves the maximum allowed length of the text in
16313 This is equivalent to:
16314 &lt;informalexample&gt;&lt;programlisting&gt;
16315 gtk_entry_buffer_get_max_length (gtk_entry_get_buffer (entry));
16316 &lt;/programlisting&gt;&lt;/informalexample&gt;
16317 in #GtkEntry, or 0 if there is no maximum.</doc>
16318         <return-value transfer-ownership="none">
16319           <doc xml:whitespace="preserve">the maximum allowed number of characters</doc>
16320           <type name="gint" c:type="gint"/>
16321         </return-value>
16322       </method>
16323       <method name="get_overwrite_mode"
16324               c:identifier="gtk_entry_get_overwrite_mode"
16325               version="2.14">
16326         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_overwrite_mode().</doc>
16327         <return-value transfer-ownership="none">
16328           <doc xml:whitespace="preserve">whether the text is overwritten when typing.</doc>
16329           <type name="gboolean" c:type="gboolean"/>
16330         </return-value>
16331       </method>
16332       <method name="get_progress_fraction"
16333               c:identifier="gtk_entry_get_progress_fraction"
16334               version="2.16">
16335         <doc xml:whitespace="preserve">Returns the current fraction of the task that's been completed.
16336 See gtk_entry_set_progress_fraction().</doc>
16337         <return-value transfer-ownership="none">
16338           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
16339           <type name="gdouble" c:type="gdouble"/>
16340         </return-value>
16341       </method>
16342       <method name="get_progress_pulse_step"
16343               c:identifier="gtk_entry_get_progress_pulse_step"
16344               version="2.16">
16345         <doc xml:whitespace="preserve">Retrieves the pulse step set with gtk_entry_set_progress_pulse_step().</doc>
16346         <return-value transfer-ownership="none">
16347           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
16348           <type name="gdouble" c:type="gdouble"/>
16349         </return-value>
16350       </method>
16351       <method name="get_text" c:identifier="gtk_entry_get_text">
16352         <doc xml:whitespace="preserve">Retrieves the contents of the entry widget.
16353 See also gtk_editable_get_chars().
16354 This is equivalent to:
16355 &lt;informalexample&gt;&lt;programlisting&gt;
16356 gtk_entry_buffer_get_text (gtk_entry_get_buffer (entry));
16357 &lt;/programlisting&gt;&lt;/informalexample&gt;
16358 string. This string points to internally allocated
16359 storage in the widget and must not be freed, modified or
16360 stored.</doc>
16361         <return-value transfer-ownership="none">
16362           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
16363           <type name="utf8" c:type="gchar*"/>
16364         </return-value>
16365       </method>
16366       <method name="get_text_length"
16367               c:identifier="gtk_entry_get_text_length"
16368               version="2.14">
16369         <doc xml:whitespace="preserve">Retrieves the current length of the text in
16370 This is equivalent to:
16371 &lt;informalexample&gt;&lt;programlisting&gt;
16372 gtk_entry_buffer_get_length (gtk_entry_get_buffer (entry));
16373 &lt;/programlisting&gt;&lt;/informalexample&gt;
16374 in #GtkEntry, or 0 if there are none.</doc>
16375         <return-value transfer-ownership="none">
16376           <doc xml:whitespace="preserve">the current number of characters</doc>
16377           <type name="guint16" c:type="guint16"/>
16378         </return-value>
16379       </method>
16380       <method name="get_text_window"
16381               c:identifier="gtk_entry_get_text_window"
16382               version="2.20">
16383         <doc xml:whitespace="preserve">Returns the #GdkWindow which contains the text. This function is
16384 useful when drawing something to the entry in an expose-event
16385 callback because it enables the callback to distinguish between
16386 the text window and entry's icon windows.
16387 See also gtk_entry_get_icon_window().</doc>
16388         <return-value transfer-ownership="none">
16389           <doc xml:whitespace="preserve">the entry's text window.</doc>
16390           <type name="Gdk.Window" c:type="GdkWindow*"/>
16391         </return-value>
16392       </method>
16393       <method name="get_visibility" c:identifier="gtk_entry_get_visibility">
16394         <doc xml:whitespace="preserve">Retrieves whether the text in @entry is visible. See
16395 gtk_entry_set_visibility().</doc>
16396         <return-value transfer-ownership="none">
16397           <doc xml:whitespace="preserve">%TRUE if the text is currently visible</doc>
16398           <type name="gboolean" c:type="gboolean"/>
16399         </return-value>
16400       </method>
16401       <method name="get_width_chars" c:identifier="gtk_entry_get_width_chars">
16402         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_width_chars().</doc>
16403         <return-value transfer-ownership="none">
16404           <doc xml:whitespace="preserve">number of chars to request space for, or negative if unset</doc>
16405           <type name="gint" c:type="gint"/>
16406         </return-value>
16407       </method>
16408       <method name="im_context_filter_keypress"
16409               c:identifier="gtk_entry_im_context_filter_keypress"
16410               version="2.22">
16411         <doc xml:whitespace="preserve">Allow the #GtkEntry input method to internally handle key press
16412 and release events. If this function returns %TRUE, then no further
16413 processing should be done for this key event. See
16414 gtk_im_context_filter_keypress().
16415 Note that you are expected to call this function from your handler
16416 when overriding key event handling. This is needed in the case when
16417 you need to insert your own key handling between the input method
16418 and the default key event handling of the #GtkEntry.
16419 See gtk_text_view_reset_im_context() for an example of use.</doc>
16420         <return-value transfer-ownership="none">
16421           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
16422           <type name="gboolean" c:type="gboolean"/>
16423         </return-value>
16424         <parameters>
16425           <parameter name="event" transfer-ownership="none">
16426             <doc xml:whitespace="preserve">the key event</doc>
16427             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
16428           </parameter>
16429         </parameters>
16430       </method>
16431       <method name="layout_index_to_text_index"
16432               c:identifier="gtk_entry_layout_index_to_text_index">
16433         <doc xml:whitespace="preserve">Converts from a position in the entry contents (returned
16434 by gtk_entry_get_text()) to a position in the
16435 entry's #PangoLayout (returned by gtk_entry_get_layout(),
16436 with text retrieved via pango_layout_get_text()).</doc>
16437         <return-value transfer-ownership="none">
16438           <doc xml:whitespace="preserve">byte index into the entry contents</doc>
16439           <type name="gint" c:type="gint"/>
16440         </return-value>
16441         <parameters>
16442           <parameter name="layout_index" transfer-ownership="none">
16443             <doc xml:whitespace="preserve">byte index into the entry layout text</doc>
16444             <type name="gint" c:type="gint"/>
16445           </parameter>
16446         </parameters>
16447       </method>
16448       <method name="progress_pulse"
16449               c:identifier="gtk_entry_progress_pulse"
16450               version="2.16">
16451         <doc xml:whitespace="preserve">Indicates that some progress is made, but you don't know how much.
16452 Causes the entry's progress indicator to enter "activity mode,"
16453 where a block bounces back and forth. Each call to
16454 gtk_entry_progress_pulse() causes the block to move by a little bit
16455 (the amount of movement per pulse is determined by
16456 gtk_entry_set_progress_pulse_step()).</doc>
16457         <return-value transfer-ownership="none">
16458           <type name="none" c:type="void"/>
16459         </return-value>
16460       </method>
16461       <method name="reset_im_context"
16462               c:identifier="gtk_entry_reset_im_context"
16463               version="2.22">
16464         <doc xml:whitespace="preserve">Reset the input method context of the entry if needed.
16465 This can be necessary in the case where modifying the buffer
16466 would confuse on-going input method behavior.</doc>
16467         <return-value transfer-ownership="none">
16468           <type name="none" c:type="void"/>
16469         </return-value>
16470       </method>
16471       <method name="set_activates_default"
16472               c:identifier="gtk_entry_set_activates_default">
16473         <doc xml:whitespace="preserve">If @setting is %TRUE, pressing Enter in the @entry will activate the default
16474 widget for the window containing the entry. This usually means that
16475 the dialog box containing the entry will be closed, since the default
16476 widget is usually one of the dialog buttons.
16477 (For experts: if @setting is %TRUE, the entry calls
16478 gtk_window_activate_default() on the window containing the entry, in
16479 the default handler for the #GtkWidget::activate signal.)</doc>
16480         <return-value transfer-ownership="none">
16481           <type name="none" c:type="void"/>
16482         </return-value>
16483         <parameters>
16484           <parameter name="setting" transfer-ownership="none">
16485             <doc xml:whitespace="preserve">%TRUE to activate window's default widget on Enter keypress</doc>
16486             <type name="gboolean" c:type="gboolean"/>
16487           </parameter>
16488         </parameters>
16489       </method>
16490       <method name="set_alignment"
16491               c:identifier="gtk_entry_set_alignment"
16492               version="2.4">
16493         <doc xml:whitespace="preserve">Sets the alignment for the contents of the entry. This controls
16494 the horizontal positioning of the contents when the displayed
16495 text is shorter than the width of the entry.</doc>
16496         <return-value transfer-ownership="none">
16497           <type name="none" c:type="void"/>
16498         </return-value>
16499         <parameters>
16500           <parameter name="xalign" transfer-ownership="none">
16501             <doc xml:whitespace="preserve">The horizontal alignment, from 0 (left) to 1 (right). Reversed for RTL layouts</doc>
16502             <type name="gfloat" c:type="gfloat"/>
16503           </parameter>
16504         </parameters>
16505       </method>
16506       <method name="set_buffer"
16507               c:identifier="gtk_entry_set_buffer"
16508               version="2.18">
16509         <doc xml:whitespace="preserve">Set the #GtkEntryBuffer object which holds the text for
16510 this widget.</doc>
16511         <return-value transfer-ownership="none">
16512           <type name="none" c:type="void"/>
16513         </return-value>
16514         <parameters>
16515           <parameter name="buffer" transfer-ownership="none">
16516             <doc xml:whitespace="preserve">a #GtkEntryBuffer</doc>
16517             <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
16518           </parameter>
16519         </parameters>
16520       </method>
16521       <method name="set_completion"
16522               c:identifier="gtk_entry_set_completion"
16523               version="2.4">
16524         <doc xml:whitespace="preserve">Sets @completion to be the auxiliary completion object to use with @entry.
16525 All further configuration of the completion mechanism is done on</doc>
16526         <return-value transfer-ownership="none">
16527           <type name="none" c:type="void"/>
16528         </return-value>
16529         <parameters>
16530           <parameter name="completion"
16531                      transfer-ownership="none"
16532                      allow-none="1">
16533             <doc xml:whitespace="preserve">The #GtkEntryCompletion or %NULL</doc>
16534             <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
16535           </parameter>
16536         </parameters>
16537       </method>
16538       <method name="set_cursor_hadjustment"
16539               c:identifier="gtk_entry_set_cursor_hadjustment"
16540               version="2.12">
16541         <doc xml:whitespace="preserve">Hooks up an adjustment to the cursor position in an entry, so that when 
16542 the cursor is moved, the adjustment is scrolled to show that position. 
16543 See gtk_scrolled_window_get_hadjustment() for a typical way of obtaining 
16544 the adjustment.
16545 The adjustment has to be in pixel units and in the same coordinate system 
16546 as the entry.</doc>
16547         <return-value transfer-ownership="none">
16548           <type name="none" c:type="void"/>
16549         </return-value>
16550         <parameters>
16551           <parameter name="adjustment" transfer-ownership="none">
16552             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the cursor is moved, or %NULL</doc>
16553             <type name="Adjustment" c:type="GtkAdjustment*"/>
16554           </parameter>
16555         </parameters>
16556       </method>
16557       <method name="set_has_frame" c:identifier="gtk_entry_set_has_frame">
16558         <doc xml:whitespace="preserve">Sets whether the entry has a beveled frame around it.</doc>
16559         <return-value transfer-ownership="none">
16560           <type name="none" c:type="void"/>
16561         </return-value>
16562         <parameters>
16563           <parameter name="setting" transfer-ownership="none">
16564             <doc xml:whitespace="preserve">new value</doc>
16565             <type name="gboolean" c:type="gboolean"/>
16566           </parameter>
16567         </parameters>
16568       </method>
16569       <method name="set_icon_activatable"
16570               c:identifier="gtk_entry_set_icon_activatable"
16571               version="2.16">
16572         <doc xml:whitespace="preserve">Sets whether the icon is activatable.</doc>
16573         <return-value transfer-ownership="none">
16574           <type name="none" c:type="void"/>
16575         </return-value>
16576         <parameters>
16577           <parameter name="icon_pos" transfer-ownership="none">
16578             <doc xml:whitespace="preserve">Icon position</doc>
16579             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16580           </parameter>
16581           <parameter name="activatable" transfer-ownership="none">
16582             <doc xml:whitespace="preserve">%TRUE if the icon should be activatable</doc>
16583             <type name="gboolean" c:type="gboolean"/>
16584           </parameter>
16585         </parameters>
16586       </method>
16587       <method name="set_icon_drag_source"
16588               c:identifier="gtk_entry_set_icon_drag_source"
16589               version="2.16">
16590         <doc xml:whitespace="preserve">Sets up the icon at the given position so that GTK+ will start a drag
16591 operation when the user clicks and drags the icon.
16592 To handle the drag operation, you need to connect to the usual
16593 #GtkWidget::drag-data-get (or possibly #GtkWidget::drag-data-delete)
16594 signal, and use gtk_entry_get_current_icon_drag_source() in
16595 your signal handler to find out if the drag was started from
16596 an icon.
16597 By default, GTK+ uses the icon as the drag icon. You can use the 
16598 #GtkWidget::drag-begin signal to set a different icon. Note that you 
16599 have to use g_signal_connect_after() to ensure that your signal handler
16600 gets executed after the default handler.</doc>
16601         <return-value transfer-ownership="none">
16602           <type name="none" c:type="void"/>
16603         </return-value>
16604         <parameters>
16605           <parameter name="icon_pos" transfer-ownership="none">
16606             <doc xml:whitespace="preserve">icon position</doc>
16607             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16608           </parameter>
16609           <parameter name="target_list" transfer-ownership="none">
16610             <doc xml:whitespace="preserve">the targets (data formats) in which the data can be provided</doc>
16611             <type name="TargetList" c:type="GtkTargetList*"/>
16612           </parameter>
16613           <parameter name="actions" transfer-ownership="none">
16614             <doc xml:whitespace="preserve">a bitmask of the allowed drag actions</doc>
16615             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
16616           </parameter>
16617         </parameters>
16618       </method>
16619       <method name="set_icon_from_gicon"
16620               c:identifier="gtk_entry_set_icon_from_gicon"
16621               version="2.16">
16622         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position
16623 from the current icon theme.
16624 If the icon isn't known, a "broken image" icon will be displayed
16625 instead.
16626 If @icon is %NULL, no icon will be shown in the specified position.</doc>
16627         <return-value transfer-ownership="none">
16628           <type name="none" c:type="void"/>
16629         </return-value>
16630         <parameters>
16631           <parameter name="icon_pos" transfer-ownership="none">
16632             <doc xml:whitespace="preserve">The position at which to set the icon</doc>
16633             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16634           </parameter>
16635           <parameter name="icon" transfer-ownership="none" allow-none="1">
16636             <doc xml:whitespace="preserve">The icon to set, or %NULL</doc>
16637             <type name="Gio.Icon" c:type="GIcon*"/>
16638           </parameter>
16639         </parameters>
16640       </method>
16641       <method name="set_icon_from_icon_name"
16642               c:identifier="gtk_entry_set_icon_from_icon_name"
16643               version="2.16">
16644         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position
16645 from the current icon theme.
16646 If the icon name isn't known, a "broken image" icon will be displayed
16647 instead.
16648 If @icon_name is %NULL, no icon will be shown in the specified position.</doc>
16649         <return-value transfer-ownership="none">
16650           <type name="none" c:type="void"/>
16651         </return-value>
16652         <parameters>
16653           <parameter name="icon_pos" transfer-ownership="none">
16654             <doc xml:whitespace="preserve">The position at which to set the icon</doc>
16655             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16656           </parameter>
16657           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
16658             <doc xml:whitespace="preserve">An icon name, or %NULL</doc>
16659             <type name="utf8" c:type="gchar*"/>
16660           </parameter>
16661         </parameters>
16662       </method>
16663       <method name="set_icon_from_pixbuf"
16664               c:identifier="gtk_entry_set_icon_from_pixbuf"
16665               version="2.16">
16666         <doc xml:whitespace="preserve">Sets the icon shown in the specified position using a pixbuf.
16667 If @pixbuf is %NULL, no icon will be shown in the specified position.</doc>
16668         <return-value transfer-ownership="none">
16669           <type name="none" c:type="void"/>
16670         </return-value>
16671         <parameters>
16672           <parameter name="icon_pos" transfer-ownership="none">
16673             <doc xml:whitespace="preserve">Icon position</doc>
16674             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16675           </parameter>
16676           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
16677             <doc xml:whitespace="preserve">A #GdkPixbuf, or %NULL</doc>
16678             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
16679           </parameter>
16680         </parameters>
16681       </method>
16682       <method name="set_icon_from_stock"
16683               c:identifier="gtk_entry_set_icon_from_stock"
16684               version="2.16">
16685         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position from
16686 a stock image.
16687 If @stock_id is %NULL, no icon will be shown in the specified position.</doc>
16688         <return-value transfer-ownership="none">
16689           <type name="none" c:type="void"/>
16690         </return-value>
16691         <parameters>
16692           <parameter name="icon_pos" transfer-ownership="none">
16693             <doc xml:whitespace="preserve">Icon position</doc>
16694             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16695           </parameter>
16696           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
16697             <doc xml:whitespace="preserve">The name of the stock item, or %NULL</doc>
16698             <type name="utf8" c:type="gchar*"/>
16699           </parameter>
16700         </parameters>
16701       </method>
16702       <method name="set_icon_sensitive"
16703               c:identifier="gtk_entry_set_icon_sensitive"
16704               version="2.16">
16705         <doc xml:whitespace="preserve">Sets the sensitivity for the specified icon.</doc>
16706         <return-value transfer-ownership="none">
16707           <type name="none" c:type="void"/>
16708         </return-value>
16709         <parameters>
16710           <parameter name="icon_pos" transfer-ownership="none">
16711             <doc xml:whitespace="preserve">Icon position</doc>
16712             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16713           </parameter>
16714           <parameter name="sensitive" transfer-ownership="none">
16715             <doc xml:whitespace="preserve">Specifies whether the icon should appear sensitive or insensitive</doc>
16716             <type name="gboolean" c:type="gboolean"/>
16717           </parameter>
16718         </parameters>
16719       </method>
16720       <method name="set_icon_tooltip_markup"
16721               c:identifier="gtk_entry_set_icon_tooltip_markup"
16722               version="2.16">
16723         <doc xml:whitespace="preserve">Sets @tooltip as the contents of the tooltip for the icon at
16724 the specified position. @tooltip is assumed to be marked up with
16725 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
16726 Use %NULL for @tooltip to remove an existing tooltip.
16727 See also gtk_widget_set_tooltip_markup() and 
16728 gtk_enty_set_icon_tooltip_text().</doc>
16729         <return-value transfer-ownership="none">
16730           <type name="none" c:type="void"/>
16731         </return-value>
16732         <parameters>
16733           <parameter name="icon_pos" transfer-ownership="none">
16734             <doc xml:whitespace="preserve">the icon position</doc>
16735             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16736           </parameter>
16737           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
16738             <doc xml:whitespace="preserve">the contents of the tooltip for the icon, or %NULL</doc>
16739             <type name="utf8" c:type="gchar*"/>
16740           </parameter>
16741         </parameters>
16742       </method>
16743       <method name="set_icon_tooltip_text"
16744               c:identifier="gtk_entry_set_icon_tooltip_text"
16745               version="2.16">
16746         <doc xml:whitespace="preserve">Sets @tooltip as the contents of the tooltip for the icon
16747 at the specified position.
16748 Use %NULL for @tooltip to remove an existing tooltip.
16749 See also gtk_widget_set_tooltip_text() and 
16750 gtk_entry_set_icon_tooltip_markup().</doc>
16751         <return-value transfer-ownership="none">
16752           <type name="none" c:type="void"/>
16753         </return-value>
16754         <parameters>
16755           <parameter name="icon_pos" transfer-ownership="none">
16756             <doc xml:whitespace="preserve">the icon position</doc>
16757             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
16758           </parameter>
16759           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
16760             <doc xml:whitespace="preserve">the contents of the tooltip for the icon, or %NULL</doc>
16761             <type name="utf8" c:type="gchar*"/>
16762           </parameter>
16763         </parameters>
16764       </method>
16765       <method name="set_inner_border"
16766               c:identifier="gtk_entry_set_inner_border"
16767               version="2.10">
16768         <doc xml:whitespace="preserve">Sets %entry's inner-border property to %border, or clears it if %NULL
16769 is passed. The inner-border is the area around the entry's text, but
16770 inside its frame.
16771 If set, this property overrides the inner-border style property.
16772 Overriding the style-provided border is useful when you want to do
16773 in-place editing of some text in a canvas or list widget, where
16774 pixel-exact positioning of the entry is important.</doc>
16775         <return-value transfer-ownership="none">
16776           <type name="none" c:type="void"/>
16777         </return-value>
16778         <parameters>
16779           <parameter name="border" transfer-ownership="none" allow-none="1">
16780             <doc xml:whitespace="preserve">a #GtkBorder, or %NULL</doc>
16781             <type name="Border" c:type="GtkBorder*"/>
16782           </parameter>
16783         </parameters>
16784       </method>
16785       <method name="set_invisible_char"
16786               c:identifier="gtk_entry_set_invisible_char"
16787               introspectable="0">
16788         <doc xml:whitespace="preserve">Sets the character to use in place of the actual text when
16789 gtk_entry_set_visibility() has been called to set text visibility
16790 to %FALSE. i.e. this is the character used in "password mode" to
16791 show the user how many characters have been typed. By default, GTK+
16792 picks the best invisible char available in the current font. If you
16793 set the invisible char to 0, then the user will get no feedback
16794 at all; there will be no text on the screen as they type.</doc>
16795         <return-value transfer-ownership="none">
16796           <type name="none" c:type="void"/>
16797         </return-value>
16798         <parameters>
16799           <parameter name="ch" transfer-ownership="none">
16800             <doc xml:whitespace="preserve">a Unicode character</doc>
16801             <type name="gunichar" c:type="gunichar"/>
16802           </parameter>
16803         </parameters>
16804       </method>
16805       <method name="set_max_length" c:identifier="gtk_entry_set_max_length">
16806         <doc xml:whitespace="preserve">Sets the maximum allowed length of the contents of the widget. If
16807 the current contents are longer than the given length, then they
16808 will be truncated to fit.
16809 This is equivalent to:
16810 &lt;informalexample&gt;&lt;programlisting&gt;
16811 gtk_entry_buffer_set_max_length (gtk_entry_get_buffer (entry), max);
16812 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
16813         <return-value transfer-ownership="none">
16814           <type name="none" c:type="void"/>
16815         </return-value>
16816         <parameters>
16817           <parameter name="max" transfer-ownership="none">
16818             <doc xml:whitespace="preserve">the maximum length of the entry, or 0 for no maximum. (other than the maximum length of entries.) The value passed in will be clamped to the range 0-65536.</doc>
16819             <type name="gint" c:type="gint"/>
16820           </parameter>
16821         </parameters>
16822       </method>
16823       <method name="set_overwrite_mode"
16824               c:identifier="gtk_entry_set_overwrite_mode"
16825               version="2.14">
16826         <doc xml:whitespace="preserve">Sets whether the text is overwritten when typing in the #GtkEntry.</doc>
16827         <return-value transfer-ownership="none">
16828           <type name="none" c:type="void"/>
16829         </return-value>
16830         <parameters>
16831           <parameter name="overwrite" transfer-ownership="none">
16832             <doc xml:whitespace="preserve">new value</doc>
16833             <type name="gboolean" c:type="gboolean"/>
16834           </parameter>
16835         </parameters>
16836       </method>
16837       <method name="set_progress_fraction"
16838               c:identifier="gtk_entry_set_progress_fraction"
16839               version="2.16">
16840         <doc xml:whitespace="preserve">Causes the entry's progress indicator to "fill in" the given
16841 fraction of the bar. The fraction should be between 0.0 and 1.0,
16842 inclusive.</doc>
16843         <return-value transfer-ownership="none">
16844           <type name="none" c:type="void"/>
16845         </return-value>
16846         <parameters>
16847           <parameter name="fraction" transfer-ownership="none">
16848             <doc xml:whitespace="preserve">fraction of the task that's been completed</doc>
16849             <type name="gdouble" c:type="gdouble"/>
16850           </parameter>
16851         </parameters>
16852       </method>
16853       <method name="set_progress_pulse_step"
16854               c:identifier="gtk_entry_set_progress_pulse_step"
16855               version="2.16">
16856         <doc xml:whitespace="preserve">Sets the fraction of total entry width to move the progress
16857 bouncing block for each call to gtk_entry_progress_pulse().</doc>
16858         <return-value transfer-ownership="none">
16859           <type name="none" c:type="void"/>
16860         </return-value>
16861         <parameters>
16862           <parameter name="fraction" transfer-ownership="none">
16863             <doc xml:whitespace="preserve">fraction between 0.0 and 1.0</doc>
16864             <type name="gdouble" c:type="gdouble"/>
16865           </parameter>
16866         </parameters>
16867       </method>
16868       <method name="set_text" c:identifier="gtk_entry_set_text">
16869         <doc xml:whitespace="preserve">Sets the text in the widget to the given
16870 value, replacing the current contents.
16871 See gtk_entry_buffer_set_text().</doc>
16872         <return-value transfer-ownership="none">
16873           <type name="none" c:type="void"/>
16874         </return-value>
16875         <parameters>
16876           <parameter name="text" transfer-ownership="none">
16877             <doc xml:whitespace="preserve">the new text</doc>
16878             <type name="utf8" c:type="gchar*"/>
16879           </parameter>
16880         </parameters>
16881       </method>
16882       <method name="set_visibility" c:identifier="gtk_entry_set_visibility">
16883         <doc xml:whitespace="preserve">Sets whether the contents of the entry are visible or not. 
16884 When visibility is set to %FALSE, characters are displayed 
16885 as the invisible char, and will also appear that way when 
16886 the text in the entry widget is copied elsewhere.
16887 By default, GTK+ picks the best invisible character available
16888 in the current font, but it can be changed with
16889 gtk_entry_set_invisible_char().</doc>
16890         <return-value transfer-ownership="none">
16891           <type name="none" c:type="void"/>
16892         </return-value>
16893         <parameters>
16894           <parameter name="visible" transfer-ownership="none">
16895             <doc xml:whitespace="preserve">%TRUE if the contents of the entry are displayed as plaintext</doc>
16896             <type name="gboolean" c:type="gboolean"/>
16897           </parameter>
16898         </parameters>
16899       </method>
16900       <method name="set_width_chars" c:identifier="gtk_entry_set_width_chars">
16901         <doc xml:whitespace="preserve">Changes the size request of the entry to be about the right size
16902 for @n_chars characters. Note that it changes the size
16903 &lt;emphasis&gt;request&lt;/emphasis&gt;, the size can still be affected by
16904 how you pack the widget into containers. If @n_chars is -1, the
16905 size reverts to the default entry size.</doc>
16906         <return-value transfer-ownership="none">
16907           <type name="none" c:type="void"/>
16908         </return-value>
16909         <parameters>
16910           <parameter name="n_chars" transfer-ownership="none">
16911             <doc xml:whitespace="preserve">width in chars</doc>
16912             <type name="gint" c:type="gint"/>
16913           </parameter>
16914         </parameters>
16915       </method>
16916       <method name="text_index_to_layout_index"
16917               c:identifier="gtk_entry_text_index_to_layout_index">
16918         <doc xml:whitespace="preserve">Converts from a position in the entry's #PangoLayout (returned by
16919 gtk_entry_get_layout()) to a position in the entry contents
16920 (returned by gtk_entry_get_text()).</doc>
16921         <return-value transfer-ownership="none">
16922           <doc xml:whitespace="preserve">byte index into the entry layout text</doc>
16923           <type name="gint" c:type="gint"/>
16924         </return-value>
16925         <parameters>
16926           <parameter name="text_index" transfer-ownership="none">
16927             <doc xml:whitespace="preserve">byte index into the entry contents</doc>
16928             <type name="gint" c:type="gint"/>
16929           </parameter>
16930         </parameters>
16931       </method>
16932       <method name="unset_invisible_char"
16933               c:identifier="gtk_entry_unset_invisible_char"
16934               version="2.16">
16935         <doc xml:whitespace="preserve">Unsets the invisible char previously set with
16936 gtk_entry_set_invisible_char(). So that the
16937 default invisible char is used again.</doc>
16938         <return-value transfer-ownership="none">
16939           <type name="none" c:type="void"/>
16940         </return-value>
16941       </method>
16942       <property name="activates-default"
16943                 writable="1"
16944                 transfer-ownership="none">
16945         <type name="gboolean"/>
16946       </property>
16947       <property name="buffer"
16948                 writable="1"
16949                 construct="1"
16950                 transfer-ownership="none">
16951         <type name="EntryBuffer"/>
16952       </property>
16953       <property name="caps-lock-warning"
16954                 writable="1"
16955                 transfer-ownership="none">
16956         <type name="gboolean"/>
16957       </property>
16958       <property name="cursor-position" transfer-ownership="none">
16959         <type name="gint"/>
16960       </property>
16961       <property name="editable" writable="1" transfer-ownership="none">
16962         <type name="gboolean"/>
16963       </property>
16964       <property name="has-frame" writable="1" transfer-ownership="none">
16965         <type name="gboolean"/>
16966       </property>
16967       <property name="im-module"
16968                 version="2.16"
16969                 writable="1"
16970                 transfer-ownership="none">
16971         <doc xml:whitespace="preserve">Which IM (input method) module should be used for this entry. 
16972 See #GtkIMContext.
16973 Setting this to a non-%NULL value overrides the
16974 system-wide IM module setting. See the GtkSettings 
16975 #GtkSettings:gtk-im-module property.</doc>
16976         <type name="utf8"/>
16977       </property>
16978       <property name="inner-border"
16979                 version="2.10"
16980                 writable="1"
16981                 transfer-ownership="none">
16982         <doc xml:whitespace="preserve">Sets the text area's border between the text and the frame.</doc>
16983         <type name="Border"/>
16984       </property>
16985       <property name="invisible-char"
16986                 version="2.18"
16987                 writable="1"
16988                 transfer-ownership="none">
16989         <doc xml:whitespace="preserve">The invisible character is used when masking entry contents (in
16990 \"password mode\")"). When it is not explicitly set with the
16991 #GtkEntry::invisible-char property, GTK+ determines the character
16992 to use from a list of possible candidates, depending on availability
16993 in the current font.
16994 This style property allows the theme to prepend a character
16995 to the list of candidates.</doc>
16996         <type name="guint"/>
16997       </property>
16998       <property name="invisible-char-set"
16999                 version="2.16"
17000                 writable="1"
17001                 transfer-ownership="none">
17002         <doc xml:whitespace="preserve">Whether the invisible char has been set for the #GtkEntry.</doc>
17003         <type name="gboolean"/>
17004       </property>
17005       <property name="max-length" writable="1" transfer-ownership="none">
17006         <type name="gint"/>
17007       </property>
17008       <property name="overwrite-mode"
17009                 version="2.14"
17010                 writable="1"
17011                 transfer-ownership="none">
17012         <doc xml:whitespace="preserve">If text is overwritten when typing in the #GtkEntry.</doc>
17013         <type name="gboolean"/>
17014       </property>
17015       <property name="primary-icon-activatable"
17016                 version="2.16"
17017                 writable="1"
17018                 transfer-ownership="none">
17019         <doc xml:whitespace="preserve">Whether the primary icon is activatable.
17020 GTK+ emits the #GtkEntry::icon-press and #GtkEntry::icon-release 
17021 signals only on sensitive, activatable icons. 
17022 Sensitive, but non-activatable icons can be used for purely 
17023 informational purposes.</doc>
17024         <type name="gboolean"/>
17025       </property>
17026       <property name="primary-icon-gicon"
17027                 version="2.16"
17028                 writable="1"
17029                 transfer-ownership="none">
17030         <doc xml:whitespace="preserve">The #GIcon to use for the primary icon for the entry.</doc>
17031         <type name="Gio.Icon"/>
17032       </property>
17033       <property name="primary-icon-name"
17034                 version="2.16"
17035                 writable="1"
17036                 transfer-ownership="none">
17037         <doc xml:whitespace="preserve">The icon name to use for the primary icon for the entry.</doc>
17038         <type name="utf8"/>
17039       </property>
17040       <property name="primary-icon-pixbuf"
17041                 version="2.16"
17042                 writable="1"
17043                 transfer-ownership="none">
17044         <doc xml:whitespace="preserve">A pixbuf to use as the primary icon for the entry.</doc>
17045         <type name="GdkPixbuf.Pixbuf"/>
17046       </property>
17047       <property name="primary-icon-sensitive"
17048                 version="2.16"
17049                 writable="1"
17050                 transfer-ownership="none">
17051         <doc xml:whitespace="preserve">Whether the primary icon is sensitive.
17052 An insensitive icon appears grayed out. GTK+ does not emit the 
17053 #GtkEntry::icon-press and #GtkEntry::icon-release signals and 
17054 does not allow DND from insensitive icons.
17055 An icon should be set insensitive if the action that would trigger
17056 when clicked is currently not available.</doc>
17057         <type name="gboolean"/>
17058       </property>
17059       <property name="primary-icon-stock"
17060                 version="2.16"
17061                 writable="1"
17062                 transfer-ownership="none">
17063         <doc xml:whitespace="preserve">The stock id to use for the primary icon for the entry.</doc>
17064         <type name="utf8"/>
17065       </property>
17066       <property name="primary-icon-storage-type"
17067                 version="2.16"
17068                 transfer-ownership="none">
17069         <doc xml:whitespace="preserve">The representation which is used for the primary icon of the entry.</doc>
17070         <type name="ImageType"/>
17071       </property>
17072       <property name="primary-icon-tooltip-markup"
17073                 version="2.16"
17074                 writable="1"
17075                 transfer-ownership="none">
17076         <doc xml:whitespace="preserve">The contents of the tooltip on the primary icon, which is marked up
17077 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
17078 language&lt;/link&gt;.
17079 Also see gtk_entry_set_icon_tooltip_markup().</doc>
17080         <type name="utf8"/>
17081       </property>
17082       <property name="primary-icon-tooltip-text"
17083                 version="2.16"
17084                 writable="1"
17085                 transfer-ownership="none">
17086         <doc xml:whitespace="preserve">The contents of the tooltip on the primary icon.
17087 Also see gtk_entry_set_icon_tooltip_text().</doc>
17088         <type name="utf8"/>
17089       </property>
17090       <property name="progress-fraction"
17091                 version="2.16"
17092                 writable="1"
17093                 transfer-ownership="none">
17094         <doc xml:whitespace="preserve">The current fraction of the task that's been completed.</doc>
17095         <type name="gdouble"/>
17096       </property>
17097       <property name="progress-pulse-step"
17098                 version="2.16"
17099                 writable="1"
17100                 transfer-ownership="none">
17101         <doc xml:whitespace="preserve">The fraction of total entry width to move the progress
17102 bouncing block for each call to gtk_entry_progress_pulse().</doc>
17103         <type name="gdouble"/>
17104       </property>
17105       <property name="scroll-offset" transfer-ownership="none">
17106         <type name="gint"/>
17107       </property>
17108       <property name="secondary-icon-activatable"
17109                 version="2.16"
17110                 writable="1"
17111                 transfer-ownership="none">
17112         <doc xml:whitespace="preserve">Whether the secondary icon is activatable.
17113 GTK+ emits the #GtkEntry::icon-press and #GtkEntry::icon-release 
17114 signals only on sensitive, activatable icons.
17115 Sensitive, but non-activatable icons can be used for purely 
17116 informational purposes.</doc>
17117         <type name="gboolean"/>
17118       </property>
17119       <property name="secondary-icon-gicon"
17120                 version="2.16"
17121                 writable="1"
17122                 transfer-ownership="none">
17123         <doc xml:whitespace="preserve">The #GIcon to use for the secondary icon for the entry.</doc>
17124         <type name="Gio.Icon"/>
17125       </property>
17126       <property name="secondary-icon-name"
17127                 version="2.16"
17128                 writable="1"
17129                 transfer-ownership="none">
17130         <doc xml:whitespace="preserve">The icon name to use for the secondary icon for the entry.</doc>
17131         <type name="utf8"/>
17132       </property>
17133       <property name="secondary-icon-pixbuf"
17134                 version="2.16"
17135                 writable="1"
17136                 transfer-ownership="none">
17137         <doc xml:whitespace="preserve">An pixbuf to use as the secondary icon for the entry.</doc>
17138         <type name="GdkPixbuf.Pixbuf"/>
17139       </property>
17140       <property name="secondary-icon-sensitive"
17141                 version="2.16"
17142                 writable="1"
17143                 transfer-ownership="none">
17144         <doc xml:whitespace="preserve">Whether the secondary icon is sensitive.
17145 An insensitive icon appears grayed out. GTK+ does not emit the 
17146 #GtkEntry::icon-press and #GtkEntry::icon-release signals and 
17147 does not allow DND from insensitive icons.
17148 An icon should be set insensitive if the action that would trigger
17149 when clicked is currently not available.</doc>
17150         <type name="gboolean"/>
17151       </property>
17152       <property name="secondary-icon-stock"
17153                 version="2.16"
17154                 writable="1"
17155                 transfer-ownership="none">
17156         <doc xml:whitespace="preserve">The stock id to use for the secondary icon for the entry.</doc>
17157         <type name="utf8"/>
17158       </property>
17159       <property name="secondary-icon-storage-type"
17160                 version="2.16"
17161                 transfer-ownership="none">
17162         <doc xml:whitespace="preserve">The representation which is used for the secondary icon of the entry.</doc>
17163         <type name="ImageType"/>
17164       </property>
17165       <property name="secondary-icon-tooltip-markup"
17166                 version="2.16"
17167                 writable="1"
17168                 transfer-ownership="none">
17169         <doc xml:whitespace="preserve">The contents of the tooltip on the secondary icon, which is marked up
17170 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
17171 language&lt;/link&gt;.
17172 Also see gtk_entry_set_icon_tooltip_markup().</doc>
17173         <type name="utf8"/>
17174       </property>
17175       <property name="secondary-icon-tooltip-text"
17176                 version="2.16"
17177                 writable="1"
17178                 transfer-ownership="none">
17179         <doc xml:whitespace="preserve">The contents of the tooltip on the secondary icon.
17180 Also see gtk_entry_set_icon_tooltip_text().</doc>
17181         <type name="utf8"/>
17182       </property>
17183       <property name="selection-bound" transfer-ownership="none">
17184         <type name="gint"/>
17185       </property>
17186       <property name="shadow-type"
17187                 version="2.12"
17188                 writable="1"
17189                 transfer-ownership="none">
17190         <doc xml:whitespace="preserve">Which kind of shadow to draw around the entry when 
17191 #GtkEntry:has-frame is set to %TRUE.</doc>
17192         <type name="ShadowType"/>
17193       </property>
17194       <property name="text" writable="1" transfer-ownership="none">
17195         <type name="utf8"/>
17196       </property>
17197       <property name="text-length" version="2.14" transfer-ownership="none">
17198         <doc xml:whitespace="preserve">The length of the text in the #GtkEntry.</doc>
17199         <type name="guint"/>
17200       </property>
17201       <property name="truncate-multiline"
17202                 version="2.10"
17203                 writable="1"
17204                 transfer-ownership="none">
17205         <doc xml:whitespace="preserve">When %TRUE, pasted multi-line text is truncated to the first line.</doc>
17206         <type name="gboolean"/>
17207       </property>
17208       <property name="visibility" writable="1" transfer-ownership="none">
17209         <type name="gboolean"/>
17210       </property>
17211       <property name="width-chars" writable="1" transfer-ownership="none">
17212         <type name="gint"/>
17213       </property>
17214       <property name="xalign"
17215                 version="2.4"
17216                 writable="1"
17217                 transfer-ownership="none">
17218         <doc xml:whitespace="preserve">The horizontal alignment, from 0 (left) to 1 (right). 
17219 Reversed for RTL layouts.</doc>
17220         <type name="gfloat"/>
17221       </property>
17222       <field name="widget">
17223         <type name="Widget" c:type="GtkWidget"/>
17224       </field>
17225       <field name="editable" bits="1">
17226         <type name="guint" c:type="guint"/>
17227       </field>
17228       <field name="visible" bits="1">
17229         <type name="guint" c:type="guint"/>
17230       </field>
17231       <field name="overwrite_mode" bits="1">
17232         <type name="guint" c:type="guint"/>
17233       </field>
17234       <field name="in_drag" bits="1">
17235         <type name="guint" c:type="guint"/>
17236       </field>
17237       <field name="text_area">
17238         <type name="Gdk.Window" c:type="GdkWindow*"/>
17239       </field>
17240       <field name="im_context">
17241         <type name="IMContext" c:type="GtkIMContext*"/>
17242       </field>
17243       <field name="popup_menu">
17244         <type name="Widget" c:type="GtkWidget*"/>
17245       </field>
17246       <field name="current_pos">
17247         <type name="gint" c:type="gint"/>
17248       </field>
17249       <field name="selection_bound">
17250         <type name="gint" c:type="gint"/>
17251       </field>
17252       <field name="cached_layout">
17253         <type name="Pango.Layout" c:type="PangoLayout*"/>
17254       </field>
17255       <field name="cache_includes_preedit" bits="1">
17256         <type name="guint" c:type="guint"/>
17257       </field>
17258       <field name="need_im_reset" bits="1">
17259         <type name="guint" c:type="guint"/>
17260       </field>
17261       <field name="has_frame" bits="1">
17262         <type name="guint" c:type="guint"/>
17263       </field>
17264       <field name="activates_default" bits="1">
17265         <type name="guint" c:type="guint"/>
17266       </field>
17267       <field name="cursor_visible" bits="1">
17268         <type name="guint" c:type="guint"/>
17269       </field>
17270       <field name="in_click" bits="1">
17271         <type name="guint" c:type="guint"/>
17272       </field>
17273       <field name="is_cell_renderer" bits="1">
17274         <type name="guint" c:type="guint"/>
17275       </field>
17276       <field name="editing_canceled" bits="1">
17277         <type name="guint" c:type="guint"/>
17278       </field>
17279       <field name="mouse_cursor_obscured" bits="1">
17280         <type name="guint" c:type="guint"/>
17281       </field>
17282       <field name="select_words" bits="1">
17283         <type name="guint" c:type="guint"/>
17284       </field>
17285       <field name="select_lines" bits="1">
17286         <type name="guint" c:type="guint"/>
17287       </field>
17288       <field name="resolved_dir" bits="4">
17289         <type name="guint" c:type="guint"/>
17290       </field>
17291       <field name="truncate_multiline" bits="1">
17292         <type name="guint" c:type="guint"/>
17293       </field>
17294       <field name="button">
17295         <type name="guint" c:type="guint"/>
17296       </field>
17297       <field name="blink_timeout">
17298         <type name="guint" c:type="guint"/>
17299       </field>
17300       <field name="recompute_idle">
17301         <type name="guint" c:type="guint"/>
17302       </field>
17303       <field name="scroll_offset">
17304         <type name="gint" c:type="gint"/>
17305       </field>
17306       <field name="ascent">
17307         <type name="gint" c:type="gint"/>
17308       </field>
17309       <field name="descent">
17310         <type name="gint" c:type="gint"/>
17311       </field>
17312       <field name="x_text_size">
17313         <type name="guint16" c:type="guint16"/>
17314       </field>
17315       <field name="x_n_bytes">
17316         <type name="guint16" c:type="guint16"/>
17317       </field>
17318       <field name="preedit_length">
17319         <type name="guint16" c:type="guint16"/>
17320       </field>
17321       <field name="preedit_cursor">
17322         <type name="guint16" c:type="guint16"/>
17323       </field>
17324       <field name="dnd_position">
17325         <type name="gint" c:type="gint"/>
17326       </field>
17327       <field name="drag_start_x">
17328         <type name="gint" c:type="gint"/>
17329       </field>
17330       <field name="drag_start_y">
17331         <type name="gint" c:type="gint"/>
17332       </field>
17333       <field name="invisible_char" introspectable="0">
17334         <type name="gunichar" c:type="gunichar"/>
17335       </field>
17336       <field name="width_chars">
17337         <type name="gint" c:type="gint"/>
17338       </field>
17339       <glib:signal name="activate">
17340         <doc xml:whitespace="preserve">A  &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17341 which gets emitted when the user activates the entry.
17342 Applications should not connect to it, but may emit it with
17343 g_signal_emit_by_name() if they need to control activation 
17344 programmatically.
17345 The default bindings for this signal are all forms of the Enter key.</doc>
17346         <return-value transfer-ownership="none">
17347           <type name="none"/>
17348         </return-value>
17349       </glib:signal>
17350       <glib:signal name="backspace">
17351         <doc xml:whitespace="preserve">The ::backspace signal is a
17352 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17353 which gets emitted when the user asks for it.
17354 The default bindings for this signal are
17355 Backspace and Shift-Backspace.</doc>
17356         <return-value transfer-ownership="none">
17357           <type name="none"/>
17358         </return-value>
17359       </glib:signal>
17360       <glib:signal name="copy-clipboard">
17361         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a
17362 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17363 which gets emitted to copy the selection to the clipboard.
17364 The default bindings for this signal are
17365 Ctrl-c and Ctrl-Insert.</doc>
17366         <return-value transfer-ownership="none">
17367           <type name="none"/>
17368         </return-value>
17369       </glib:signal>
17370       <glib:signal name="cut-clipboard">
17371         <doc xml:whitespace="preserve">The ::cut-clipboard signal is a
17372 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17373 which gets emitted to cut the selection to the clipboard.
17374 The default bindings for this signal are
17375 Ctrl-x and Shift-Delete.</doc>
17376         <return-value transfer-ownership="none">
17377           <type name="none"/>
17378         </return-value>
17379       </glib:signal>
17380       <glib:signal name="delete-from-cursor">
17381         <doc xml:whitespace="preserve">The ::delete-from-cursor signal is a
17382 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17383 which gets emitted when the user initiates a text deletion.
17384 If the @type is %GTK_DELETE_CHARS, GTK+ deletes the selection
17385 if there is one, otherwise it deletes the requested number
17386 of characters.
17387 The default bindings for this signal are
17388 Delete for deleting a character and Ctrl-Delete for
17389 deleting a word.</doc>
17390         <return-value transfer-ownership="none">
17391           <type name="none"/>
17392         </return-value>
17393         <parameters>
17394           <parameter name="object" transfer-ownership="none">
17395             <doc xml:whitespace="preserve">the granularity of the deletion, as a #GtkDeleteType</doc>
17396             <type name="DeleteType"/>
17397           </parameter>
17398           <parameter name="p0" transfer-ownership="none">
17399             <doc xml:whitespace="preserve">the number of @type units to delete</doc>
17400             <type name="gint"/>
17401           </parameter>
17402         </parameters>
17403       </glib:signal>
17404       <glib:signal name="icon-press" version="2.16">
17405         <doc xml:whitespace="preserve">The ::icon-press signal is emitted when an activatable icon
17406 is clicked.</doc>
17407         <return-value transfer-ownership="none">
17408           <type name="none"/>
17409         </return-value>
17410         <parameters>
17411           <parameter name="object" transfer-ownership="none">
17412             <doc xml:whitespace="preserve">The position of the clicked icon</doc>
17413             <type name="EntryIconPosition"/>
17414           </parameter>
17415           <parameter name="p0" transfer-ownership="none">
17416             <doc xml:whitespace="preserve">the button press event</doc>
17417             <type name="Gdk.Event"/>
17418           </parameter>
17419         </parameters>
17420       </glib:signal>
17421       <glib:signal name="icon-release" version="2.16">
17422         <doc xml:whitespace="preserve">The ::icon-release signal is emitted on the button release from a
17423 mouse click over an activatable icon.</doc>
17424         <return-value transfer-ownership="none">
17425           <type name="none"/>
17426         </return-value>
17427         <parameters>
17428           <parameter name="object" transfer-ownership="none">
17429             <doc xml:whitespace="preserve">The position of the clicked icon</doc>
17430             <type name="EntryIconPosition"/>
17431           </parameter>
17432           <parameter name="p0" transfer-ownership="none">
17433             <doc xml:whitespace="preserve">the button release event</doc>
17434             <type name="Gdk.Event"/>
17435           </parameter>
17436         </parameters>
17437       </glib:signal>
17438       <glib:signal name="insert-at-cursor">
17439         <doc xml:whitespace="preserve">The ::insert-at-cursor signal is a
17440 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17441 which gets emitted when the user initiates the insertion of a
17442 fixed string at the cursor.
17443 This signal has no default bindings.</doc>
17444         <return-value transfer-ownership="none">
17445           <type name="none"/>
17446         </return-value>
17447         <parameters>
17448           <parameter name="object" transfer-ownership="none">
17449             <doc xml:whitespace="preserve">the string to insert</doc>
17450             <type name="utf8"/>
17451           </parameter>
17452         </parameters>
17453       </glib:signal>
17454       <glib:signal name="move-cursor">
17455         <doc xml:whitespace="preserve">The ::move-cursor signal is a
17456 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17457 which gets emitted when the user initiates a cursor movement.
17458 If the cursor is not visible in @entry, this signal causes
17459 the viewport to be moved instead.
17460 Applications should not connect to it, but may emit it with
17461 g_signal_emit_by_name() if they need to control the cursor
17462 programmatically.
17463 The default bindings for this signal come in two variants,
17464 the variant with the Shift modifier extends the selection,
17465 the variant without the Shift modifer does not.
17466 There are too many key combinations to list them all here.
17467 &lt;itemizedlist&gt;
17468 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
17469 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
17470 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
17471 &lt;/itemizedlist&gt;</doc>
17472         <return-value transfer-ownership="none">
17473           <type name="none"/>
17474         </return-value>
17475         <parameters>
17476           <parameter name="object" transfer-ownership="none">
17477             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
17478             <type name="MovementStep"/>
17479           </parameter>
17480           <parameter name="p0" transfer-ownership="none">
17481             <doc xml:whitespace="preserve">the number of @step units to move</doc>
17482             <type name="gint"/>
17483           </parameter>
17484           <parameter name="p1" transfer-ownership="none">
17485             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
17486             <type name="gboolean"/>
17487           </parameter>
17488         </parameters>
17489       </glib:signal>
17490       <glib:signal name="paste-clipboard">
17491         <doc xml:whitespace="preserve">The ::paste-clipboard signal is a
17492 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17493 which gets emitted to paste the contents of the clipboard
17494 into the text view.
17495 The default bindings for this signal are
17496 Ctrl-v and Shift-Insert.</doc>
17497         <return-value transfer-ownership="none">
17498           <type name="none"/>
17499         </return-value>
17500       </glib:signal>
17501       <glib:signal name="populate-popup">
17502         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the 
17503 context menu of the entry. 
17504 If you need to add items to the context menu, connect
17505 to this signal and append your menuitems to the @menu.</doc>
17506         <return-value transfer-ownership="none">
17507           <type name="none"/>
17508         </return-value>
17509         <parameters>
17510           <parameter name="object" transfer-ownership="none">
17511             <doc xml:whitespace="preserve">the menu that is being populated</doc>
17512             <type name="Menu"/>
17513           </parameter>
17514         </parameters>
17515       </glib:signal>
17516       <glib:signal name="preedit-changed" version="2.20">
17517         <doc xml:whitespace="preserve">If an input method is used, the typed text will not immediately
17518 be committed to the buffer. So if you are interested in the text,
17519 connect to this signal.</doc>
17520         <return-value transfer-ownership="none">
17521           <type name="none"/>
17522         </return-value>
17523         <parameters>
17524           <parameter name="object" transfer-ownership="none">
17525             <doc xml:whitespace="preserve">the current preedit string</doc>
17526             <type name="utf8"/>
17527           </parameter>
17528         </parameters>
17529       </glib:signal>
17530       <glib:signal name="toggle-overwrite">
17531         <doc xml:whitespace="preserve">The ::toggle-overwrite signal is a
17532 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17533 which gets emitted to toggle the overwrite mode of the entry.
17534 The default bindings for this signal is Insert.</doc>
17535         <return-value transfer-ownership="none">
17536           <type name="none"/>
17537         </return-value>
17538       </glib:signal>
17539     </class>
17540     <class name="EntryBuffer"
17541            c:symbol-prefix="entry_buffer"
17542            c:type="GtkEntryBuffer"
17543            parent="GObject.Object"
17544            glib:type-name="GtkEntryBuffer"
17545            glib:get-type="gtk_entry_buffer_get_type"
17546            glib:type-struct="EntryBufferClass">
17547       <constructor name="new"
17548                    c:identifier="gtk_entry_buffer_new"
17549                    version="2.18">
17550         <doc xml:whitespace="preserve">Create a new GtkEntryBuffer object.
17551 Optionally, specify initial text to set in the buffer.</doc>
17552         <return-value transfer-ownership="full">
17553           <doc xml:whitespace="preserve">A new GtkEntryBuffer object.</doc>
17554           <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17555         </return-value>
17556         <parameters>
17557           <parameter name="initial_chars"
17558                      transfer-ownership="none"
17559                      allow-none="1">
17560             <doc xml:whitespace="preserve">initial buffer text, or %NULL</doc>
17561             <type name="utf8" c:type="gchar*"/>
17562           </parameter>
17563           <parameter name="n_initial_chars" transfer-ownership="none">
17564             <doc xml:whitespace="preserve">number of characters in @initial_chars, or -1</doc>
17565             <type name="gint" c:type="gint"/>
17566           </parameter>
17567         </parameters>
17568       </constructor>
17569       <virtual-method name="delete_text" invoker="delete_text" version="2.18">
17570         <doc xml:whitespace="preserve">Deletes a sequence of characters from the buffer. @n_chars characters are
17571 deleted starting at @position. If @n_chars is negative, then all characters
17572 until the end of the text are deleted.
17573 If @position or @n_chars are out of bounds, then they are coerced to sane
17574 values.
17575 Note that the positions are specified in characters, not bytes.</doc>
17576         <return-value transfer-ownership="none">
17577           <doc xml:whitespace="preserve">The number of characters deleted.</doc>
17578           <type name="guint" c:type="guint"/>
17579         </return-value>
17580         <parameters>
17581           <parameter name="position" transfer-ownership="none">
17582             <doc xml:whitespace="preserve">position at which to delete text</doc>
17583             <type name="guint" c:type="guint"/>
17584           </parameter>
17585           <parameter name="n_chars" transfer-ownership="none">
17586             <doc xml:whitespace="preserve">number of characters to delete</doc>
17587             <type name="guint" c:type="guint"/>
17588           </parameter>
17589         </parameters>
17590       </virtual-method>
17591       <virtual-method name="get_length" invoker="get_length" version="2.18">
17592         <doc xml:whitespace="preserve">Retrieves the length in characters of the buffer.</doc>
17593         <return-value transfer-ownership="none">
17594           <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
17595           <type name="guint" c:type="guint"/>
17596         </return-value>
17597       </virtual-method>
17598       <virtual-method name="get_text">
17599         <return-value transfer-ownership="none">
17600           <type name="utf8" c:type="gchar*"/>
17601         </return-value>
17602         <parameters>
17603           <parameter name="n_bytes" transfer-ownership="none">
17604             <type name="gulong" c:type="gsize*"/>
17605           </parameter>
17606         </parameters>
17607       </virtual-method>
17608       <virtual-method name="insert_text" invoker="insert_text" version="2.18">
17609         <doc xml:whitespace="preserve">Inserts @n_chars characters of @chars into the contents of the
17610 buffer, at position @position.
17611 If @n_chars is negative, then characters from chars will be inserted
17612 until a null-terminator is found. If @position or @n_chars are out of
17613 bounds, or the maximum buffer text length is exceeded, then they are
17614 coerced to sane values.
17615 Note that the position and length are in characters, not in bytes.</doc>
17616         <return-value transfer-ownership="none">
17617           <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
17618           <type name="guint" c:type="guint"/>
17619         </return-value>
17620         <parameters>
17621           <parameter name="position" transfer-ownership="none">
17622             <doc xml:whitespace="preserve">the position at which to insert text.</doc>
17623             <type name="guint" c:type="guint"/>
17624           </parameter>
17625           <parameter name="chars" transfer-ownership="none">
17626             <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
17627             <type name="utf8" c:type="gchar*"/>
17628           </parameter>
17629           <parameter name="n_chars" transfer-ownership="none">
17630             <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
17631             <type name="guint" c:type="guint"/>
17632           </parameter>
17633         </parameters>
17634       </virtual-method>
17635       <method name="delete_text"
17636               c:identifier="gtk_entry_buffer_delete_text"
17637               version="2.18">
17638         <doc xml:whitespace="preserve">Deletes a sequence of characters from the buffer. @n_chars characters are
17639 deleted starting at @position. If @n_chars is negative, then all characters
17640 until the end of the text are deleted.
17641 If @position or @n_chars are out of bounds, then they are coerced to sane
17642 values.
17643 Note that the positions are specified in characters, not bytes.</doc>
17644         <return-value transfer-ownership="none">
17645           <doc xml:whitespace="preserve">The number of characters deleted.</doc>
17646           <type name="guint" c:type="guint"/>
17647         </return-value>
17648         <parameters>
17649           <parameter name="position" transfer-ownership="none">
17650             <doc xml:whitespace="preserve">position at which to delete text</doc>
17651             <type name="guint" c:type="guint"/>
17652           </parameter>
17653           <parameter name="n_chars" transfer-ownership="none">
17654             <doc xml:whitespace="preserve">number of characters to delete</doc>
17655             <type name="gint" c:type="gint"/>
17656           </parameter>
17657         </parameters>
17658       </method>
17659       <method name="emit_deleted_text"
17660               c:identifier="gtk_entry_buffer_emit_deleted_text"
17661               version="2.18">
17662         <doc xml:whitespace="preserve">Used when subclassing #GtkEntryBuffer</doc>
17663         <return-value transfer-ownership="none">
17664           <type name="none" c:type="void"/>
17665         </return-value>
17666         <parameters>
17667           <parameter name="position" transfer-ownership="none">
17668             <doc xml:whitespace="preserve">position at which text was deleted</doc>
17669             <type name="guint" c:type="guint"/>
17670           </parameter>
17671           <parameter name="n_chars" transfer-ownership="none">
17672             <doc xml:whitespace="preserve">number of characters deleted</doc>
17673             <type name="guint" c:type="guint"/>
17674           </parameter>
17675         </parameters>
17676       </method>
17677       <method name="emit_inserted_text"
17678               c:identifier="gtk_entry_buffer_emit_inserted_text"
17679               version="2.18">
17680         <doc xml:whitespace="preserve">Used when subclassing #GtkEntryBuffer</doc>
17681         <return-value transfer-ownership="none">
17682           <type name="none" c:type="void"/>
17683         </return-value>
17684         <parameters>
17685           <parameter name="position" transfer-ownership="none">
17686             <doc xml:whitespace="preserve">position at which text was inserted</doc>
17687             <type name="guint" c:type="guint"/>
17688           </parameter>
17689           <parameter name="chars" transfer-ownership="none">
17690             <doc xml:whitespace="preserve">text that was inserted</doc>
17691             <type name="utf8" c:type="gchar*"/>
17692           </parameter>
17693           <parameter name="n_chars" transfer-ownership="none">
17694             <doc xml:whitespace="preserve">number of characters inserted</doc>
17695             <type name="guint" c:type="guint"/>
17696           </parameter>
17697         </parameters>
17698       </method>
17699       <method name="get_bytes"
17700               c:identifier="gtk_entry_buffer_get_bytes"
17701               version="2.18">
17702         <doc xml:whitespace="preserve">Retrieves the length in bytes of the buffer.
17703 See gtk_entry_buffer_get_length().</doc>
17704         <return-value transfer-ownership="none">
17705           <doc xml:whitespace="preserve">The byte length of the buffer.</doc>
17706           <type name="gulong" c:type="gsize"/>
17707         </return-value>
17708       </method>
17709       <method name="get_length"
17710               c:identifier="gtk_entry_buffer_get_length"
17711               version="2.18">
17712         <doc xml:whitespace="preserve">Retrieves the length in characters of the buffer.</doc>
17713         <return-value transfer-ownership="none">
17714           <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
17715           <type name="guint" c:type="guint"/>
17716         </return-value>
17717       </method>
17718       <method name="get_max_length"
17719               c:identifier="gtk_entry_buffer_get_max_length"
17720               version="2.18">
17721         <doc xml:whitespace="preserve">Retrieves the maximum allowed length of the text in
17722 in #GtkEntryBuffer, or 0 if there is no maximum.</doc>
17723         <return-value transfer-ownership="none">
17724           <doc xml:whitespace="preserve">the maximum allowed number of characters</doc>
17725           <type name="gint" c:type="gint"/>
17726         </return-value>
17727       </method>
17728       <method name="get_text"
17729               c:identifier="gtk_entry_buffer_get_text"
17730               version="2.18">
17731         <doc xml:whitespace="preserve">Retrieves the contents of the buffer.
17732 The memory pointer returned by this call will not change
17733 unless this object emits a signal, or is finalized.
17734 string. This string points to internally allocated
17735 storage in the buffer and must not be freed, modified or
17736 stored.</doc>
17737         <return-value transfer-ownership="none">
17738           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
17739           <type name="utf8" c:type="gchar*"/>
17740         </return-value>
17741       </method>
17742       <method name="insert_text"
17743               c:identifier="gtk_entry_buffer_insert_text"
17744               version="2.18">
17745         <doc xml:whitespace="preserve">Inserts @n_chars characters of @chars into the contents of the
17746 buffer, at position @position.
17747 If @n_chars is negative, then characters from chars will be inserted
17748 until a null-terminator is found. If @position or @n_chars are out of
17749 bounds, or the maximum buffer text length is exceeded, then they are
17750 coerced to sane values.
17751 Note that the position and length are in characters, not in bytes.</doc>
17752         <return-value transfer-ownership="none">
17753           <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
17754           <type name="guint" c:type="guint"/>
17755         </return-value>
17756         <parameters>
17757           <parameter name="position" transfer-ownership="none">
17758             <doc xml:whitespace="preserve">the position at which to insert text.</doc>
17759             <type name="guint" c:type="guint"/>
17760           </parameter>
17761           <parameter name="chars" transfer-ownership="none">
17762             <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
17763             <type name="utf8" c:type="gchar*"/>
17764           </parameter>
17765           <parameter name="n_chars" transfer-ownership="none">
17766             <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
17767             <type name="gint" c:type="gint"/>
17768           </parameter>
17769         </parameters>
17770       </method>
17771       <method name="set_max_length"
17772               c:identifier="gtk_entry_buffer_set_max_length"
17773               version="2.18">
17774         <doc xml:whitespace="preserve">Sets the maximum allowed length of the contents of the buffer. If
17775 the current contents are longer than the given length, then they
17776 will be truncated to fit.</doc>
17777         <return-value transfer-ownership="none">
17778           <type name="none" c:type="void"/>
17779         </return-value>
17780         <parameters>
17781           <parameter name="max_length" transfer-ownership="none">
17782             <doc xml:whitespace="preserve">the maximum length of the entry buffer, or 0 for no maximum. (other than the maximum length of entries.) The value passed in will be clamped to the range 0-65536.</doc>
17783             <type name="gint" c:type="gint"/>
17784           </parameter>
17785         </parameters>
17786       </method>
17787       <method name="set_text"
17788               c:identifier="gtk_entry_buffer_set_text"
17789               version="2.18">
17790         <doc xml:whitespace="preserve">Sets the text in the buffer.
17791 This is roughly equivalent to calling gtk_entry_buffer_delete_text()
17792 and gtk_entry_buffer_insert_text().
17793 Note that @n_chars is in characters, not in bytes.</doc>
17794         <return-value transfer-ownership="none">
17795           <type name="none" c:type="void"/>
17796         </return-value>
17797         <parameters>
17798           <parameter name="chars" transfer-ownership="none">
17799             <doc xml:whitespace="preserve">the new text</doc>
17800             <type name="utf8" c:type="gchar*"/>
17801           </parameter>
17802           <parameter name="n_chars" transfer-ownership="none">
17803             <doc xml:whitespace="preserve">the number of characters in @text, or -1</doc>
17804             <type name="gint" c:type="gint"/>
17805           </parameter>
17806         </parameters>
17807       </method>
17808       <property name="length" version="2.18" transfer-ownership="none">
17809         <doc xml:whitespace="preserve">The length (in characters) of the text in buffer.</doc>
17810         <type name="guint"/>
17811       </property>
17812       <property name="max-length"
17813                 version="2.18"
17814                 writable="1"
17815                 transfer-ownership="none">
17816         <doc xml:whitespace="preserve">The maximum length (in characters) of the text in the buffer.</doc>
17817         <type name="gint"/>
17818       </property>
17819       <property name="text"
17820                 version="2.18"
17821                 writable="1"
17822                 transfer-ownership="none">
17823         <doc xml:whitespace="preserve">The contents of the buffer.</doc>
17824         <type name="utf8"/>
17825       </property>
17826       <field name="parent_instance">
17827         <type name="GObject.Object" c:type="GObject"/>
17828       </field>
17829       <field name="priv">
17830         <type name="EntryBufferPrivate" c:type="GtkEntryBufferPrivate*"/>
17831       </field>
17832       <glib:signal name="deleted-text" version="2.18">
17833         <doc xml:whitespace="preserve">This signal is emitted after text is deleted from the buffer.</doc>
17834         <return-value transfer-ownership="none">
17835           <type name="none"/>
17836         </return-value>
17837         <parameters>
17838           <parameter name="object" transfer-ownership="none">
17839             <doc xml:whitespace="preserve">the position the text was deleted at.</doc>
17840             <type name="guint"/>
17841           </parameter>
17842           <parameter name="p0" transfer-ownership="none">
17843             <doc xml:whitespace="preserve">The number of characters that were deleted.</doc>
17844             <type name="guint"/>
17845           </parameter>
17846         </parameters>
17847       </glib:signal>
17848       <glib:signal name="inserted-text" version="2.18">
17849         <doc xml:whitespace="preserve">This signal is emitted after text is inserted into the buffer.</doc>
17850         <return-value transfer-ownership="none">
17851           <type name="none"/>
17852         </return-value>
17853         <parameters>
17854           <parameter name="object" transfer-ownership="none">
17855             <doc xml:whitespace="preserve">the position the text was inserted at.</doc>
17856             <type name="guint"/>
17857           </parameter>
17858           <parameter name="p0" transfer-ownership="none">
17859             <doc xml:whitespace="preserve">The text that was inserted.</doc>
17860             <type name="utf8"/>
17861           </parameter>
17862           <parameter name="p1" transfer-ownership="none">
17863             <doc xml:whitespace="preserve">The number of characters that were inserted.</doc>
17864             <type name="guint"/>
17865           </parameter>
17866         </parameters>
17867       </glib:signal>
17868     </class>
17869     <record name="EntryBufferClass"
17870             c:type="GtkEntryBufferClass"
17871             glib:is-gtype-struct-for="EntryBuffer">
17872       <field name="parent_class">
17873         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
17874       </field>
17875       <field name="inserted_text">
17876         <callback name="inserted_text">
17877           <return-value transfer-ownership="none">
17878             <type name="none" c:type="void"/>
17879           </return-value>
17880           <parameters>
17881             <parameter name="buffer" transfer-ownership="none">
17882               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17883             </parameter>
17884             <parameter name="position" transfer-ownership="none">
17885               <type name="guint" c:type="guint"/>
17886             </parameter>
17887             <parameter name="chars" transfer-ownership="none">
17888               <type name="utf8" c:type="gchar*"/>
17889             </parameter>
17890             <parameter name="n_chars" transfer-ownership="none">
17891               <type name="guint" c:type="guint"/>
17892             </parameter>
17893           </parameters>
17894         </callback>
17895       </field>
17896       <field name="deleted_text">
17897         <callback name="deleted_text">
17898           <return-value transfer-ownership="none">
17899             <type name="none" c:type="void"/>
17900           </return-value>
17901           <parameters>
17902             <parameter name="buffer" transfer-ownership="none">
17903               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17904             </parameter>
17905             <parameter name="position" transfer-ownership="none">
17906               <type name="guint" c:type="guint"/>
17907             </parameter>
17908             <parameter name="n_chars" transfer-ownership="none">
17909               <type name="guint" c:type="guint"/>
17910             </parameter>
17911           </parameters>
17912         </callback>
17913       </field>
17914       <field name="get_text">
17915         <callback name="get_text">
17916           <return-value transfer-ownership="none">
17917             <type name="utf8" c:type="gchar*"/>
17918           </return-value>
17919           <parameters>
17920             <parameter name="buffer" transfer-ownership="none">
17921               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17922             </parameter>
17923             <parameter name="n_bytes" transfer-ownership="none">
17924               <type name="gulong" c:type="gsize*"/>
17925             </parameter>
17926           </parameters>
17927         </callback>
17928       </field>
17929       <field name="get_length">
17930         <callback name="get_length">
17931           <return-value transfer-ownership="none">
17932             <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
17933             <type name="guint" c:type="guint"/>
17934           </return-value>
17935           <parameters>
17936             <parameter name="buffer" transfer-ownership="none">
17937               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17938             </parameter>
17939           </parameters>
17940         </callback>
17941       </field>
17942       <field name="insert_text">
17943         <callback name="insert_text">
17944           <return-value transfer-ownership="none">
17945             <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
17946             <type name="guint" c:type="guint"/>
17947           </return-value>
17948           <parameters>
17949             <parameter name="buffer" transfer-ownership="none">
17950               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17951             </parameter>
17952             <parameter name="position" transfer-ownership="none">
17953               <doc xml:whitespace="preserve">the position at which to insert text.</doc>
17954               <type name="guint" c:type="guint"/>
17955             </parameter>
17956             <parameter name="chars" transfer-ownership="none">
17957               <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
17958               <type name="utf8" c:type="gchar*"/>
17959             </parameter>
17960             <parameter name="n_chars" transfer-ownership="none">
17961               <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
17962               <type name="guint" c:type="guint"/>
17963             </parameter>
17964           </parameters>
17965         </callback>
17966       </field>
17967       <field name="delete_text">
17968         <callback name="delete_text">
17969           <return-value transfer-ownership="none">
17970             <doc xml:whitespace="preserve">The number of characters deleted.</doc>
17971             <type name="guint" c:type="guint"/>
17972           </return-value>
17973           <parameters>
17974             <parameter name="buffer" transfer-ownership="none">
17975               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
17976             </parameter>
17977             <parameter name="position" transfer-ownership="none">
17978               <doc xml:whitespace="preserve">position at which to delete text</doc>
17979               <type name="guint" c:type="guint"/>
17980             </parameter>
17981             <parameter name="n_chars" transfer-ownership="none">
17982               <doc xml:whitespace="preserve">number of characters to delete</doc>
17983               <type name="guint" c:type="guint"/>
17984             </parameter>
17985           </parameters>
17986         </callback>
17987       </field>
17988       <field name="_gtk_reserved0" introspectable="0">
17989         <callback name="_gtk_reserved0">
17990           <return-value transfer-ownership="none">
17991             <type name="none" c:type="void"/>
17992           </return-value>
17993         </callback>
17994       </field>
17995       <field name="_gtk_reserved1" introspectable="0">
17996         <callback name="_gtk_reserved1">
17997           <return-value transfer-ownership="none">
17998             <type name="none" c:type="void"/>
17999           </return-value>
18000         </callback>
18001       </field>
18002       <field name="_gtk_reserved2" introspectable="0">
18003         <callback name="_gtk_reserved2">
18004           <return-value transfer-ownership="none">
18005             <type name="none" c:type="void"/>
18006           </return-value>
18007         </callback>
18008       </field>
18009       <field name="_gtk_reserved3" introspectable="0">
18010         <callback name="_gtk_reserved3">
18011           <return-value transfer-ownership="none">
18012             <type name="none" c:type="void"/>
18013           </return-value>
18014         </callback>
18015       </field>
18016       <field name="_gtk_reserved4" introspectable="0">
18017         <callback name="_gtk_reserved4">
18018           <return-value transfer-ownership="none">
18019             <type name="none" c:type="void"/>
18020           </return-value>
18021         </callback>
18022       </field>
18023       <field name="_gtk_reserved5" introspectable="0">
18024         <callback name="_gtk_reserved5">
18025           <return-value transfer-ownership="none">
18026             <type name="none" c:type="void"/>
18027           </return-value>
18028         </callback>
18029       </field>
18030     </record>
18031     <record name="EntryBufferPrivate"
18032             c:type="GtkEntryBufferPrivate"
18033             disguised="1">
18034     </record>
18035     <record name="EntryClass"
18036             c:type="GtkEntryClass"
18037             glib:is-gtype-struct-for="Entry">
18038       <field name="parent_class">
18039         <type name="WidgetClass" c:type="GtkWidgetClass"/>
18040       </field>
18041       <field name="populate_popup">
18042         <callback name="populate_popup">
18043           <return-value transfer-ownership="none">
18044             <type name="none" c:type="void"/>
18045           </return-value>
18046           <parameters>
18047             <parameter name="entry" transfer-ownership="none">
18048               <type name="Entry" c:type="GtkEntry*"/>
18049             </parameter>
18050             <parameter name="menu" transfer-ownership="none">
18051               <type name="Menu" c:type="GtkMenu*"/>
18052             </parameter>
18053           </parameters>
18054         </callback>
18055       </field>
18056       <field name="activate">
18057         <callback name="activate">
18058           <return-value transfer-ownership="none">
18059             <type name="none" c:type="void"/>
18060           </return-value>
18061           <parameters>
18062             <parameter name="entry" transfer-ownership="none">
18063               <type name="Entry" c:type="GtkEntry*"/>
18064             </parameter>
18065           </parameters>
18066         </callback>
18067       </field>
18068       <field name="move_cursor">
18069         <callback name="move_cursor">
18070           <return-value transfer-ownership="none">
18071             <type name="none" c:type="void"/>
18072           </return-value>
18073           <parameters>
18074             <parameter name="entry" transfer-ownership="none">
18075               <type name="Entry" c:type="GtkEntry*"/>
18076             </parameter>
18077             <parameter name="step" transfer-ownership="none">
18078               <type name="MovementStep" c:type="GtkMovementStep"/>
18079             </parameter>
18080             <parameter name="count" transfer-ownership="none">
18081               <type name="gint" c:type="gint"/>
18082             </parameter>
18083             <parameter name="extend_selection" transfer-ownership="none">
18084               <type name="gboolean" c:type="gboolean"/>
18085             </parameter>
18086           </parameters>
18087         </callback>
18088       </field>
18089       <field name="insert_at_cursor">
18090         <callback name="insert_at_cursor">
18091           <return-value transfer-ownership="none">
18092             <type name="none" c:type="void"/>
18093           </return-value>
18094           <parameters>
18095             <parameter name="entry" transfer-ownership="none">
18096               <type name="Entry" c:type="GtkEntry*"/>
18097             </parameter>
18098             <parameter name="str" transfer-ownership="none">
18099               <type name="utf8" c:type="gchar*"/>
18100             </parameter>
18101           </parameters>
18102         </callback>
18103       </field>
18104       <field name="delete_from_cursor">
18105         <callback name="delete_from_cursor">
18106           <return-value transfer-ownership="none">
18107             <type name="none" c:type="void"/>
18108           </return-value>
18109           <parameters>
18110             <parameter name="entry" transfer-ownership="none">
18111               <type name="Entry" c:type="GtkEntry*"/>
18112             </parameter>
18113             <parameter name="type" transfer-ownership="none">
18114               <type name="DeleteType" c:type="GtkDeleteType"/>
18115             </parameter>
18116             <parameter name="count" transfer-ownership="none">
18117               <type name="gint" c:type="gint"/>
18118             </parameter>
18119           </parameters>
18120         </callback>
18121       </field>
18122       <field name="backspace">
18123         <callback name="backspace">
18124           <return-value transfer-ownership="none">
18125             <type name="none" c:type="void"/>
18126           </return-value>
18127           <parameters>
18128             <parameter name="entry" transfer-ownership="none">
18129               <type name="Entry" c:type="GtkEntry*"/>
18130             </parameter>
18131           </parameters>
18132         </callback>
18133       </field>
18134       <field name="cut_clipboard">
18135         <callback name="cut_clipboard">
18136           <return-value transfer-ownership="none">
18137             <type name="none" c:type="void"/>
18138           </return-value>
18139           <parameters>
18140             <parameter name="entry" transfer-ownership="none">
18141               <type name="Entry" c:type="GtkEntry*"/>
18142             </parameter>
18143           </parameters>
18144         </callback>
18145       </field>
18146       <field name="copy_clipboard">
18147         <callback name="copy_clipboard">
18148           <return-value transfer-ownership="none">
18149             <type name="none" c:type="void"/>
18150           </return-value>
18151           <parameters>
18152             <parameter name="entry" transfer-ownership="none">
18153               <type name="Entry" c:type="GtkEntry*"/>
18154             </parameter>
18155           </parameters>
18156         </callback>
18157       </field>
18158       <field name="paste_clipboard">
18159         <callback name="paste_clipboard">
18160           <return-value transfer-ownership="none">
18161             <type name="none" c:type="void"/>
18162           </return-value>
18163           <parameters>
18164             <parameter name="entry" transfer-ownership="none">
18165               <type name="Entry" c:type="GtkEntry*"/>
18166             </parameter>
18167           </parameters>
18168         </callback>
18169       </field>
18170       <field name="toggle_overwrite">
18171         <callback name="toggle_overwrite">
18172           <return-value transfer-ownership="none">
18173             <type name="none" c:type="void"/>
18174           </return-value>
18175           <parameters>
18176             <parameter name="entry" transfer-ownership="none">
18177               <type name="Entry" c:type="GtkEntry*"/>
18178             </parameter>
18179           </parameters>
18180         </callback>
18181       </field>
18182       <field name="get_text_area_size">
18183         <callback name="get_text_area_size">
18184           <return-value transfer-ownership="none">
18185             <type name="none" c:type="void"/>
18186           </return-value>
18187           <parameters>
18188             <parameter name="entry" transfer-ownership="none">
18189               <type name="Entry" c:type="GtkEntry*"/>
18190             </parameter>
18191             <parameter name="x" transfer-ownership="none">
18192               <type name="gint" c:type="gint*"/>
18193             </parameter>
18194             <parameter name="y" transfer-ownership="none">
18195               <type name="gint" c:type="gint*"/>
18196             </parameter>
18197             <parameter name="width" transfer-ownership="none">
18198               <type name="gint" c:type="gint*"/>
18199             </parameter>
18200             <parameter name="height" transfer-ownership="none">
18201               <type name="gint" c:type="gint*"/>
18202             </parameter>
18203           </parameters>
18204         </callback>
18205       </field>
18206       <field name="_gtk_reserved1" introspectable="0">
18207         <callback name="_gtk_reserved1">
18208           <return-value transfer-ownership="none">
18209             <type name="none" c:type="void"/>
18210           </return-value>
18211         </callback>
18212       </field>
18213       <field name="_gtk_reserved2" introspectable="0">
18214         <callback name="_gtk_reserved2">
18215           <return-value transfer-ownership="none">
18216             <type name="none" c:type="void"/>
18217           </return-value>
18218         </callback>
18219       </field>
18220     </record>
18221     <class name="EntryCompletion"
18222            c:symbol-prefix="entry_completion"
18223            c:type="GtkEntryCompletion"
18224            parent="GObject.Object"
18225            glib:type-name="GtkEntryCompletion"
18226            glib:get-type="gtk_entry_completion_get_type"
18227            glib:type-struct="EntryCompletionClass">
18228       <implements name="Buildable"/>
18229       <implements name="CellLayout"/>
18230       <constructor name="new"
18231                    c:identifier="gtk_entry_completion_new"
18232                    version="2.4">
18233         <doc xml:whitespace="preserve">Creates a new #GtkEntryCompletion object.</doc>
18234         <return-value transfer-ownership="full">
18235           <doc xml:whitespace="preserve">A newly created #GtkEntryCompletion object.</doc>
18236           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18237         </return-value>
18238       </constructor>
18239       <method name="complete"
18240               c:identifier="gtk_entry_completion_complete"
18241               version="2.4">
18242         <doc xml:whitespace="preserve">Requests a completion operation, or in other words a refiltering of the
18243 current list with completions, using the current key. The completion list
18244 view will be updated accordingly.</doc>
18245         <return-value transfer-ownership="none">
18246           <type name="none" c:type="void"/>
18247         </return-value>
18248       </method>
18249       <method name="delete_action"
18250               c:identifier="gtk_entry_completion_delete_action"
18251               version="2.4">
18252         <doc xml:whitespace="preserve">Deletes the action at @index_ from @completion's action list.</doc>
18253         <return-value transfer-ownership="none">
18254           <type name="none" c:type="void"/>
18255         </return-value>
18256         <parameters>
18257           <parameter name="index_" transfer-ownership="none">
18258             <doc xml:whitespace="preserve">The index of the item to Delete.</doc>
18259             <type name="gint" c:type="gint"/>
18260           </parameter>
18261         </parameters>
18262       </method>
18263       <method name="get_completion_prefix"
18264               c:identifier="gtk_entry_completion_get_completion_prefix"
18265               version="2.12">
18266         <doc xml:whitespace="preserve">Get the original text entered by the user that triggered
18267 the completion or %NULL if there's no completion ongoing.</doc>
18268         <return-value transfer-ownership="none">
18269           <doc xml:whitespace="preserve">the prefix for the current completion</doc>
18270           <type name="utf8" c:type="gchar*"/>
18271         </return-value>
18272       </method>
18273       <method name="get_entry"
18274               c:identifier="gtk_entry_completion_get_entry"
18275               version="2.4">
18276         <doc xml:whitespace="preserve">Gets the entry @completion has been attached to.</doc>
18277         <return-value transfer-ownership="none">
18278           <doc xml:whitespace="preserve">The entry @completion has been attached to.</doc>
18279           <type name="Widget" c:type="GtkWidget*"/>
18280         </return-value>
18281       </method>
18282       <method name="get_inline_completion"
18283               c:identifier="gtk_entry_completion_get_inline_completion"
18284               version="2.6">
18285         <doc xml:whitespace="preserve">Returns whether the common prefix of the possible completions should
18286 be automatically inserted in the entry.</doc>
18287         <return-value transfer-ownership="none">
18288           <doc xml:whitespace="preserve">%TRUE if inline completion is turned on</doc>
18289           <type name="gboolean" c:type="gboolean"/>
18290         </return-value>
18291       </method>
18292       <method name="get_inline_selection"
18293               c:identifier="gtk_entry_completion_get_inline_selection"
18294               version="2.12">
18295         <doc xml:whitespace="preserve">Returns %TRUE if inline-selection mode is turned on.</doc>
18296         <return-value transfer-ownership="none">
18297           <doc xml:whitespace="preserve">%TRUE if inline-selection mode is on</doc>
18298           <type name="gboolean" c:type="gboolean"/>
18299         </return-value>
18300       </method>
18301       <method name="get_minimum_key_length"
18302               c:identifier="gtk_entry_completion_get_minimum_key_length"
18303               version="2.4">
18304         <doc xml:whitespace="preserve">Returns the minimum key length as set for @completion.</doc>
18305         <return-value transfer-ownership="none">
18306           <doc xml:whitespace="preserve">The currently used minimum key length.</doc>
18307           <type name="gint" c:type="gint"/>
18308         </return-value>
18309       </method>
18310       <method name="get_model"
18311               c:identifier="gtk_entry_completion_get_model"
18312               version="2.4">
18313         <doc xml:whitespace="preserve">Returns the model the #GtkEntryCompletion is using as data source.
18314 Returns %NULL if the model is unset.
18315 is currently being used.</doc>
18316         <return-value transfer-ownership="none">
18317           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none</doc>
18318           <type name="TreeModel" c:type="GtkTreeModel*"/>
18319         </return-value>
18320       </method>
18321       <method name="get_popup_completion"
18322               c:identifier="gtk_entry_completion_get_popup_completion"
18323               version="2.6">
18324         <doc xml:whitespace="preserve">Returns whether the completions should be presented in a popup window.</doc>
18325         <return-value transfer-ownership="none">
18326           <doc xml:whitespace="preserve">%TRUE if popup completion is turned on</doc>
18327           <type name="gboolean" c:type="gboolean"/>
18328         </return-value>
18329       </method>
18330       <method name="get_popup_set_width"
18331               c:identifier="gtk_entry_completion_get_popup_set_width"
18332               version="2.8">
18333         <doc xml:whitespace="preserve">Returns whether the  completion popup window will be resized to the 
18334 width of the entry.
18335 the entry</doc>
18336         <return-value transfer-ownership="none">
18337           <doc xml:whitespace="preserve">%TRUE if the popup window will be resized to the width of</doc>
18338           <type name="gboolean" c:type="gboolean"/>
18339         </return-value>
18340       </method>
18341       <method name="get_popup_single_match"
18342               c:identifier="gtk_entry_completion_get_popup_single_match"
18343               version="2.8">
18344         <doc xml:whitespace="preserve">Returns whether the completion popup window will appear even if there is
18345 only a single match. 
18346 number of matches.</doc>
18347         <return-value transfer-ownership="none">
18348           <doc xml:whitespace="preserve">%TRUE if the popup window will appear regardless of the</doc>
18349           <type name="gboolean" c:type="gboolean"/>
18350         </return-value>
18351       </method>
18352       <method name="get_text_column"
18353               c:identifier="gtk_entry_completion_get_text_column"
18354               version="2.6">
18355         <doc xml:whitespace="preserve">Returns the column in the model of @completion to get strings from.</doc>
18356         <return-value transfer-ownership="none">
18357           <doc xml:whitespace="preserve">the column containing the strings</doc>
18358           <type name="gint" c:type="gint"/>
18359         </return-value>
18360       </method>
18361       <method name="insert_action_markup"
18362               c:identifier="gtk_entry_completion_insert_action_markup"
18363               version="2.4">
18364         <doc xml:whitespace="preserve">Inserts an action in @completion's action item list at position @index_
18365 with markup @markup.</doc>
18366         <return-value transfer-ownership="none">
18367           <type name="none" c:type="void"/>
18368         </return-value>
18369         <parameters>
18370           <parameter name="index_" transfer-ownership="none">
18371             <doc xml:whitespace="preserve">The index of the item to insert.</doc>
18372             <type name="gint" c:type="gint"/>
18373           </parameter>
18374           <parameter name="markup" transfer-ownership="none">
18375             <doc xml:whitespace="preserve">Markup of the item to insert.</doc>
18376             <type name="utf8" c:type="gchar*"/>
18377           </parameter>
18378         </parameters>
18379       </method>
18380       <method name="insert_action_text"
18381               c:identifier="gtk_entry_completion_insert_action_text"
18382               version="2.4">
18383         <doc xml:whitespace="preserve">Inserts an action in @completion's action item list at position @index_
18384 with text @text. If you want the action item to have markup, use
18385 gtk_entry_completion_insert_action_markup().</doc>
18386         <return-value transfer-ownership="none">
18387           <type name="none" c:type="void"/>
18388         </return-value>
18389         <parameters>
18390           <parameter name="index_" transfer-ownership="none">
18391             <doc xml:whitespace="preserve">The index of the item to insert.</doc>
18392             <type name="gint" c:type="gint"/>
18393           </parameter>
18394           <parameter name="text" transfer-ownership="none">
18395             <doc xml:whitespace="preserve">Text of the item to insert.</doc>
18396             <type name="utf8" c:type="gchar*"/>
18397           </parameter>
18398         </parameters>
18399       </method>
18400       <method name="insert_prefix"
18401               c:identifier="gtk_entry_completion_insert_prefix"
18402               version="2.6">
18403         <doc xml:whitespace="preserve">Requests a prefix insertion.</doc>
18404         <return-value transfer-ownership="none">
18405           <type name="none" c:type="void"/>
18406         </return-value>
18407       </method>
18408       <method name="set_inline_completion"
18409               c:identifier="gtk_entry_completion_set_inline_completion"
18410               version="2.6">
18411         <doc xml:whitespace="preserve">Sets whether the common prefix of the possible completions should
18412 be automatically inserted in the entry.</doc>
18413         <return-value transfer-ownership="none">
18414           <type name="none" c:type="void"/>
18415         </return-value>
18416         <parameters>
18417           <parameter name="inline_completion" transfer-ownership="none">
18418             <doc xml:whitespace="preserve">%TRUE to do inline completion</doc>
18419             <type name="gboolean" c:type="gboolean"/>
18420           </parameter>
18421         </parameters>
18422       </method>
18423       <method name="set_inline_selection"
18424               c:identifier="gtk_entry_completion_set_inline_selection"
18425               version="2.12">
18426         <doc xml:whitespace="preserve">Sets whether it is possible to cycle through the possible completions
18427 inside the entry.</doc>
18428         <return-value transfer-ownership="none">
18429           <type name="none" c:type="void"/>
18430         </return-value>
18431         <parameters>
18432           <parameter name="inline_selection" transfer-ownership="none">
18433             <doc xml:whitespace="preserve">%TRUE to do inline selection</doc>
18434             <type name="gboolean" c:type="gboolean"/>
18435           </parameter>
18436         </parameters>
18437       </method>
18438       <method name="set_match_func"
18439               c:identifier="gtk_entry_completion_set_match_func"
18440               version="2.4">
18441         <doc xml:whitespace="preserve">Sets the match function for @completion to be @func. The match function
18442 is used to determine if a row should or should not be in the completion
18443 list.</doc>
18444         <return-value transfer-ownership="none">
18445           <type name="none" c:type="void"/>
18446         </return-value>
18447         <parameters>
18448           <parameter name="func"
18449                      transfer-ownership="none"
18450                      scope="notified"
18451                      closure="1"
18452                      destroy="2">
18453             <doc xml:whitespace="preserve">The #GtkEntryCompletionMatchFunc to use.</doc>
18454             <type name="EntryCompletionMatchFunc"
18455                   c:type="GtkEntryCompletionMatchFunc"/>
18456           </parameter>
18457           <parameter name="func_data" transfer-ownership="none">
18458             <doc xml:whitespace="preserve">The user data for @func.</doc>
18459             <type name="gpointer" c:type="gpointer"/>
18460           </parameter>
18461           <parameter name="func_notify"
18462                      transfer-ownership="none"
18463                      scope="async">
18464             <doc xml:whitespace="preserve">Destroy notifier for @func_data.</doc>
18465             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
18466           </parameter>
18467         </parameters>
18468       </method>
18469       <method name="set_minimum_key_length"
18470               c:identifier="gtk_entry_completion_set_minimum_key_length"
18471               version="2.4">
18472         <doc xml:whitespace="preserve">Requires the length of the search key for @completion to be at least
18473 key takes a lot of time and will come up with meaningless results anyway
18474 (ie, a too large dataset).</doc>
18475         <return-value transfer-ownership="none">
18476           <type name="none" c:type="void"/>
18477         </return-value>
18478         <parameters>
18479           <parameter name="length" transfer-ownership="none">
18480             <doc xml:whitespace="preserve">The minimum length of the key in order to start completing.</doc>
18481             <type name="gint" c:type="gint"/>
18482           </parameter>
18483         </parameters>
18484       </method>
18485       <method name="set_model"
18486               c:identifier="gtk_entry_completion_set_model"
18487               version="2.4">
18488         <doc xml:whitespace="preserve">Sets the model for a #GtkEntryCompletion. If @completion already has
18489 a model set, it will remove it before setting the new model.
18490 If model is %NULL, then it will unset the model.</doc>
18491         <return-value transfer-ownership="none">
18492           <type name="none" c:type="void"/>
18493         </return-value>
18494         <parameters>
18495           <parameter name="model" transfer-ownership="none" allow-none="1">
18496             <doc xml:whitespace="preserve">The #GtkTreeModel.</doc>
18497             <type name="TreeModel" c:type="GtkTreeModel*"/>
18498           </parameter>
18499         </parameters>
18500       </method>
18501       <method name="set_popup_completion"
18502               c:identifier="gtk_entry_completion_set_popup_completion"
18503               version="2.6">
18504         <doc xml:whitespace="preserve">Sets whether the completions should be presented in a popup window.</doc>
18505         <return-value transfer-ownership="none">
18506           <type name="none" c:type="void"/>
18507         </return-value>
18508         <parameters>
18509           <parameter name="popup_completion" transfer-ownership="none">
18510             <doc xml:whitespace="preserve">%TRUE to do popup completion</doc>
18511             <type name="gboolean" c:type="gboolean"/>
18512           </parameter>
18513         </parameters>
18514       </method>
18515       <method name="set_popup_set_width"
18516               c:identifier="gtk_entry_completion_set_popup_set_width"
18517               version="2.8">
18518         <doc xml:whitespace="preserve">Sets whether the completion popup window will be resized to be the same
18519 width as the entry.</doc>
18520         <return-value transfer-ownership="none">
18521           <type name="none" c:type="void"/>
18522         </return-value>
18523         <parameters>
18524           <parameter name="popup_set_width" transfer-ownership="none">
18525             <doc xml:whitespace="preserve">%TRUE to make the width of the popup the same as the entry</doc>
18526             <type name="gboolean" c:type="gboolean"/>
18527           </parameter>
18528         </parameters>
18529       </method>
18530       <method name="set_popup_single_match"
18531               c:identifier="gtk_entry_completion_set_popup_single_match"
18532               version="2.8">
18533         <doc xml:whitespace="preserve">Sets whether the completion popup window will appear even if there is
18534 only a single match. You may want to set this to %FALSE if you
18535 are using &lt;link linkend="GtkEntryCompletion--inline-completion"&gt;inline
18536 completion&lt;/link&gt;.</doc>
18537         <return-value transfer-ownership="none">
18538           <type name="none" c:type="void"/>
18539         </return-value>
18540         <parameters>
18541           <parameter name="popup_single_match" transfer-ownership="none">
18542             <doc xml:whitespace="preserve">%TRUE if the popup should appear even for a single match</doc>
18543             <type name="gboolean" c:type="gboolean"/>
18544           </parameter>
18545         </parameters>
18546       </method>
18547       <method name="set_text_column"
18548               c:identifier="gtk_entry_completion_set_text_column"
18549               version="2.4">
18550         <doc xml:whitespace="preserve">completion list with just strings. This function will set up @completion
18551 to have a list displaying all (and just) strings in the completion list,
18552 and to get those strings from @column in the model of @completion.
18553 This functions creates and adds a #GtkCellRendererText for the selected 
18554 column. If you need to set the text column, but don't want the cell 
18555 renderer, use g_object_set() to set the ::text_column property directly.</doc>
18556         <return-value transfer-ownership="none">
18557           <type name="none" c:type="void"/>
18558         </return-value>
18559         <parameters>
18560           <parameter name="column" transfer-ownership="none">
18561             <doc xml:whitespace="preserve">The column in the model of @completion to get strings from.</doc>
18562             <type name="gint" c:type="gint"/>
18563           </parameter>
18564         </parameters>
18565       </method>
18566       <property name="inline-completion"
18567                 version="2.6"
18568                 writable="1"
18569                 transfer-ownership="none">
18570         <doc xml:whitespace="preserve">Determines whether the common prefix of the possible completions 
18571 should be inserted automatically in the entry. Note that this
18572 requires text-column to be set, even if you are using a custom
18573 match function.</doc>
18574         <type name="gboolean"/>
18575       </property>
18576       <property name="inline-selection"
18577                 version="2.12"
18578                 writable="1"
18579                 transfer-ownership="none">
18580         <doc xml:whitespace="preserve">Determines whether the possible completions on the popup
18581 will appear in the entry as you navigate through them.</doc>
18582         <type name="gboolean"/>
18583       </property>
18584       <property name="minimum-key-length"
18585                 writable="1"
18586                 transfer-ownership="none">
18587         <type name="gint"/>
18588       </property>
18589       <property name="model" writable="1" transfer-ownership="none">
18590         <type name="TreeModel"/>
18591       </property>
18592       <property name="popup-completion"
18593                 version="2.6"
18594                 writable="1"
18595                 transfer-ownership="none">
18596         <doc xml:whitespace="preserve">Determines whether the possible completions should be 
18597 shown in a popup window.</doc>
18598         <type name="gboolean"/>
18599       </property>
18600       <property name="popup-set-width"
18601                 version="2.8"
18602                 writable="1"
18603                 transfer-ownership="none">
18604         <doc xml:whitespace="preserve">Determines whether the completions popup window will be
18605 resized to the width of the entry.</doc>
18606         <type name="gboolean"/>
18607       </property>
18608       <property name="popup-single-match"
18609                 version="2.8"
18610                 writable="1"
18611                 transfer-ownership="none">
18612         <doc xml:whitespace="preserve">Determines whether the completions popup window will shown
18613 for a single possible completion. You probably want to set
18614 this to %FALSE if you are using 
18615 &lt;link linkend="GtkEntryCompletion--inline-completion"&gt;inline 
18616 completion&lt;/link&gt;.</doc>
18617         <type name="gboolean"/>
18618       </property>
18619       <property name="text-column"
18620                 version="2.6"
18621                 writable="1"
18622                 transfer-ownership="none">
18623         <doc xml:whitespace="preserve">The column of the model containing the strings.
18624 Note that the strings must be UTF-8.</doc>
18625         <type name="gint"/>
18626       </property>
18627       <field name="parent_instance">
18628         <type name="GObject.Object" c:type="GObject"/>
18629       </field>
18630       <field name="priv">
18631         <type name="EntryCompletionPrivate"
18632               c:type="GtkEntryCompletionPrivate*"/>
18633       </field>
18634       <glib:signal name="action-activated" version="2.4">
18635         <doc xml:whitespace="preserve">Gets emitted when an action is activated.</doc>
18636         <return-value transfer-ownership="none">
18637           <type name="none"/>
18638         </return-value>
18639         <parameters>
18640           <parameter name="object" transfer-ownership="none">
18641             <doc xml:whitespace="preserve">the index of the activated action</doc>
18642             <type name="gint"/>
18643           </parameter>
18644         </parameters>
18645       </glib:signal>
18646       <glib:signal name="cursor-on-match" version="2.12">
18647         <doc xml:whitespace="preserve">Gets emitted when a match from the cursor is on a match
18648 of the list. The default behaviour is to replace the contents
18649 of the entry with the contents of the text column in the row
18650 pointed to by @iter.</doc>
18651         <return-value transfer-ownership="none">
18652           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
18653           <type name="gboolean"/>
18654         </return-value>
18655         <parameters>
18656           <parameter name="object" transfer-ownership="none">
18657             <doc xml:whitespace="preserve">the #GtkTreeModel containing the matches</doc>
18658             <type name="TreeModel"/>
18659           </parameter>
18660           <parameter name="p0" transfer-ownership="none">
18661             <doc xml:whitespace="preserve">a #GtkTreeIter positioned at the selected match</doc>
18662             <type name="TreeIter"/>
18663           </parameter>
18664         </parameters>
18665       </glib:signal>
18666       <glib:signal name="insert-prefix" version="2.6">
18667         <doc xml:whitespace="preserve">Gets emitted when the inline autocompletion is triggered.
18668 The default behaviour is to make the entry display the
18669 whole prefix and select the newly inserted part.
18670 Applications may connect to this signal in order to insert only a
18671 smaller part of the @prefix into the entry - e.g. the entry used in
18672 the #GtkFileChooser inserts only the part of the prefix up to the
18673 next '/'.</doc>
18674         <return-value transfer-ownership="none">
18675           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
18676           <type name="gboolean"/>
18677         </return-value>
18678         <parameters>
18679           <parameter name="object" transfer-ownership="none">
18680             <doc xml:whitespace="preserve">the common prefix of all possible completions</doc>
18681             <type name="utf8"/>
18682           </parameter>
18683         </parameters>
18684       </glib:signal>
18685       <glib:signal name="match-selected" version="2.4">
18686         <doc xml:whitespace="preserve">Gets emitted when a match from the list is selected.
18687 The default behaviour is to replace the contents of the
18688 entry with the contents of the text column in the row
18689 pointed to by @iter.</doc>
18690         <return-value transfer-ownership="none">
18691           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
18692           <type name="gboolean"/>
18693         </return-value>
18694         <parameters>
18695           <parameter name="object" transfer-ownership="none">
18696             <doc xml:whitespace="preserve">the #GtkTreeModel containing the matches</doc>
18697             <type name="TreeModel"/>
18698           </parameter>
18699           <parameter name="p0" transfer-ownership="none">
18700             <doc xml:whitespace="preserve">a #GtkTreeIter positioned at the selected match</doc>
18701             <type name="TreeIter"/>
18702           </parameter>
18703         </parameters>
18704       </glib:signal>
18705     </class>
18706     <record name="EntryCompletionClass"
18707             c:type="GtkEntryCompletionClass"
18708             glib:is-gtype-struct-for="EntryCompletion">
18709       <field name="parent_class">
18710         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
18711       </field>
18712       <field name="match_selected">
18713         <callback name="match_selected">
18714           <return-value transfer-ownership="none">
18715             <type name="gboolean" c:type="gboolean"/>
18716           </return-value>
18717           <parameters>
18718             <parameter name="completion" transfer-ownership="none">
18719               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18720             </parameter>
18721             <parameter name="model" transfer-ownership="none">
18722               <type name="TreeModel" c:type="GtkTreeModel*"/>
18723             </parameter>
18724             <parameter name="iter" transfer-ownership="none">
18725               <type name="TreeIter" c:type="GtkTreeIter*"/>
18726             </parameter>
18727           </parameters>
18728         </callback>
18729       </field>
18730       <field name="action_activated">
18731         <callback name="action_activated">
18732           <return-value transfer-ownership="none">
18733             <type name="none" c:type="void"/>
18734           </return-value>
18735           <parameters>
18736             <parameter name="completion" transfer-ownership="none">
18737               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18738             </parameter>
18739             <parameter name="index_" transfer-ownership="none">
18740               <type name="gint" c:type="gint"/>
18741             </parameter>
18742           </parameters>
18743         </callback>
18744       </field>
18745       <field name="insert_prefix">
18746         <callback name="insert_prefix">
18747           <return-value transfer-ownership="none">
18748             <type name="gboolean" c:type="gboolean"/>
18749           </return-value>
18750           <parameters>
18751             <parameter name="completion" transfer-ownership="none">
18752               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18753             </parameter>
18754             <parameter name="prefix" transfer-ownership="none">
18755               <type name="utf8" c:type="gchar*"/>
18756             </parameter>
18757           </parameters>
18758         </callback>
18759       </field>
18760       <field name="cursor_on_match">
18761         <callback name="cursor_on_match">
18762           <return-value transfer-ownership="none">
18763             <type name="gboolean" c:type="gboolean"/>
18764           </return-value>
18765           <parameters>
18766             <parameter name="completion" transfer-ownership="none">
18767               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18768             </parameter>
18769             <parameter name="model" transfer-ownership="none">
18770               <type name="TreeModel" c:type="GtkTreeModel*"/>
18771             </parameter>
18772             <parameter name="iter" transfer-ownership="none">
18773               <type name="TreeIter" c:type="GtkTreeIter*"/>
18774             </parameter>
18775           </parameters>
18776         </callback>
18777       </field>
18778       <field name="_gtk_reserved0" introspectable="0">
18779         <callback name="_gtk_reserved0">
18780           <return-value transfer-ownership="none">
18781             <type name="none" c:type="void"/>
18782           </return-value>
18783         </callback>
18784       </field>
18785       <field name="_gtk_reserved1" introspectable="0">
18786         <callback name="_gtk_reserved1">
18787           <return-value transfer-ownership="none">
18788             <type name="none" c:type="void"/>
18789           </return-value>
18790         </callback>
18791       </field>
18792     </record>
18793     <callback name="EntryCompletionMatchFunc"
18794               c:type="GtkEntryCompletionMatchFunc">
18795       <return-value transfer-ownership="none">
18796         <type name="gboolean" c:type="gboolean"/>
18797       </return-value>
18798       <parameters>
18799         <parameter name="completion" transfer-ownership="none">
18800           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
18801         </parameter>
18802         <parameter name="key" transfer-ownership="none">
18803           <type name="utf8" c:type="gchar*"/>
18804         </parameter>
18805         <parameter name="iter" transfer-ownership="none">
18806           <type name="TreeIter" c:type="GtkTreeIter*"/>
18807         </parameter>
18808         <parameter name="user_data" transfer-ownership="none" closure="3">
18809           <type name="gpointer" c:type="gpointer"/>
18810         </parameter>
18811       </parameters>
18812     </callback>
18813     <record name="EntryCompletionPrivate"
18814             c:type="GtkEntryCompletionPrivate"
18815             disguised="1">
18816     </record>
18817     <enumeration name="EntryIconPosition"
18818                  glib:type-name="GtkEntryIconPosition"
18819                  glib:get-type="gtk_entry_icon_position_get_type"
18820                  c:type="GtkEntryIconPosition">
18821       <member name="primary"
18822               value="0"
18823               c:identifier="GTK_ENTRY_ICON_PRIMARY"
18824               glib:nick="primary"/>
18825       <member name="secondary"
18826               value="1"
18827               c:identifier="GTK_ENTRY_ICON_SECONDARY"
18828               glib:nick="secondary"/>
18829     </enumeration>
18830     <class name="EventBox"
18831            c:symbol-prefix="event_box"
18832            c:type="GtkEventBox"
18833            parent="Bin"
18834            glib:type-name="GtkEventBox"
18835            glib:get-type="gtk_event_box_get_type"
18836            glib:type-struct="EventBoxClass">
18837       <implements name="Atk.ImplementorIface"/>
18838       <implements name="Buildable"/>
18839       <implements name="SizeRequest"/>
18840       <constructor name="new" c:identifier="gtk_event_box_new">
18841         <return-value transfer-ownership="none">
18842           <type name="Widget" c:type="GtkWidget*"/>
18843         </return-value>
18844       </constructor>
18845       <method name="get_above_child"
18846               c:identifier="gtk_event_box_get_above_child"
18847               version="2.4">
18848         <doc xml:whitespace="preserve">Returns whether the event box window is above or below the
18849 windows of its child. See gtk_event_box_set_above_child() for
18850 details.
18851 of its child.</doc>
18852         <return-value transfer-ownership="none">
18853           <doc xml:whitespace="preserve">%TRUE if the event box window is above the window</doc>
18854           <type name="gboolean" c:type="gboolean"/>
18855         </return-value>
18856       </method>
18857       <method name="get_visible_window"
18858               c:identifier="gtk_event_box_get_visible_window"
18859               version="2.4">
18860         <doc xml:whitespace="preserve">Returns whether the event box has a visible window.
18861 See gtk_event_box_set_visible_window() for details.</doc>
18862         <return-value transfer-ownership="none">
18863           <doc xml:whitespace="preserve">%TRUE if the event box window is visible</doc>
18864           <type name="gboolean" c:type="gboolean"/>
18865         </return-value>
18866       </method>
18867       <method name="set_above_child"
18868               c:identifier="gtk_event_box_set_above_child"
18869               version="2.4">
18870         <doc xml:whitespace="preserve">Set whether the event box window is positioned above the windows of its child,
18871 as opposed to below it. If the window is above, all events inside the
18872 event box will go to the event box. If the window is below, events
18873 in windows of child widgets will first got to that widget, and then
18874 to its parents.
18875 The default is to keep the window below the child.</doc>
18876         <return-value transfer-ownership="none">
18877           <type name="none" c:type="void"/>
18878         </return-value>
18879         <parameters>
18880           <parameter name="above_child" transfer-ownership="none">
18881             <doc xml:whitespace="preserve">%TRUE if the event box window is above the windows of its child</doc>
18882             <type name="gboolean" c:type="gboolean"/>
18883           </parameter>
18884         </parameters>
18885       </method>
18886       <method name="set_visible_window"
18887               c:identifier="gtk_event_box_set_visible_window"
18888               version="2.4">
18889         <doc xml:whitespace="preserve">Set whether the event box uses a visible or invisible child
18890 window. The default is to use visible windows.
18891 In an invisible window event box, the window that the
18892 event box creates is a %GDK_INPUT_ONLY window, which 
18893 means that it is invisible and only serves to receive
18894 events.
18895 A visible window event box creates a visible (%GDK_INPUT_OUTPUT)
18896 window that acts as the parent window for all the widgets  
18897 contained in the event box.
18898 You should generally make your event box invisible if
18899 you just want to trap events. Creating a visible window
18900 may cause artifacts that are visible to the user, especially
18901 if the user is using a theme with gradients or pixmaps.
18902 The main reason to create a non input-only event box is if
18903 you want to set the background to a different color or
18904 draw on it.
18905 &lt;note&gt;&lt;para&gt;
18906 There is one unexpected issue for an invisible event box that has its
18907 window below the child. (See gtk_event_box_set_above_child().)
18908 Since the input-only window is not an ancestor window of any windows
18909 that descendent widgets of the event box create, events on these 
18910 windows aren't propagated up by the windowing system, but only by GTK+.
18911 The practical effect of this is if an event isn't in the event
18912 mask for the descendant window (see gtk_widget_add_events()),  
18913 it won't be received by the event box. 
18914 &lt;/para&gt;&lt;para&gt;
18915 This problem doesn't occur for visible event boxes, because in
18916 that case, the event box window is actually the ancestor of the
18917 descendant windows, not just at the same place on the screen.
18918 &lt;/para&gt;&lt;/note&gt;</doc>
18919         <return-value transfer-ownership="none">
18920           <type name="none" c:type="void"/>
18921         </return-value>
18922         <parameters>
18923           <parameter name="visible_window" transfer-ownership="none">
18924             <doc xml:whitespace="preserve">boolean value</doc>
18925             <type name="gboolean" c:type="gboolean"/>
18926           </parameter>
18927         </parameters>
18928       </method>
18929       <property name="above-child" writable="1" transfer-ownership="none">
18930         <type name="gboolean"/>
18931       </property>
18932       <property name="visible-window" writable="1" transfer-ownership="none">
18933         <type name="gboolean"/>
18934       </property>
18935       <field name="bin">
18936         <type name="Bin" c:type="GtkBin"/>
18937       </field>
18938     </class>
18939     <record name="EventBoxClass"
18940             c:type="GtkEventBoxClass"
18941             glib:is-gtype-struct-for="EventBox">
18942       <field name="parent_class">
18943         <type name="BinClass" c:type="GtkBinClass"/>
18944       </field>
18945     </record>
18946     <class name="Expander"
18947            c:symbol-prefix="expander"
18948            c:type="GtkExpander"
18949            parent="Bin"
18950            glib:type-name="GtkExpander"
18951            glib:get-type="gtk_expander_get_type"
18952            glib:type-struct="ExpanderClass">
18953       <implements name="Atk.ImplementorIface"/>
18954       <implements name="Buildable"/>
18955       <implements name="SizeRequest"/>
18956       <constructor name="new" c:identifier="gtk_expander_new" version="2.4">
18957         <doc xml:whitespace="preserve">Creates a new expander using @label as the text of the label.</doc>
18958         <return-value transfer-ownership="none">
18959           <doc xml:whitespace="preserve">a new #GtkExpander widget.</doc>
18960           <type name="Widget" c:type="GtkWidget*"/>
18961         </return-value>
18962         <parameters>
18963           <parameter name="label" transfer-ownership="none">
18964             <doc xml:whitespace="preserve">the text of the label</doc>
18965             <type name="utf8" c:type="gchar*"/>
18966           </parameter>
18967         </parameters>
18968       </constructor>
18969       <constructor name="new_with_mnemonic"
18970                    c:identifier="gtk_expander_new_with_mnemonic"
18971                    version="2.4">
18972         <doc xml:whitespace="preserve">Creates a new expander using @label as the text of the label.
18973 If characters in @label are preceded by an underscore, they are underlined.
18974 If you need a literal underscore character in a label, use '__' (two 
18975 underscores). The first underlined character represents a keyboard 
18976 accelerator called a mnemonic.
18977 Pressing Alt and that key activates the button.</doc>
18978         <return-value transfer-ownership="none">
18979           <doc xml:whitespace="preserve">a new #GtkExpander widget.</doc>
18980           <type name="Widget" c:type="GtkWidget*"/>
18981         </return-value>
18982         <parameters>
18983           <parameter name="label" transfer-ownership="none" allow-none="1">
18984             <doc xml:whitespace="preserve">the text of the label with an underscore in front of the mnemonic character</doc>
18985             <type name="utf8" c:type="gchar*"/>
18986           </parameter>
18987         </parameters>
18988       </constructor>
18989       <method name="get_expanded"
18990               c:identifier="gtk_expander_get_expanded"
18991               version="2.4">
18992         <doc xml:whitespace="preserve">Queries a #GtkExpander and returns its current state. Returns %TRUE
18993 if the child widget is revealed.
18994 See gtk_expander_set_expanded().</doc>
18995         <return-value transfer-ownership="none">
18996           <doc xml:whitespace="preserve">the current state of the expander.</doc>
18997           <type name="gboolean" c:type="gboolean"/>
18998         </return-value>
18999       </method>
19000       <method name="get_label"
19001               c:identifier="gtk_expander_get_label"
19002               version="2.4">
19003         <doc xml:whitespace="preserve">Fetches the text from a label widget including any embedded
19004 underlines indicating mnemonics and Pango markup, as set by
19005 gtk_expander_set_label(). If the label text has not been set the
19006 return value will be %NULL. This will be the case if you create an
19007 empty button with gtk_button_new() to use as a container.
19008 Note that this function behaved differently in versions prior to
19009 2.14 and used to return the label text stripped of embedded
19010 underlines indicating mnemonics and Pango markup. This problem can
19011 be avoided by fetching the label text directly from the label
19012 widget.
19013 by the widget and must not be modified or freed.</doc>
19014         <return-value transfer-ownership="none">
19015           <doc xml:whitespace="preserve">The text of the label widget. This string is owned</doc>
19016           <type name="utf8" c:type="gchar*"/>
19017         </return-value>
19018       </method>
19019       <method name="get_label_fill"
19020               c:identifier="gtk_expander_get_label_fill"
19021               version="2.22">
19022         <doc xml:whitespace="preserve">Returns whether the label widget will fill all available horizontal
19023 space allocated to @expander.
19024 space</doc>
19025         <return-value transfer-ownership="none">
19026           <doc xml:whitespace="preserve">%TRUE if the label widget will fill all available horizontal</doc>
19027           <type name="gboolean" c:type="gboolean"/>
19028         </return-value>
19029       </method>
19030       <method name="get_label_widget"
19031               c:identifier="gtk_expander_get_label_widget"
19032               version="2.4">
19033         <doc xml:whitespace="preserve">Retrieves the label widget for the frame. See
19034 gtk_expander_set_label_widget().
19035 or %NULL if there is none.</doc>
19036         <return-value transfer-ownership="none">
19037           <doc xml:whitespace="preserve">the label widget,</doc>
19038           <type name="Widget" c:type="GtkWidget*"/>
19039         </return-value>
19040       </method>
19041       <method name="get_spacing"
19042               c:identifier="gtk_expander_get_spacing"
19043               version="2.4">
19044         <doc xml:whitespace="preserve">Gets the value set by gtk_expander_set_spacing().</doc>
19045         <return-value transfer-ownership="none">
19046           <doc xml:whitespace="preserve">spacing between the expander and child.</doc>
19047           <type name="gint" c:type="gint"/>
19048         </return-value>
19049       </method>
19050       <method name="get_use_markup"
19051               c:identifier="gtk_expander_get_use_markup"
19052               version="2.4">
19053         <doc xml:whitespace="preserve">Returns whether the label's text is interpreted as marked up with
19054 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
19055 language&lt;/link&gt;. See gtk_expander_set_use_markup ().</doc>
19056         <return-value transfer-ownership="none">
19057           <doc xml:whitespace="preserve">%TRUE if the label's text will be parsed for markup</doc>
19058           <type name="gboolean" c:type="gboolean"/>
19059         </return-value>
19060       </method>
19061       <method name="get_use_underline"
19062               c:identifier="gtk_expander_get_use_underline"
19063               version="2.4">
19064         <doc xml:whitespace="preserve">Returns whether an embedded underline in the expander label indicates a
19065 mnemonic. See gtk_expander_set_use_underline().
19066 indicates the mnemonic accelerator keys.</doc>
19067         <return-value transfer-ownership="none">
19068           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the expander label</doc>
19069           <type name="gboolean" c:type="gboolean"/>
19070         </return-value>
19071       </method>
19072       <method name="set_expanded"
19073               c:identifier="gtk_expander_set_expanded"
19074               version="2.4">
19075         <doc xml:whitespace="preserve">Sets the state of the expander. Set to %TRUE, if you want
19076 the child widget to be revealed, and %FALSE if you want the
19077 child widget to be hidden.</doc>
19078         <return-value transfer-ownership="none">
19079           <type name="none" c:type="void"/>
19080         </return-value>
19081         <parameters>
19082           <parameter name="expanded" transfer-ownership="none">
19083             <doc xml:whitespace="preserve">whether the child widget is revealed</doc>
19084             <type name="gboolean" c:type="gboolean"/>
19085           </parameter>
19086         </parameters>
19087       </method>
19088       <method name="set_label"
19089               c:identifier="gtk_expander_set_label"
19090               version="2.4">
19091         <doc xml:whitespace="preserve">Sets the text of the label of the expander to @label.
19092 This will also clear any previously set labels.</doc>
19093         <return-value transfer-ownership="none">
19094           <type name="none" c:type="void"/>
19095         </return-value>
19096         <parameters>
19097           <parameter name="label" transfer-ownership="none" allow-none="1">
19098             <doc xml:whitespace="preserve">a string</doc>
19099             <type name="utf8" c:type="gchar*"/>
19100           </parameter>
19101         </parameters>
19102       </method>
19103       <method name="set_label_fill"
19104               c:identifier="gtk_expander_set_label_fill"
19105               version="2.22">
19106         <doc xml:whitespace="preserve">Sets whether the label widget should fill all available horizontal space
19107 allocated to @expander.</doc>
19108         <return-value transfer-ownership="none">
19109           <type name="none" c:type="void"/>
19110         </return-value>
19111         <parameters>
19112           <parameter name="label_fill" transfer-ownership="none">
19113             <doc xml:whitespace="preserve">%TRUE if the label should should fill all available horizontal space</doc>
19114             <type name="gboolean" c:type="gboolean"/>
19115           </parameter>
19116         </parameters>
19117       </method>
19118       <method name="set_label_widget"
19119               c:identifier="gtk_expander_set_label_widget"
19120               version="2.4">
19121         <doc xml:whitespace="preserve">Set the label widget for the expander. This is the widget
19122 that will appear embedded alongside the expander arrow.</doc>
19123         <return-value transfer-ownership="none">
19124           <type name="none" c:type="void"/>
19125         </return-value>
19126         <parameters>
19127           <parameter name="label_widget"
19128                      transfer-ownership="none"
19129                      allow-none="1">
19130             <doc xml:whitespace="preserve">the new label widget</doc>
19131             <type name="Widget" c:type="GtkWidget*"/>
19132           </parameter>
19133         </parameters>
19134       </method>
19135       <method name="set_spacing"
19136               c:identifier="gtk_expander_set_spacing"
19137               version="2.4">
19138         <doc xml:whitespace="preserve">Sets the spacing field of @expander, which is the number of pixels to
19139 place between expander and the child.</doc>
19140         <return-value transfer-ownership="none">
19141           <type name="none" c:type="void"/>
19142         </return-value>
19143         <parameters>
19144           <parameter name="spacing" transfer-ownership="none">
19145             <doc xml:whitespace="preserve">distance between the expander and child in pixels.</doc>
19146             <type name="gint" c:type="gint"/>
19147           </parameter>
19148         </parameters>
19149       </method>
19150       <method name="set_use_markup"
19151               c:identifier="gtk_expander_set_use_markup"
19152               version="2.4">
19153         <doc xml:whitespace="preserve">Sets whether the text of the label contains markup in &lt;link
19154 linkend="PangoMarkupFormat"&gt;Pango's text markup
19155 language&lt;/link&gt;. See gtk_label_set_markup().</doc>
19156         <return-value transfer-ownership="none">
19157           <type name="none" c:type="void"/>
19158         </return-value>
19159         <parameters>
19160           <parameter name="use_markup" transfer-ownership="none">
19161             <doc xml:whitespace="preserve">%TRUE if the label's text should be parsed for markup</doc>
19162             <type name="gboolean" c:type="gboolean"/>
19163           </parameter>
19164         </parameters>
19165       </method>
19166       <method name="set_use_underline"
19167               c:identifier="gtk_expander_set_use_underline"
19168               version="2.4">
19169         <doc xml:whitespace="preserve">If true, an underline in the text of the expander label indicates
19170 the next character should be used for the mnemonic accelerator key.</doc>
19171         <return-value transfer-ownership="none">
19172           <type name="none" c:type="void"/>
19173         </return-value>
19174         <parameters>
19175           <parameter name="use_underline" transfer-ownership="none">
19176             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
19177             <type name="gboolean" c:type="gboolean"/>
19178           </parameter>
19179         </parameters>
19180       </method>
19181       <property name="expanded"
19182                 writable="1"
19183                 construct="1"
19184                 transfer-ownership="none">
19185         <type name="gboolean"/>
19186       </property>
19187       <property name="label"
19188                 writable="1"
19189                 construct="1"
19190                 transfer-ownership="none">
19191         <type name="utf8"/>
19192       </property>
19193       <property name="label-fill"
19194                 writable="1"
19195                 construct="1"
19196                 transfer-ownership="none">
19197         <type name="gboolean"/>
19198       </property>
19199       <property name="label-widget" writable="1" transfer-ownership="none">
19200         <type name="Widget"/>
19201       </property>
19202       <property name="spacing" writable="1" transfer-ownership="none">
19203         <type name="gint"/>
19204       </property>
19205       <property name="use-markup"
19206                 writable="1"
19207                 construct="1"
19208                 transfer-ownership="none">
19209         <type name="gboolean"/>
19210       </property>
19211       <property name="use-underline"
19212                 writable="1"
19213                 construct="1"
19214                 transfer-ownership="none">
19215         <type name="gboolean"/>
19216       </property>
19217       <field name="bin">
19218         <type name="Bin" c:type="GtkBin"/>
19219       </field>
19220       <field name="priv">
19221         <type name="ExpanderPrivate" c:type="GtkExpanderPrivate*"/>
19222       </field>
19223       <glib:signal name="activate">
19224         <return-value transfer-ownership="none">
19225           <type name="none"/>
19226         </return-value>
19227       </glib:signal>
19228     </class>
19229     <record name="ExpanderClass"
19230             c:type="GtkExpanderClass"
19231             glib:is-gtype-struct-for="Expander">
19232       <field name="parent_class">
19233         <type name="BinClass" c:type="GtkBinClass"/>
19234       </field>
19235       <field name="activate">
19236         <callback name="activate">
19237           <return-value transfer-ownership="none">
19238             <type name="none" c:type="void"/>
19239           </return-value>
19240           <parameters>
19241             <parameter name="expander" transfer-ownership="none">
19242               <type name="Expander" c:type="GtkExpander*"/>
19243             </parameter>
19244           </parameters>
19245         </callback>
19246       </field>
19247     </record>
19248     <record name="ExpanderPrivate" c:type="GtkExpanderPrivate" disguised="1">
19249     </record>
19250     <enumeration name="ExpanderStyle"
19251                  glib:type-name="GtkExpanderStyle"
19252                  glib:get-type="gtk_expander_style_get_type"
19253                  c:type="GtkExpanderStyle">
19254       <member name="collapsed"
19255               value="0"
19256               c:identifier="GTK_EXPANDER_COLLAPSED"
19257               glib:nick="collapsed"/>
19258       <member name="semi_collapsed"
19259               value="1"
19260               c:identifier="GTK_EXPANDER_SEMI_COLLAPSED"
19261               glib:nick="semi-collapsed"/>
19262       <member name="semi_expanded"
19263               value="2"
19264               c:identifier="GTK_EXPANDER_SEMI_EXPANDED"
19265               glib:nick="semi-expanded"/>
19266       <member name="expanded"
19267               value="3"
19268               c:identifier="GTK_EXPANDER_EXPANDED"
19269               glib:nick="expanded"/>
19270     </enumeration>
19271     <interface name="FileChooser"
19272                c:symbol-prefix="file_chooser"
19273                c:type="GtkFileChooser"
19274                glib:type-name="GtkFileChooser"
19275                glib:get-type="gtk_file_chooser_get_type">
19276       <prerequisite name="Widget"/>
19277       <method name="add_filter"
19278               c:identifier="gtk_file_chooser_add_filter"
19279               version="2.4">
19280         <doc xml:whitespace="preserve">Adds @filter to the list of filters that the user can select between.
19281 When a filter is selected, only files that are passed by that
19282 filter are displayed. 
19283 Note that the @chooser takes ownership of the filter, so you have to 
19284 ref and sink it if you want to keep a reference.</doc>
19285         <return-value transfer-ownership="none">
19286           <type name="none" c:type="void"/>
19287         </return-value>
19288         <parameters>
19289           <parameter name="filter" transfer-ownership="none">
19290             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
19291             <type name="FileFilter" c:type="GtkFileFilter*"/>
19292           </parameter>
19293         </parameters>
19294       </method>
19295       <method name="add_shortcut_folder"
19296               c:identifier="gtk_file_chooser_add_shortcut_folder"
19297               version="2.4"
19298               throws="1">
19299         <doc xml:whitespace="preserve">Adds a folder to be displayed with the shortcut folders in a file chooser.
19300 Note that shortcut folders do not get saved, as they are provided by the
19301 application.  For example, you can use this to add a
19302 "/usr/share/mydrawprogram/Clipart" folder to the volume list.
19303 otherwise.  In the latter case, the @error will be set as appropriate.</doc>
19304         <return-value transfer-ownership="none">
19305           <doc xml:whitespace="preserve">%TRUE if the folder could be added successfully, %FALSE</doc>
19306           <type name="gboolean" c:type="gboolean"/>
19307         </return-value>
19308         <parameters>
19309           <parameter name="folder" transfer-ownership="none">
19310             <doc xml:whitespace="preserve">filename of the folder to add</doc>
19311             <type name="utf8" c:type="char*"/>
19312           </parameter>
19313         </parameters>
19314       </method>
19315       <method name="add_shortcut_folder_uri"
19316               c:identifier="gtk_file_chooser_add_shortcut_folder_uri"
19317               version="2.4"
19318               throws="1">
19319         <doc xml:whitespace="preserve">Adds a folder URI to be displayed with the shortcut folders in a file
19320 chooser.  Note that shortcut folders do not get saved, as they are provided
19321 by the application.  For example, you can use this to add a
19322 "file:///usr/share/mydrawprogram/Clipart" folder to the volume list.
19323 otherwise.  In the latter case, the @error will be set as appropriate.</doc>
19324         <return-value transfer-ownership="none">
19325           <doc xml:whitespace="preserve">%TRUE if the folder could be added successfully, %FALSE</doc>
19326           <type name="gboolean" c:type="gboolean"/>
19327         </return-value>
19328         <parameters>
19329           <parameter name="uri" transfer-ownership="none">
19330             <doc xml:whitespace="preserve">URI of the folder to add</doc>
19331             <type name="utf8" c:type="char*"/>
19332           </parameter>
19333         </parameters>
19334       </method>
19335       <method name="get_action"
19336               c:identifier="gtk_file_chooser_get_action"
19337               version="2.4">
19338         <doc xml:whitespace="preserve">Gets the type of operation that the file chooser is performing; see
19339 gtk_file_chooser_set_action().</doc>
19340         <return-value transfer-ownership="none">
19341           <doc xml:whitespace="preserve">the action that the file selector is performing</doc>
19342           <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
19343         </return-value>
19344       </method>
19345       <method name="get_create_folders"
19346               c:identifier="gtk_file_chooser_get_create_folders"
19347               version="2.18">
19348         <doc xml:whitespace="preserve">Gets whether file choser will offer to create new folders.
19349 See gtk_file_chooser_set_create_folders().</doc>
19350         <return-value transfer-ownership="none">
19351           <doc xml:whitespace="preserve">%TRUE if the New Folder button should be displayed.</doc>
19352           <type name="gboolean" c:type="gboolean"/>
19353         </return-value>
19354       </method>
19355       <method name="get_current_folder"
19356               c:identifier="gtk_file_chooser_get_current_folder"
19357               version="2.4">
19358         <doc xml:whitespace="preserve">Gets the current folder of @chooser as a local filename.
19359 See gtk_file_chooser_set_current_folder().
19360 Note that this is the folder that the file chooser is currently displaying
19361 (e.g. "/home/username/Documents"), which is &lt;emphasis&gt;not the same&lt;/emphasis&gt;
19362 as the currently-selected folder if the chooser is in
19363 %GTK_FILE_CHOOSER_SELECT_FOLDER mode
19364 (e.g. "/home/username/Documents/selected-folder/".  To get the
19365 currently-selected folder in that mode, use gtk_file_chooser_get_uri() as the
19366 usual way to get the selection.
19367 path cannot be represented as a local filename.  Free with g_free().  This
19368 function will also return %NULL if the file chooser was unable to load the
19369 last folder that was requested from it; for example, as would be for calling
19370 gtk_file_chooser_set_current_folder() on a nonexistent folder.</doc>
19371         <return-value transfer-ownership="full">
19372           <doc xml:whitespace="preserve">the full path of the current folder, or %NULL if the current</doc>
19373           <type name="utf8" c:type="gchar*"/>
19374         </return-value>
19375       </method>
19376       <method name="get_current_folder_file"
19377               c:identifier="gtk_file_chooser_get_current_folder_file"
19378               version="2.14">
19379         <doc xml:whitespace="preserve">Gets the current folder of @chooser as #GFile.
19380 See gtk_file_chooser_get_current_folder_uri().</doc>
19381         <return-value transfer-ownership="full">
19382           <doc xml:whitespace="preserve">the #GFile for the current folder.</doc>
19383           <type name="Gio.File" c:type="GFile*"/>
19384         </return-value>
19385       </method>
19386       <method name="get_current_folder_uri"
19387               c:identifier="gtk_file_chooser_get_current_folder_uri"
19388               version="2.4">
19389         <doc xml:whitespace="preserve">Gets the current folder of @chooser as an URI.
19390 See gtk_file_chooser_set_current_folder_uri().
19391 Note that this is the folder that the file chooser is currently displaying
19392 (e.g. "file:///home/username/Documents"), which is &lt;emphasis&gt;not the same&lt;/emphasis&gt;
19393 as the currently-selected folder if the chooser is in
19394 %GTK_FILE_CHOOSER_SELECT_FOLDER mode
19395 (e.g. "file:///home/username/Documents/selected-folder/".  To get the
19396 currently-selected folder in that mode, use gtk_file_chooser_get_uri() as the
19397 usual way to get the selection.
19398 function will also return %NULL if the file chooser was unable to load the
19399 last folder that was requested from it; for example, as would be for calling
19400 gtk_file_chooser_set_current_folder_uri() on a nonexistent folder.</doc>
19401         <return-value transfer-ownership="full">
19402           <doc xml:whitespace="preserve">the URI for the current folder.  Free with g_free().  This</doc>
19403           <type name="utf8" c:type="gchar*"/>
19404         </return-value>
19405       </method>
19406       <method name="get_do_overwrite_confirmation"
19407               c:identifier="gtk_file_chooser_get_do_overwrite_confirmation"
19408               version="2.8">
19409         <doc xml:whitespace="preserve">Queries whether a file chooser is set to confirm for overwriting when the user
19410 types a file name that already exists.
19411 %FALSE otherwise.</doc>
19412         <return-value transfer-ownership="none">
19413           <doc xml:whitespace="preserve">%TRUE if the file chooser will present a confirmation dialog;</doc>
19414           <type name="gboolean" c:type="gboolean"/>
19415         </return-value>
19416       </method>
19417       <method name="get_extra_widget"
19418               c:identifier="gtk_file_chooser_get_extra_widget"
19419               version="2.4">
19420         <doc xml:whitespace="preserve">Gets the current preview widget; see
19421 gtk_file_chooser_set_extra_widget().</doc>
19422         <return-value transfer-ownership="none">
19423           <doc xml:whitespace="preserve">the current extra widget, or %NULL</doc>
19424           <type name="Widget" c:type="GtkWidget*"/>
19425         </return-value>
19426       </method>
19427       <method name="get_file"
19428               c:identifier="gtk_file_chooser_get_file"
19429               version="2.14">
19430         <doc xml:whitespace="preserve">Gets the #GFile for the currently selected file in
19431 the file selector. If multiple files are selected,
19432 one of the files will be returned at random.
19433 If the file chooser is in folder mode, this function returns the selected
19434 folder.
19435 use g_object_unref() to release it.</doc>
19436         <return-value transfer-ownership="full">
19437           <doc xml:whitespace="preserve">a selected #GFile. You own the returned file;</doc>
19438           <type name="Gio.File" c:type="GFile*"/>
19439         </return-value>
19440       </method>
19441       <method name="get_filename"
19442               c:identifier="gtk_file_chooser_get_filename"
19443               version="2.4">
19444         <doc xml:whitespace="preserve">Gets the filename for the currently selected file in
19445 the file selector. If multiple files are selected,
19446 one of the filenames will be returned at random.
19447 If the file chooser is in folder mode, this function returns the selected
19448 folder.
19449 if no file is selected, or the selected file can't
19450 be represented with a local filename. Free with g_free().</doc>
19451         <return-value transfer-ownership="full">
19452           <doc xml:whitespace="preserve">The currently selected filename, or %NULL</doc>
19453           <type name="utf8" c:type="gchar*"/>
19454         </return-value>
19455       </method>
19456       <method name="get_filenames"
19457               c:identifier="gtk_file_chooser_get_filenames"
19458               version="2.4">
19459         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of
19460 folder cannot be represented as local filenames they will be ignored. (See
19461 gtk_file_chooser_get_uris())
19462 files and subfolders in the current folder. Free the returned list
19463 with g_slist_free(), and the filenames with g_free().</doc>
19464         <return-value transfer-ownership="full">
19465           <doc xml:whitespace="preserve">a #GSList containing the filenames of all selected</doc>
19466           <type name="GLib.SList" c:type="GSList*">
19467             <type name="utf8"/>
19468           </type>
19469         </return-value>
19470       </method>
19471       <method name="get_files"
19472               c:identifier="gtk_file_chooser_get_files"
19473               version="2.14">
19474         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of @chooser
19475 as #GFile. An internal function, see gtk_file_chooser_get_uris().
19476 file and subfolder in the current folder.  Free the returned list
19477 with g_slist_free(), and the files with g_object_unref().</doc>
19478         <return-value transfer-ownership="full">
19479           <doc xml:whitespace="preserve">a #GSList containing a #GFile for each selected</doc>
19480           <type name="GLib.SList" c:type="GSList*">
19481             <type name="utf8"/>
19482           </type>
19483         </return-value>
19484       </method>
19485       <method name="get_filter"
19486               c:identifier="gtk_file_chooser_get_filter"
19487               version="2.4">
19488         <doc xml:whitespace="preserve">Gets the current filter; see gtk_file_chooser_set_filter().</doc>
19489         <return-value transfer-ownership="none">
19490           <doc xml:whitespace="preserve">the current filter, or %NULL</doc>
19491           <type name="FileFilter" c:type="GtkFileFilter*"/>
19492         </return-value>
19493       </method>
19494       <method name="get_local_only"
19495               c:identifier="gtk_file_chooser_get_local_only"
19496               version="2.4">
19497         <doc xml:whitespace="preserve">Gets whether only local files can be selected in the
19498 file selector. See gtk_file_chooser_set_local_only()</doc>
19499         <return-value transfer-ownership="none">
19500           <doc xml:whitespace="preserve">%TRUE if only local files can be selected.</doc>
19501           <type name="gboolean" c:type="gboolean"/>
19502         </return-value>
19503       </method>
19504       <method name="get_preview_file"
19505               c:identifier="gtk_file_chooser_get_preview_file"
19506               version="2.14">
19507         <doc xml:whitespace="preserve">Gets the #GFile that should be previewed in a custom preview
19508 Internal function, see gtk_file_chooser_get_preview_uri().
19509 or %NULL if no file is selected. Free with g_object_unref().</doc>
19510         <return-value transfer-ownership="none">
19511           <doc xml:whitespace="preserve">the #GFile for the file to preview,</doc>
19512           <type name="Gio.File" c:type="GFile*"/>
19513         </return-value>
19514       </method>
19515       <method name="get_preview_filename"
19516               c:identifier="gtk_file_chooser_get_preview_filename"
19517               version="2.4">
19518         <doc xml:whitespace="preserve">Gets the filename that should be previewed in a custom preview
19519 widget. See gtk_file_chooser_set_preview_widget().
19520 is selected, or if the selected file cannot be represented
19521 as a local filename. Free with g_free()</doc>
19522         <return-value transfer-ownership="full">
19523           <doc xml:whitespace="preserve">the filename to preview, or %NULL if no file</doc>
19524           <type name="utf8" c:type="char*"/>
19525         </return-value>
19526       </method>
19527       <method name="get_preview_uri"
19528               c:identifier="gtk_file_chooser_get_preview_uri"
19529               version="2.4">
19530         <doc xml:whitespace="preserve">Gets the URI that should be previewed in a custom preview
19531 widget. See gtk_file_chooser_set_preview_widget().
19532 selected. Free with g_free().</doc>
19533         <return-value transfer-ownership="full">
19534           <doc xml:whitespace="preserve">the URI for the file to preview, or %NULL if no file is</doc>
19535           <type name="utf8" c:type="char*"/>
19536         </return-value>
19537       </method>
19538       <method name="get_preview_widget"
19539               c:identifier="gtk_file_chooser_get_preview_widget"
19540               version="2.4">
19541         <doc xml:whitespace="preserve">Gets the current preview widget; see
19542 gtk_file_chooser_set_preview_widget().</doc>
19543         <return-value transfer-ownership="none">
19544           <doc xml:whitespace="preserve">the current preview widget, or %NULL</doc>
19545           <type name="Widget" c:type="GtkWidget*"/>
19546         </return-value>
19547       </method>
19548       <method name="get_preview_widget_active"
19549               c:identifier="gtk_file_chooser_get_preview_widget_active"
19550               version="2.4">
19551         <doc xml:whitespace="preserve">Gets whether the preview widget set by gtk_file_chooser_set_preview_widget()
19552 should be shown for the current filename. See
19553 gtk_file_chooser_set_preview_widget_active().</doc>
19554         <return-value transfer-ownership="none">
19555           <doc xml:whitespace="preserve">%TRUE if the preview widget is active for the current filename.</doc>
19556           <type name="gboolean" c:type="gboolean"/>
19557         </return-value>
19558       </method>
19559       <method name="get_select_multiple"
19560               c:identifier="gtk_file_chooser_get_select_multiple"
19561               version="2.4">
19562         <doc xml:whitespace="preserve">Gets whether multiple files can be selected in the file
19563 selector. See gtk_file_chooser_set_select_multiple().</doc>
19564         <return-value transfer-ownership="none">
19565           <doc xml:whitespace="preserve">%TRUE if multiple files can be selected.</doc>
19566           <type name="gboolean" c:type="gboolean"/>
19567         </return-value>
19568       </method>
19569       <method name="get_show_hidden"
19570               c:identifier="gtk_file_chooser_get_show_hidden"
19571               version="2.6">
19572         <doc xml:whitespace="preserve">Gets whether hidden files and folders are displayed in the file selector.   
19573 See gtk_file_chooser_set_show_hidden().</doc>
19574         <return-value transfer-ownership="none">
19575           <doc xml:whitespace="preserve">%TRUE if hidden files and folders are displayed.</doc>
19576           <type name="gboolean" c:type="gboolean"/>
19577         </return-value>
19578       </method>
19579       <method name="get_uri"
19580               c:identifier="gtk_file_chooser_get_uri"
19581               version="2.4">
19582         <doc xml:whitespace="preserve">Gets the URI for the currently selected file in
19583 the file selector. If multiple files are selected,
19584 one of the filenames will be returned at random.
19585 If the file chooser is in folder mode, this function returns the selected
19586 folder.
19587 if no file is selected. Free with g_free()</doc>
19588         <return-value transfer-ownership="full">
19589           <doc xml:whitespace="preserve">The currently selected URI, or %NULL</doc>
19590           <type name="utf8" c:type="gchar*"/>
19591         </return-value>
19592       </method>
19593       <method name="get_uris"
19594               c:identifier="gtk_file_chooser_get_uris"
19595               version="2.4">
19596         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of
19597 files and subfolders in the current folder. Free the returned list
19598 with g_slist_free(), and the filenames with g_free().</doc>
19599         <return-value transfer-ownership="full">
19600           <doc xml:whitespace="preserve">a #GSList containing the URIs of all selected</doc>
19601           <type name="GLib.SList" c:type="GSList*">
19602             <type name="utf8"/>
19603           </type>
19604         </return-value>
19605       </method>
19606       <method name="get_use_preview_label"
19607               c:identifier="gtk_file_chooser_get_use_preview_label">
19608         <doc xml:whitespace="preserve">Gets whether a stock label should be drawn with the name of the previewed
19609 file.  See gtk_file_chooser_set_use_preview_label().
19610 name of the previewed file, %FALSE otherwise.</doc>
19611         <return-value transfer-ownership="none">
19612           <doc xml:whitespace="preserve">%TRUE if the file chooser is set to display a label with the</doc>
19613           <type name="gboolean" c:type="gboolean"/>
19614         </return-value>
19615       </method>
19616       <method name="list_filters"
19617               c:identifier="gtk_file_chooser_list_filters"
19618               version="2.4">
19619         <doc xml:whitespace="preserve">Lists the current set of user-selectable filters; see
19620 gtk_file_chooser_add_filter(), gtk_file_chooser_remove_filter().
19621 user selectable filters. The contents of the list are
19622 owned by GTK+, but you must free the list itself with
19623 g_slist_free() when you are done with it.</doc>
19624         <return-value transfer-ownership="container">
19625           <doc xml:whitespace="preserve">a #GSList containing the current set of</doc>
19626           <type name="GLib.SList" c:type="GSList*">
19627             <type name="utf8"/>
19628           </type>
19629         </return-value>
19630       </method>
19631       <method name="list_shortcut_folder_uris"
19632               c:identifier="gtk_file_chooser_list_shortcut_folder_uris"
19633               version="2.4">
19634         <doc xml:whitespace="preserve">Queries the list of shortcut folders in the file chooser, as set by
19635 gtk_file_chooser_add_shortcut_folder_uri().
19636 folders.  Free the returned list with g_slist_free(), and the URIs with
19637 g_free().</doc>
19638         <return-value transfer-ownership="full">
19639           <doc xml:whitespace="preserve">A list of folder URIs, or %NULL if there are no shortcut</doc>
19640           <type name="GLib.SList" c:type="GSList*">
19641             <type name="utf8"/>
19642           </type>
19643         </return-value>
19644       </method>
19645       <method name="list_shortcut_folders"
19646               c:identifier="gtk_file_chooser_list_shortcut_folders"
19647               version="2.4">
19648         <doc xml:whitespace="preserve">Queries the list of shortcut folders in the file chooser, as set by
19649 gtk_file_chooser_add_shortcut_folder().
19650 folders.  Free the returned list with g_slist_free(), and the filenames with
19651 g_free().</doc>
19652         <return-value transfer-ownership="full">
19653           <doc xml:whitespace="preserve">A list of folder filenames, or %NULL if there are no shortcut</doc>
19654           <type name="GLib.SList" c:type="GSList*">
19655             <type name="utf8"/>
19656           </type>
19657         </return-value>
19658       </method>
19659       <method name="remove_filter"
19660               c:identifier="gtk_file_chooser_remove_filter"
19661               version="2.4">
19662         <doc xml:whitespace="preserve">Removes @filter from the list of filters that the user can select between.</doc>
19663         <return-value transfer-ownership="none">
19664           <type name="none" c:type="void"/>
19665         </return-value>
19666         <parameters>
19667           <parameter name="filter" transfer-ownership="none">
19668             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
19669             <type name="FileFilter" c:type="GtkFileFilter*"/>
19670           </parameter>
19671         </parameters>
19672       </method>
19673       <method name="remove_shortcut_folder"
19674               c:identifier="gtk_file_chooser_remove_shortcut_folder"
19675               version="2.4"
19676               throws="1">
19677         <doc xml:whitespace="preserve">Removes a folder from a file chooser's list of shortcut folders.
19678 In the latter case, the @error will be set as appropriate.</doc>
19679         <return-value transfer-ownership="none">
19680           <doc xml:whitespace="preserve">%TRUE if the operation succeeds, %FALSE otherwise.</doc>
19681           <type name="gboolean" c:type="gboolean"/>
19682         </return-value>
19683         <parameters>
19684           <parameter name="folder" transfer-ownership="none">
19685             <doc xml:whitespace="preserve">filename of the folder to remove</doc>
19686             <type name="utf8" c:type="char*"/>
19687           </parameter>
19688         </parameters>
19689       </method>
19690       <method name="remove_shortcut_folder_uri"
19691               c:identifier="gtk_file_chooser_remove_shortcut_folder_uri"
19692               version="2.4"
19693               throws="1">
19694         <doc xml:whitespace="preserve">Removes a folder URI from a file chooser's list of shortcut folders.
19695 In the latter case, the @error will be set as appropriate.</doc>
19696         <return-value transfer-ownership="none">
19697           <doc xml:whitespace="preserve">%TRUE if the operation succeeds, %FALSE otherwise.</doc>
19698           <type name="gboolean" c:type="gboolean"/>
19699         </return-value>
19700         <parameters>
19701           <parameter name="uri" transfer-ownership="none">
19702             <doc xml:whitespace="preserve">URI of the folder to remove</doc>
19703             <type name="utf8" c:type="char*"/>
19704           </parameter>
19705         </parameters>
19706       </method>
19707       <method name="select_all"
19708               c:identifier="gtk_file_chooser_select_all"
19709               version="2.4">
19710         <doc xml:whitespace="preserve">Selects all the files in the current folder of a file chooser.</doc>
19711         <return-value transfer-ownership="none">
19712           <type name="none" c:type="void"/>
19713         </return-value>
19714       </method>
19715       <method name="select_file"
19716               c:identifier="gtk_file_chooser_select_file"
19717               version="2.14"
19718               throws="1">
19719         <doc xml:whitespace="preserve">Selects the file referred to by @file. An internal function. See
19720 _gtk_file_chooser_select_uri().
19721 selected successfully, %FALSE otherwise.</doc>
19722         <return-value transfer-ownership="none">
19723           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the path was</doc>
19724           <type name="gboolean" c:type="gboolean"/>
19725         </return-value>
19726         <parameters>
19727           <parameter name="file" transfer-ownership="none">
19728             <doc xml:whitespace="preserve">the file to select</doc>
19729             <type name="Gio.File" c:type="GFile*"/>
19730           </parameter>
19731         </parameters>
19732       </method>
19733       <method name="select_filename"
19734               c:identifier="gtk_file_chooser_select_filename"
19735               version="2.4">
19736         <doc xml:whitespace="preserve">Selects a filename. If the file name isn't in the current
19737 folder of @chooser, then the current folder of @chooser will
19738 be changed to the folder containing @filename.
19739 selected successfully, %FALSE otherwise.</doc>
19740         <return-value transfer-ownership="none">
19741           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
19742           <type name="gboolean" c:type="gboolean"/>
19743         </return-value>
19744         <parameters>
19745           <parameter name="filename" transfer-ownership="none">
19746             <doc xml:whitespace="preserve">the filename to select</doc>
19747             <type name="utf8" c:type="char*"/>
19748           </parameter>
19749         </parameters>
19750       </method>
19751       <method name="select_uri"
19752               c:identifier="gtk_file_chooser_select_uri"
19753               version="2.4">
19754         <doc xml:whitespace="preserve">Selects the file to by @uri. If the URI doesn't refer to a
19755 file in the current folder of @chooser, then the current folder of
19756 selected successfully, %FALSE otherwise.</doc>
19757         <return-value transfer-ownership="none">
19758           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the URI was</doc>
19759           <type name="gboolean" c:type="gboolean"/>
19760         </return-value>
19761         <parameters>
19762           <parameter name="uri" transfer-ownership="none">
19763             <doc xml:whitespace="preserve">the URI to select</doc>
19764             <type name="utf8" c:type="char*"/>
19765           </parameter>
19766         </parameters>
19767       </method>
19768       <method name="set_action"
19769               c:identifier="gtk_file_chooser_set_action"
19770               version="2.4">
19771         <doc xml:whitespace="preserve">Sets the type of operation that the chooser is performing; the
19772 user interface is adapted to suit the selected action. For example,
19773 an option to create a new folder might be shown if the action is
19774 %GTK_FILE_CHOOSER_ACTION_SAVE but not if the action is
19775 %GTK_FILE_CHOOSER_ACTION_OPEN.</doc>
19776         <return-value transfer-ownership="none">
19777           <type name="none" c:type="void"/>
19778         </return-value>
19779         <parameters>
19780           <parameter name="action" transfer-ownership="none">
19781             <doc xml:whitespace="preserve">the action that the file selector is performing</doc>
19782             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
19783           </parameter>
19784         </parameters>
19785       </method>
19786       <method name="set_create_folders"
19787               c:identifier="gtk_file_chooser_set_create_folders"
19788               version="2.18">
19789         <doc xml:whitespace="preserve">Sets whether file choser will offer to create new folders.
19790 This is only relevant if the action is not set to be 
19791 %GTK_FILE_CHOOSER_ACTION_OPEN.</doc>
19792         <return-value transfer-ownership="none">
19793           <type name="none" c:type="void"/>
19794         </return-value>
19795         <parameters>
19796           <parameter name="create_folders" transfer-ownership="none">
19797             <doc xml:whitespace="preserve">%TRUE if the New Folder button should be displayed</doc>
19798             <type name="gboolean" c:type="gboolean"/>
19799           </parameter>
19800         </parameters>
19801       </method>
19802       <method name="set_current_folder"
19803               c:identifier="gtk_file_chooser_set_current_folder"
19804               version="2.4">
19805         <doc xml:whitespace="preserve">Sets the current folder for @chooser from a local filename.
19806 The user will be shown the full contents of the current folder,
19807 plus user interface elements for navigating to other folders.
19808 otherwise.</doc>
19809         <return-value transfer-ownership="none">
19810           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
19811           <type name="gboolean" c:type="gboolean"/>
19812         </return-value>
19813         <parameters>
19814           <parameter name="filename" transfer-ownership="none">
19815             <doc xml:whitespace="preserve">the full path of the new current folder</doc>
19816             <type name="utf8" c:type="gchar*"/>
19817           </parameter>
19818         </parameters>
19819       </method>
19820       <method name="set_current_folder_file"
19821               c:identifier="gtk_file_chooser_set_current_folder_file"
19822               version="2.14"
19823               throws="1">
19824         <doc xml:whitespace="preserve">Sets the current folder for @chooser from a #GFile.
19825 Internal function, see gtk_file_chooser_set_current_folder_uri().
19826 otherwise.</doc>
19827         <return-value transfer-ownership="none">
19828           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
19829           <type name="gboolean" c:type="gboolean"/>
19830         </return-value>
19831         <parameters>
19832           <parameter name="file" transfer-ownership="none">
19833             <doc xml:whitespace="preserve">the #GFile for the new folder</doc>
19834             <type name="Gio.File" c:type="GFile*"/>
19835           </parameter>
19836         </parameters>
19837       </method>
19838       <method name="set_current_folder_uri"
19839               c:identifier="gtk_file_chooser_set_current_folder_uri"
19840               version="2.4">
19841         <doc xml:whitespace="preserve">Sets the current folder for @chooser from an URI.
19842 The user will be shown the full contents of the current folder,
19843 plus user interface elements for navigating to other folders.
19844 otherwise.</doc>
19845         <return-value transfer-ownership="none">
19846           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
19847           <type name="gboolean" c:type="gboolean"/>
19848         </return-value>
19849         <parameters>
19850           <parameter name="uri" transfer-ownership="none">
19851             <doc xml:whitespace="preserve">the URI for the new current folder</doc>
19852             <type name="utf8" c:type="gchar*"/>
19853           </parameter>
19854         </parameters>
19855       </method>
19856       <method name="set_current_name"
19857               c:identifier="gtk_file_chooser_set_current_name"
19858               version="2.4">
19859         <doc xml:whitespace="preserve">Sets the current name in the file selector, as if entered
19860 by the user. Note that the name passed in here is a UTF-8
19861 string rather than a filename. This function is meant for
19862 such uses as a suggested name in a "Save As..." dialog.
19863 If you want to preselect a particular existing file, you should use
19864 gtk_file_chooser_set_filename() or gtk_file_chooser_set_uri() instead.
19865 Please see the documentation for those functions for an example of using
19866 gtk_file_chooser_set_current_name() as well.</doc>
19867         <return-value transfer-ownership="none">
19868           <type name="none" c:type="void"/>
19869         </return-value>
19870         <parameters>
19871           <parameter name="name" transfer-ownership="none">
19872             <doc xml:whitespace="preserve">the filename to use, as a UTF-8 string</doc>
19873             <type name="utf8" c:type="gchar*"/>
19874           </parameter>
19875         </parameters>
19876       </method>
19877       <method name="set_do_overwrite_confirmation"
19878               c:identifier="gtk_file_chooser_set_do_overwrite_confirmation"
19879               version="2.8">
19880         <doc xml:whitespace="preserve">Sets whether a file chooser in %GTK_FILE_CHOOSER_ACTION_SAVE mode will present
19881 a confirmation dialog if the user types a file name that already exists.  This
19882 is %FALSE by default.
19883 Regardless of this setting, the @chooser will emit the
19884 #GtkFileChooser::confirm-overwrite signal when appropriate.
19885 If all you need is the stock confirmation dialog, set this property to %TRUE.
19886 You can override the way confirmation is done by actually handling the
19887 #GtkFileChooser::confirm-overwrite signal; please refer to its documentation
19888 for the details.</doc>
19889         <return-value transfer-ownership="none">
19890           <type name="none" c:type="void"/>
19891         </return-value>
19892         <parameters>
19893           <parameter name="do_overwrite_confirmation"
19894                      transfer-ownership="none">
19895             <doc xml:whitespace="preserve">whether to confirm overwriting in save mode</doc>
19896             <type name="gboolean" c:type="gboolean"/>
19897           </parameter>
19898         </parameters>
19899       </method>
19900       <method name="set_extra_widget"
19901               c:identifier="gtk_file_chooser_set_extra_widget"
19902               version="2.4">
19903         <doc xml:whitespace="preserve">Sets an application-supplied widget to provide extra options to the user.</doc>
19904         <return-value transfer-ownership="none">
19905           <type name="none" c:type="void"/>
19906         </return-value>
19907         <parameters>
19908           <parameter name="extra_widget" transfer-ownership="none">
19909             <doc xml:whitespace="preserve">widget for extra options</doc>
19910             <type name="Widget" c:type="GtkWidget*"/>
19911           </parameter>
19912         </parameters>
19913       </method>
19914       <method name="set_file"
19915               c:identifier="gtk_file_chooser_set_file"
19916               version="2.14"
19917               throws="1">
19918         <doc xml:whitespace="preserve">Sets @file as the current filename for the file chooser, by changing
19919 to the file's parent folder and actually selecting the file in list.  If
19920 the @chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode, the file's base name
19921 will also appear in the dialog's file name entry.
19922 If the file name isn't in the current folder of @chooser, then the current
19923 folder of @chooser will be changed to the folder containing @filename. This
19924 is equivalent to a sequence of gtk_file_chooser_unselect_all() followed by
19925 gtk_file_chooser_select_filename().
19926 Note that the file must exist, or nothing will be done except
19927 for the directory change.
19928 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
19929 you should use this function if you already have a file name to which the
19930 user may save; for example, when the user opens an existing file and then
19931 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have
19932 a file name already &amp;mdash; for example, if the user just created a new
19933 file and is saving it for the first time, do not call this function.
19934 Instead, use something similar to this:
19935 |[
19936 if (document_is_new)
19937 {
19938 /&amp;ast; the user just created a new document &amp;ast;/
19939 gtk_file_chooser_set_current_folder_file (chooser, default_file_for_saving);
19940 gtk_file_chooser_set_current_name (chooser, "Untitled document");
19941 }
19942 else
19943 {
19944 /&amp;ast; the user edited an existing document &amp;ast;/
19945 gtk_file_chooser_set_file (chooser, existing_file);
19946 }
19947 ]|
19948 selected successfully, %FALSE otherwise.</doc>
19949         <return-value transfer-ownership="none">
19950           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
19951           <type name="gboolean" c:type="gboolean"/>
19952         </return-value>
19953         <parameters>
19954           <parameter name="file" transfer-ownership="none">
19955             <doc xml:whitespace="preserve">the #GFile to set as current</doc>
19956             <type name="Gio.File" c:type="GFile*"/>
19957           </parameter>
19958         </parameters>
19959       </method>
19960       <method name="set_filename"
19961               c:identifier="gtk_file_chooser_set_filename"
19962               version="2.4">
19963         <doc xml:whitespace="preserve">Sets @filename as the current filename for the file chooser, by changing
19964 to the file's parent folder and actually selecting the file in list.  If
19965 the @chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode, the file's base name
19966 will also appear in the dialog's file name entry.
19967 If the file name isn't in the current folder of @chooser, then the current
19968 folder of @chooser will be changed to the folder containing @filename. This
19969 is equivalent to a sequence of gtk_file_chooser_unselect_all() followed by
19970 gtk_file_chooser_select_filename().
19971 Note that the file must exist, or nothing will be done except
19972 for the directory change.
19973 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
19974 you should use this function if you already have a file name to which the 
19975 user may save; for example, when the user opens an existing file and then 
19976 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have 
19977 a file name already &amp;mdash; for example, if the user just created a new 
19978 file and is saving it for the first time, do not call this function.  
19979 Instead, use something similar to this:
19980 |[
19981 if (document_is_new)
19982 {
19983 /&amp;ast; the user just created a new document &amp;ast;/
19984 gtk_file_chooser_set_current_folder (chooser, default_folder_for_saving);
19985 gtk_file_chooser_set_current_name (chooser, "Untitled document");
19986 }
19987 else
19988 {
19989 /&amp;ast; the user edited an existing document &amp;ast;/ 
19990 gtk_file_chooser_set_filename (chooser, existing_filename);
19991 }
19992 ]|
19993 selected successfully, %FALSE otherwise.</doc>
19994         <return-value transfer-ownership="none">
19995           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
19996           <type name="gboolean" c:type="gboolean"/>
19997         </return-value>
19998         <parameters>
19999           <parameter name="filename" transfer-ownership="none">
20000             <doc xml:whitespace="preserve">the filename to set as current</doc>
20001             <type name="utf8" c:type="char*"/>
20002           </parameter>
20003         </parameters>
20004       </method>
20005       <method name="set_filter"
20006               c:identifier="gtk_file_chooser_set_filter"
20007               version="2.4">
20008         <doc xml:whitespace="preserve">Sets the current filter; only the files that pass the
20009 filter will be displayed. If the user-selectable list of filters
20010 is non-empty, then the filter should be one of the filters
20011 in that list. Setting the current filter when the list of
20012 filters is empty is useful if you want to restrict the displayed
20013 set of files without letting the user change it.</doc>
20014         <return-value transfer-ownership="none">
20015           <type name="none" c:type="void"/>
20016         </return-value>
20017         <parameters>
20018           <parameter name="filter" transfer-ownership="none">
20019             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
20020             <type name="FileFilter" c:type="GtkFileFilter*"/>
20021           </parameter>
20022         </parameters>
20023       </method>
20024       <method name="set_local_only"
20025               c:identifier="gtk_file_chooser_set_local_only"
20026               version="2.4">
20027         <doc xml:whitespace="preserve">Sets whether only local files can be selected in the
20028 file selector. If @local_only is %TRUE (the default),
20029 then the selected file are files are guaranteed to be
20030 accessible through the operating systems native file
20031 file system and therefore the application only
20032 needs to worry about the filename functions in
20033 #GtkFileChooser, like gtk_file_chooser_get_filename(),
20034 rather than the URI functions like
20035 gtk_file_chooser_get_uri(),</doc>
20036         <return-value transfer-ownership="none">
20037           <type name="none" c:type="void"/>
20038         </return-value>
20039         <parameters>
20040           <parameter name="local_only" transfer-ownership="none">
20041             <doc xml:whitespace="preserve">%TRUE if only local files can be selected</doc>
20042             <type name="gboolean" c:type="gboolean"/>
20043           </parameter>
20044         </parameters>
20045       </method>
20046       <method name="set_preview_widget"
20047               c:identifier="gtk_file_chooser_set_preview_widget"
20048               version="2.4">
20049         <doc xml:whitespace="preserve">Sets an application-supplied widget to use to display a custom preview
20050 of the currently selected file. To implement a preview, after setting the
20051 preview widget, you connect to the #GtkFileChooser::update-preview
20052 signal, and call gtk_file_chooser_get_preview_filename() or
20053 gtk_file_chooser_get_preview_uri() on each change. If you can
20054 display a preview of the new file, update your widget and
20055 set the preview active using gtk_file_chooser_set_preview_widget_active().
20056 Otherwise, set the preview inactive.
20057 When there is no application-supplied preview widget, or the
20058 application-supplied preview widget is not active, the file chooser
20059 may display an internally generated preview of the current file or
20060 it may display no preview at all.</doc>
20061         <return-value transfer-ownership="none">
20062           <type name="none" c:type="void"/>
20063         </return-value>
20064         <parameters>
20065           <parameter name="preview_widget" transfer-ownership="none">
20066             <doc xml:whitespace="preserve">widget for displaying preview.</doc>
20067             <type name="Widget" c:type="GtkWidget*"/>
20068           </parameter>
20069         </parameters>
20070       </method>
20071       <method name="set_preview_widget_active"
20072               c:identifier="gtk_file_chooser_set_preview_widget_active"
20073               version="2.4">
20074         <doc xml:whitespace="preserve">Sets whether the preview widget set by
20075 gtk_file_chooser_set_preview_widget() should be shown for the
20076 current filename. When @active is set to false, the file chooser
20077 may display an internally generated preview of the current file
20078 or it may display no preview at all. See
20079 gtk_file_chooser_set_preview_widget() for more details.</doc>
20080         <return-value transfer-ownership="none">
20081           <type name="none" c:type="void"/>
20082         </return-value>
20083         <parameters>
20084           <parameter name="active" transfer-ownership="none">
20085             <doc xml:whitespace="preserve">whether to display the user-specified preview widget</doc>
20086             <type name="gboolean" c:type="gboolean"/>
20087           </parameter>
20088         </parameters>
20089       </method>
20090       <method name="set_select_multiple"
20091               c:identifier="gtk_file_chooser_set_select_multiple"
20092               version="2.4">
20093         <doc xml:whitespace="preserve">Sets whether multiple files can be selected in the file selector.  This is
20094 only relevant if the action is set to be %GTK_FILE_CHOOSER_ACTION_OPEN or
20095 %GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER.</doc>
20096         <return-value transfer-ownership="none">
20097           <type name="none" c:type="void"/>
20098         </return-value>
20099         <parameters>
20100           <parameter name="select_multiple" transfer-ownership="none">
20101             <doc xml:whitespace="preserve">%TRUE if multiple files can be selected.</doc>
20102             <type name="gboolean" c:type="gboolean"/>
20103           </parameter>
20104         </parameters>
20105       </method>
20106       <method name="set_show_hidden"
20107               c:identifier="gtk_file_chooser_set_show_hidden"
20108               version="2.6">
20109         <doc xml:whitespace="preserve">Sets whether hidden files and folders are displayed in the file selector.</doc>
20110         <return-value transfer-ownership="none">
20111           <type name="none" c:type="void"/>
20112         </return-value>
20113         <parameters>
20114           <parameter name="show_hidden" transfer-ownership="none">
20115             <doc xml:whitespace="preserve">%TRUE if hidden files and folders should be displayed.</doc>
20116             <type name="gboolean" c:type="gboolean"/>
20117           </parameter>
20118         </parameters>
20119       </method>
20120       <method name="set_uri"
20121               c:identifier="gtk_file_chooser_set_uri"
20122               version="2.4">
20123         <doc xml:whitespace="preserve">Sets the file referred to by @uri as the current file for the file chooser,
20124 by changing to the URI's parent folder and actually selecting the URI in the
20125 list.  If the @chooser is %GTK_FILE_CHOOSER_ACTION_SAVE mode, the URI's base
20126 name will also appear in the dialog's file name entry.
20127 If the URI isn't in the current folder of @chooser, then the current folder
20128 of @chooser will be changed to the folder containing @uri. This is equivalent
20129 to a sequence of gtk_file_chooser_unselect_all() followed by
20130 gtk_file_chooser_select_uri().
20131 Note that the URI must exist, or nothing will be done except for the 
20132 directory change.
20133 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
20134 you should use this function if you already have a file name to which the 
20135 user may save; for example, when the user opens an existing file and then 
20136 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have 
20137 a file name already &amp;mdash; for example, if the user just created a new 
20138 file and is saving it for the first time, do not call this function.  
20139 Instead, use something similar to this:
20140 |[
20141 if (document_is_new)
20142 {
20143 /&amp;ast; the user just created a new document &amp;ast;/
20144 gtk_file_chooser_set_current_folder_uri (chooser, default_folder_for_saving);
20145 gtk_file_chooser_set_current_name (chooser, "Untitled document");
20146 }
20147 else
20148 {
20149 /&amp;ast; the user edited an existing document &amp;ast;/ 
20150 gtk_file_chooser_set_uri (chooser, existing_uri);
20151 }
20152 ]|
20153 selected successfully, %FALSE otherwise.</doc>
20154         <return-value transfer-ownership="none">
20155           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the URI was</doc>
20156           <type name="gboolean" c:type="gboolean"/>
20157         </return-value>
20158         <parameters>
20159           <parameter name="uri" transfer-ownership="none">
20160             <doc xml:whitespace="preserve">the URI to set as current</doc>
20161             <type name="utf8" c:type="char*"/>
20162           </parameter>
20163         </parameters>
20164       </method>
20165       <method name="set_use_preview_label"
20166               c:identifier="gtk_file_chooser_set_use_preview_label"
20167               version="2.4">
20168         <doc xml:whitespace="preserve">Sets whether the file chooser should display a stock label with the name of
20169 the file that is being previewed; the default is %TRUE.  Applications that
20170 want to draw the whole preview area themselves should set this to %FALSE and
20171 display the name themselves in their preview widget.</doc>
20172         <return-value transfer-ownership="none">
20173           <type name="none" c:type="void"/>
20174         </return-value>
20175         <parameters>
20176           <parameter name="use_label" transfer-ownership="none">
20177             <doc xml:whitespace="preserve">whether to display a stock label with the name of the previewed file</doc>
20178             <type name="gboolean" c:type="gboolean"/>
20179           </parameter>
20180         </parameters>
20181       </method>
20182       <method name="unselect_all"
20183               c:identifier="gtk_file_chooser_unselect_all"
20184               version="2.4">
20185         <doc xml:whitespace="preserve">Unselects all the files in the current folder of a file chooser.</doc>
20186         <return-value transfer-ownership="none">
20187           <type name="none" c:type="void"/>
20188         </return-value>
20189       </method>
20190       <method name="unselect_file"
20191               c:identifier="gtk_file_chooser_unselect_file"
20192               version="2.14">
20193         <doc xml:whitespace="preserve">Unselects the file referred to by @file. If the file is not in the current
20194 directory, does not exist, or is otherwise not currently selected, does nothing.</doc>
20195         <return-value transfer-ownership="none">
20196           <type name="none" c:type="void"/>
20197         </return-value>
20198         <parameters>
20199           <parameter name="file" transfer-ownership="none">
20200             <doc xml:whitespace="preserve">a #GFile</doc>
20201             <type name="Gio.File" c:type="GFile*"/>
20202           </parameter>
20203         </parameters>
20204       </method>
20205       <method name="unselect_filename"
20206               c:identifier="gtk_file_chooser_unselect_filename"
20207               version="2.4">
20208         <doc xml:whitespace="preserve">Unselects a currently selected filename. If the filename
20209 is not in the current directory, does not exist, or
20210 is otherwise not currently selected, does nothing.</doc>
20211         <return-value transfer-ownership="none">
20212           <type name="none" c:type="void"/>
20213         </return-value>
20214         <parameters>
20215           <parameter name="filename" transfer-ownership="none">
20216             <doc xml:whitespace="preserve">the filename to unselect</doc>
20217             <type name="utf8" c:type="char*"/>
20218           </parameter>
20219         </parameters>
20220       </method>
20221       <method name="unselect_uri"
20222               c:identifier="gtk_file_chooser_unselect_uri"
20223               version="2.4">
20224         <doc xml:whitespace="preserve">Unselects the file referred to by @uri. If the file
20225 is not in the current directory, does not exist, or
20226 is otherwise not currently selected, does nothing.</doc>
20227         <return-value transfer-ownership="none">
20228           <type name="none" c:type="void"/>
20229         </return-value>
20230         <parameters>
20231           <parameter name="uri" transfer-ownership="none">
20232             <doc xml:whitespace="preserve">the URI to unselect</doc>
20233             <type name="utf8" c:type="char*"/>
20234           </parameter>
20235         </parameters>
20236       </method>
20237       <property name="action" writable="1" transfer-ownership="none">
20238         <type name="FileChooserAction"/>
20239       </property>
20240       <property name="create-folders"
20241                 version="2.18"
20242                 writable="1"
20243                 transfer-ownership="none">
20244         <doc xml:whitespace="preserve">Whether a file chooser not in %GTK_FILE_CHOOSER_ACTION_OPEN mode
20245 will offer the user to create new folders.</doc>
20246         <type name="gboolean"/>
20247       </property>
20248       <property name="do-overwrite-confirmation"
20249                 version="2.8"
20250                 writable="1"
20251                 transfer-ownership="none">
20252         <doc xml:whitespace="preserve">Whether a file chooser in %GTK_FILE_CHOOSER_ACTION_SAVE mode
20253 will present an overwrite confirmation dialog if the user
20254 selects a file name that already exists.</doc>
20255         <type name="gboolean"/>
20256       </property>
20257       <property name="extra-widget" writable="1" transfer-ownership="none">
20258         <type name="Widget"/>
20259       </property>
20260       <property name="filter" writable="1" transfer-ownership="none">
20261         <type name="FileFilter"/>
20262       </property>
20263       <property name="local-only" writable="1" transfer-ownership="none">
20264         <type name="gboolean"/>
20265       </property>
20266       <property name="preview-widget" writable="1" transfer-ownership="none">
20267         <type name="Widget"/>
20268       </property>
20269       <property name="preview-widget-active"
20270                 writable="1"
20271                 transfer-ownership="none">
20272         <type name="gboolean"/>
20273       </property>
20274       <property name="select-multiple" writable="1" transfer-ownership="none">
20275         <type name="gboolean"/>
20276       </property>
20277       <property name="show-hidden" writable="1" transfer-ownership="none">
20278         <type name="gboolean"/>
20279       </property>
20280       <property name="use-preview-label"
20281                 writable="1"
20282                 transfer-ownership="none">
20283         <type name="gboolean"/>
20284       </property>
20285       <glib:signal name="confirm-overwrite" version="2.8">
20286         <doc xml:whitespace="preserve">This signal gets emitted whenever it is appropriate to present a
20287 confirmation dialog when the user has selected a file name that
20288 already exists.  The signal only gets emitted when the file
20289 chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode.
20290 Most applications just need to turn on the
20291 #GtkFileChooser:do-overwrite-confirmation property (or call the
20292 gtk_file_chooser_set_do_overwrite_confirmation() function), and
20293 they will automatically get a stock confirmation dialog.
20294 Applications which need to customize this behavior should do
20295 that, and also connect to the #GtkFileChooser::confirm-overwrite
20296 signal.
20297 A signal handler for this signal must return a
20298 #GtkFileChooserConfirmation value, which indicates the action to
20299 take.  If the handler determines that the user wants to select a
20300 different filename, it should return
20301 %GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN.  If it determines
20302 that the user is satisfied with his choice of file name, it
20303 should return %GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME.
20304 On the other hand, if it determines that the stock confirmation
20305 dialog should be used, it should return
20306 %GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM. The following example
20307 illustrates this.
20308 &lt;example id="gtkfilechooser-confirmation"&gt;
20309 &lt;title&gt;Custom confirmation&lt;/title&gt;
20310 &lt;programlisting&gt;
20311 static GtkFileChooserConfirmation
20312 confirm_overwrite_callback (GtkFileChooser *chooser, gpointer data)
20313 {
20314 char *uri;
20315 uri = gtk_file_chooser_get_uri (chooser);
20316 if (is_uri_read_only (uri))
20317 {
20318 if (user_wants_to_replace_read_only_file (uri))
20319 return GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME;
20320 else
20321 return GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN;
20322 } else
20323 return GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM; // fall back to the default dialog
20324 }
20325 ...
20326 chooser = gtk_file_chooser_dialog_new (...);
20327 gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE);
20328 g_signal_connect (chooser, "confirm-overwrite",
20329 G_CALLBACK (confirm_overwrite_callback), NULL);
20330 if (gtk_dialog_run (chooser) == GTK_RESPONSE_ACCEPT)
20331 save_to_file (gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooser));
20332 gtk_widget_destroy (chooser);
20333 &lt;/programlisting&gt;
20334 &lt;/example&gt;
20335 action to take after emitting the signal.</doc>
20336         <return-value transfer-ownership="none">
20337           <doc xml:whitespace="preserve">a #GtkFileChooserConfirmation value that indicates which</doc>
20338           <type name="FileChooserConfirmation"/>
20339         </return-value>
20340       </glib:signal>
20341       <glib:signal name="current-folder-changed">
20342         <return-value transfer-ownership="none">
20343           <type name="none"/>
20344         </return-value>
20345       </glib:signal>
20346       <glib:signal name="file-activated">
20347         <return-value transfer-ownership="none">
20348           <type name="none"/>
20349         </return-value>
20350       </glib:signal>
20351       <glib:signal name="selection-changed">
20352         <return-value transfer-ownership="none">
20353           <type name="none"/>
20354         </return-value>
20355       </glib:signal>
20356       <glib:signal name="update-preview">
20357         <return-value transfer-ownership="none">
20358           <type name="none"/>
20359         </return-value>
20360       </glib:signal>
20361     </interface>
20362     <enumeration name="FileChooserAction"
20363                  glib:type-name="GtkFileChooserAction"
20364                  glib:get-type="gtk_file_chooser_action_get_type"
20365                  c:type="GtkFileChooserAction">
20366       <doc xml:whitespace="preserve">Describes whether a #GtkFileChooser is being used to open existing files
20367 or to save to a possibly new file.</doc>
20368       <member name="open"
20369               value="0"
20370               c:identifier="GTK_FILE_CHOOSER_ACTION_OPEN"
20371               glib:nick="open"/>
20372       <member name="save"
20373               value="1"
20374               c:identifier="GTK_FILE_CHOOSER_ACTION_SAVE"
20375               glib:nick="save"/>
20376       <member name="select_folder"
20377               value="2"
20378               c:identifier="GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER"
20379               glib:nick="select-folder"/>
20380       <member name="create_folder"
20381               value="3"
20382               c:identifier="GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER"
20383               glib:nick="create-folder"/>
20384     </enumeration>
20385     <class name="FileChooserButton"
20386            c:symbol-prefix="file_chooser_button"
20387            c:type="GtkFileChooserButton"
20388            parent="HBox"
20389            glib:type-name="GtkFileChooserButton"
20390            glib:get-type="gtk_file_chooser_button_get_type"
20391            glib:type-struct="FileChooserButtonClass">
20392       <implements name="Atk.ImplementorIface"/>
20393       <implements name="Buildable"/>
20394       <implements name="FileChooser"/>
20395       <implements name="Orientable"/>
20396       <implements name="SizeRequest"/>
20397       <constructor name="new"
20398                    c:identifier="gtk_file_chooser_button_new"
20399                    version="2.6">
20400         <doc xml:whitespace="preserve">Creates a new file-selecting button widget.</doc>
20401         <return-value transfer-ownership="none">
20402           <doc xml:whitespace="preserve">a new button widget.</doc>
20403           <type name="Widget" c:type="GtkWidget*"/>
20404         </return-value>
20405         <parameters>
20406           <parameter name="title" transfer-ownership="none">
20407             <doc xml:whitespace="preserve">the title of the browse dialog.</doc>
20408             <type name="utf8" c:type="gchar*"/>
20409           </parameter>
20410           <parameter name="action" transfer-ownership="none">
20411             <doc xml:whitespace="preserve">the open mode for the widget.</doc>
20412             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
20413           </parameter>
20414         </parameters>
20415       </constructor>
20416       <constructor name="new_with_dialog"
20417                    c:identifier="gtk_file_chooser_button_new_with_dialog"
20418                    version="2.6">
20419         <doc xml:whitespace="preserve">Creates a #GtkFileChooserButton widget which uses @dialog as its
20420 file-picking window.
20421 Note that @dialog must be a #GtkDialog (or subclass) which
20422 implements the #GtkFileChooser interface and must not have
20423 %GTK_DIALOG_DESTROY_WITH_PARENT set.
20424 Also note that the dialog needs to have its confirmative button
20425 added with response %GTK_RESPONSE_ACCEPT or %GTK_RESPONSE_OK in
20426 order for the button to take over the file selected in the dialog.</doc>
20427         <return-value transfer-ownership="none">
20428           <doc xml:whitespace="preserve">a new button widget.</doc>
20429           <type name="Widget" c:type="GtkWidget*"/>
20430         </return-value>
20431         <parameters>
20432           <parameter name="dialog" transfer-ownership="none">
20433             <doc xml:whitespace="preserve">the widget to use as dialog</doc>
20434             <type name="Widget" c:type="GtkWidget*"/>
20435           </parameter>
20436         </parameters>
20437       </constructor>
20438       <method name="get_focus_on_click"
20439               c:identifier="gtk_file_chooser_button_get_focus_on_click"
20440               version="2.10">
20441         <doc xml:whitespace="preserve">Returns whether the button grabs focus when it is clicked with the mouse.
20442 See gtk_file_chooser_button_set_focus_on_click().
20443 the mouse.</doc>
20444         <return-value transfer-ownership="none">
20445           <doc xml:whitespace="preserve">%TRUE if the button grabs focus when it is clicked with</doc>
20446           <type name="gboolean" c:type="gboolean"/>
20447         </return-value>
20448       </method>
20449       <method name="get_title"
20450               c:identifier="gtk_file_chooser_button_get_title"
20451               version="2.6">
20452         <doc xml:whitespace="preserve">Retrieves the title of the browse dialog used by @button. The returned value
20453 should not be modified or freed.</doc>
20454         <return-value transfer-ownership="none">
20455           <doc xml:whitespace="preserve">a pointer to the browse dialog's title.</doc>
20456           <type name="utf8" c:type="gchar*"/>
20457         </return-value>
20458       </method>
20459       <method name="get_width_chars"
20460               c:identifier="gtk_file_chooser_button_get_width_chars"
20461               version="2.6">
20462         <doc xml:whitespace="preserve">Retrieves the width in characters of the @button widget's entry and/or label.</doc>
20463         <return-value transfer-ownership="none">
20464           <doc xml:whitespace="preserve">an integer width (in characters) that the button will use to size itself.</doc>
20465           <type name="gint" c:type="gint"/>
20466         </return-value>
20467       </method>
20468       <method name="set_focus_on_click"
20469               c:identifier="gtk_file_chooser_button_set_focus_on_click"
20470               version="2.10">
20471         <doc xml:whitespace="preserve">Sets whether the button will grab focus when it is clicked with the mouse.
20472 Making mouse clicks not grab focus is useful in places like toolbars where
20473 you don't want the keyboard focus removed from the main area of the
20474 application.</doc>
20475         <return-value transfer-ownership="none">
20476           <type name="none" c:type="void"/>
20477         </return-value>
20478         <parameters>
20479           <parameter name="focus_on_click" transfer-ownership="none">
20480             <doc xml:whitespace="preserve">whether the button grabs focus when clicked with the mouse</doc>
20481             <type name="gboolean" c:type="gboolean"/>
20482           </parameter>
20483         </parameters>
20484       </method>
20485       <method name="set_title"
20486               c:identifier="gtk_file_chooser_button_set_title"
20487               version="2.6">
20488         <doc xml:whitespace="preserve">Modifies the @title of the browse dialog used by @button.</doc>
20489         <return-value transfer-ownership="none">
20490           <type name="none" c:type="void"/>
20491         </return-value>
20492         <parameters>
20493           <parameter name="title" transfer-ownership="none">
20494             <doc xml:whitespace="preserve">the new browse dialog title.</doc>
20495             <type name="utf8" c:type="gchar*"/>
20496           </parameter>
20497         </parameters>
20498       </method>
20499       <method name="set_width_chars"
20500               c:identifier="gtk_file_chooser_button_set_width_chars"
20501               version="2.6">
20502         <doc xml:whitespace="preserve">Sets the width (in characters) that @button will use to @n_chars.</doc>
20503         <return-value transfer-ownership="none">
20504           <type name="none" c:type="void"/>
20505         </return-value>
20506         <parameters>
20507           <parameter name="n_chars" transfer-ownership="none">
20508             <doc xml:whitespace="preserve">the new width, in characters.</doc>
20509             <type name="gint" c:type="gint"/>
20510           </parameter>
20511         </parameters>
20512       </method>
20513       <property name="dialog"
20514                 version="2.6"
20515                 readable="0"
20516                 writable="1"
20517                 construct-only="1"
20518                 transfer-ownership="none">
20519         <doc xml:whitespace="preserve">Instance of the #GtkFileChooserDialog associated with the button.</doc>
20520         <type name="FileChooser"/>
20521       </property>
20522       <property name="focus-on-click"
20523                 version="2.10"
20524                 writable="1"
20525                 transfer-ownership="none">
20526         <doc xml:whitespace="preserve">Whether the #GtkFileChooserButton button grabs focus when it is clicked
20527 with the mouse.</doc>
20528         <type name="gboolean"/>
20529       </property>
20530       <property name="title"
20531                 version="2.6"
20532                 writable="1"
20533                 transfer-ownership="none">
20534         <doc xml:whitespace="preserve">Title to put on the #GtkFileChooserDialog associated with the button.</doc>
20535         <type name="utf8"/>
20536       </property>
20537       <property name="width-chars"
20538                 version="2.6"
20539                 writable="1"
20540                 transfer-ownership="none">
20541         <doc xml:whitespace="preserve">The width of the entry and label inside the button, in characters.</doc>
20542         <type name="gint"/>
20543       </property>
20544       <field name="parent">
20545         <type name="HBox" c:type="GtkHBox"/>
20546       </field>
20547       <field name="priv">
20548         <type name="FileChooserButtonPrivate"
20549               c:type="GtkFileChooserButtonPrivate*"/>
20550       </field>
20551       <glib:signal name="file-set" version="2.12">
20552         <doc xml:whitespace="preserve">The ::file-set signal is emitted when the user selects a file.
20553 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
20554 changes the file.</doc>
20555         <return-value transfer-ownership="none">
20556           <type name="none"/>
20557         </return-value>
20558       </glib:signal>
20559     </class>
20560     <record name="FileChooserButtonClass"
20561             c:type="GtkFileChooserButtonClass"
20562             glib:is-gtype-struct-for="FileChooserButton">
20563       <field name="parent_class">
20564         <type name="HBoxClass" c:type="GtkHBoxClass"/>
20565       </field>
20566       <field name="file_set">
20567         <callback name="file_set">
20568           <return-value transfer-ownership="none">
20569             <type name="none" c:type="void"/>
20570           </return-value>
20571           <parameters>
20572             <parameter name="fc" transfer-ownership="none">
20573               <type name="FileChooserButton" c:type="GtkFileChooserButton*"/>
20574             </parameter>
20575           </parameters>
20576         </callback>
20577       </field>
20578       <field name="__gtk_reserved1">
20579         <type name="gpointer" c:type="void*"/>
20580       </field>
20581       <field name="__gtk_reserved2">
20582         <type name="gpointer" c:type="void*"/>
20583       </field>
20584       <field name="__gtk_reserved3">
20585         <type name="gpointer" c:type="void*"/>
20586       </field>
20587       <field name="__gtk_reserved4">
20588         <type name="gpointer" c:type="void*"/>
20589       </field>
20590       <field name="__gtk_reserved5">
20591         <type name="gpointer" c:type="void*"/>
20592       </field>
20593       <field name="__gtk_reserved6">
20594         <type name="gpointer" c:type="void*"/>
20595       </field>
20596       <field name="__gtk_reserved7">
20597         <type name="gpointer" c:type="void*"/>
20598       </field>
20599     </record>
20600     <record name="FileChooserButtonPrivate"
20601             c:type="GtkFileChooserButtonPrivate"
20602             disguised="1">
20603     </record>
20604     <enumeration name="FileChooserConfirmation"
20605                  version="2.8"
20606                  glib:type-name="GtkFileChooserConfirmation"
20607                  glib:get-type="gtk_file_chooser_confirmation_get_type"
20608                  c:type="GtkFileChooserConfirmation">
20609       <doc xml:whitespace="preserve">Used as a return value of handlers for the
20610 #GtkFileChooser::confirm-overwrite signal of a #GtkFileChooser. This
20611 value determines whether the file chooser will present the stock
20612 confirmation dialog, accept the user's choice of a filename, or
20613 let the user choose another filename.</doc>
20614       <member name="confirm"
20615               value="0"
20616               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM"
20617               glib:nick="confirm"/>
20618       <member name="accept_filename"
20619               value="1"
20620               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME"
20621               glib:nick="accept-filename"/>
20622       <member name="select_again"
20623               value="2"
20624               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN"
20625               glib:nick="select-again"/>
20626     </enumeration>
20627     <class name="FileChooserDialog"
20628            c:symbol-prefix="file_chooser_dialog"
20629            c:type="GtkFileChooserDialog"
20630            parent="Dialog"
20631            glib:type-name="GtkFileChooserDialog"
20632            glib:get-type="gtk_file_chooser_dialog_get_type"
20633            glib:type-struct="FileChooserDialogClass">
20634       <implements name="Atk.ImplementorIface"/>
20635       <implements name="Buildable"/>
20636       <implements name="FileChooser"/>
20637       <implements name="SizeRequest"/>
20638       <constructor name="new"
20639                    c:identifier="gtk_file_chooser_dialog_new"
20640                    version="2.4"
20641                    introspectable="0">
20642         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserDialog.  This function is analogous to
20643 gtk_dialog_new_with_buttons().</doc>
20644         <return-value transfer-ownership="none">
20645           <doc xml:whitespace="preserve">a new #GtkFileChooserDialog</doc>
20646           <type name="Widget" c:type="GtkWidget*"/>
20647         </return-value>
20648         <parameters>
20649           <parameter name="title" transfer-ownership="none" allow-none="1">
20650             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
20651             <type name="utf8" c:type="gchar*"/>
20652           </parameter>
20653           <parameter name="parent" transfer-ownership="none" allow-none="1">
20654             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL</doc>
20655             <type name="Window" c:type="GtkWindow*"/>
20656           </parameter>
20657           <parameter name="action" transfer-ownership="none">
20658             <doc xml:whitespace="preserve">Open or save mode for the dialog</doc>
20659             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
20660           </parameter>
20661           <parameter name="first_button_text"
20662                      transfer-ownership="none"
20663                      allow-none="1">
20664             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
20665             <type name="utf8" c:type="gchar*"/>
20666           </parameter>
20667           <parameter transfer-ownership="none">
20668             <varargs>
20669             </varargs>
20670           </parameter>
20671         </parameters>
20672       </constructor>
20673       <field name="parent_instance">
20674         <type name="Dialog" c:type="GtkDialog"/>
20675       </field>
20676       <field name="priv">
20677         <type name="FileChooserDialogPrivate"
20678               c:type="GtkFileChooserDialogPrivate*"/>
20679       </field>
20680     </class>
20681     <record name="FileChooserDialogClass"
20682             c:type="GtkFileChooserDialogClass"
20683             glib:is-gtype-struct-for="FileChooserDialog">
20684       <field name="parent_class">
20685         <type name="DialogClass" c:type="GtkDialogClass"/>
20686       </field>
20687     </record>
20688     <record name="FileChooserDialogPrivate"
20689             c:type="GtkFileChooserDialogPrivate"
20690             disguised="1">
20691     </record>
20692     <enumeration name="FileChooserError"
20693                  glib:type-name="GtkFileChooserError"
20694                  glib:get-type="gtk_file_chooser_error_get_type"
20695                  c:type="GtkFileChooserError"
20696                  glib:error-quark="gtk_file_chooser_error_quark">
20697       <doc xml:whitespace="preserve">These identify the various errors that can occur while calling
20698 #GtkFileChooser functions.</doc>
20699       <member name="nonexistent"
20700               value="0"
20701               c:identifier="GTK_FILE_CHOOSER_ERROR_NONEXISTENT"
20702               glib:nick="nonexistent"/>
20703       <member name="bad_filename"
20704               value="1"
20705               c:identifier="GTK_FILE_CHOOSER_ERROR_BAD_FILENAME"
20706               glib:nick="bad-filename"/>
20707       <member name="already_exists"
20708               value="2"
20709               c:identifier="GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS"
20710               glib:nick="already-exists"/>
20711       <member name="incomplete_hostname"
20712               value="3"
20713               c:identifier="GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME"
20714               glib:nick="incomplete-hostname"/>
20715     </enumeration>
20716     <class name="FileChooserWidget"
20717            c:symbol-prefix="file_chooser_widget"
20718            c:type="GtkFileChooserWidget"
20719            parent="VBox"
20720            glib:type-name="GtkFileChooserWidget"
20721            glib:get-type="gtk_file_chooser_widget_get_type"
20722            glib:type-struct="FileChooserWidgetClass">
20723       <implements name="Atk.ImplementorIface"/>
20724       <implements name="Buildable"/>
20725       <implements name="FileChooser"/>
20726       <implements name="Orientable"/>
20727       <implements name="SizeRequest"/>
20728       <constructor name="new"
20729                    c:identifier="gtk_file_chooser_widget_new"
20730                    version="2.4">
20731         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserWidget.  This is a file chooser widget that can
20732 be embedded in custom windows, and it is the same widget that is used by
20733 #GtkFileChooserDialog.</doc>
20734         <return-value transfer-ownership="none">
20735           <doc xml:whitespace="preserve">a new #GtkFileChooserWidget</doc>
20736           <type name="Widget" c:type="GtkWidget*"/>
20737         </return-value>
20738         <parameters>
20739           <parameter name="action" transfer-ownership="none">
20740             <doc xml:whitespace="preserve">Open or save mode for the widget</doc>
20741             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
20742           </parameter>
20743         </parameters>
20744       </constructor>
20745       <field name="parent_instance">
20746         <type name="VBox" c:type="GtkVBox"/>
20747       </field>
20748       <field name="priv">
20749         <type name="FileChooserWidgetPrivate"
20750               c:type="GtkFileChooserWidgetPrivate*"/>
20751       </field>
20752     </class>
20753     <record name="FileChooserWidgetClass"
20754             c:type="GtkFileChooserWidgetClass"
20755             glib:is-gtype-struct-for="FileChooserWidget">
20756       <field name="parent_class">
20757         <type name="VBoxClass" c:type="GtkVBoxClass"/>
20758       </field>
20759     </record>
20760     <record name="FileChooserWidgetPrivate"
20761             c:type="GtkFileChooserWidgetPrivate"
20762             disguised="1">
20763     </record>
20764     <class name="FileFilter"
20765            c:symbol-prefix="file_filter"
20766            c:type="GtkFileFilter"
20767            parent="Object"
20768            glib:type-name="GtkFileFilter"
20769            glib:get-type="gtk_file_filter_get_type">
20770       <constructor name="new" c:identifier="gtk_file_filter_new" version="2.4">
20771         <doc xml:whitespace="preserve">Creates a new #GtkFileFilter with no rules added to it.
20772 Such a filter doesn't accept any files, so is not
20773 particularly useful until you add rules with
20774 gtk_file_filter_add_mime_type(), gtk_file_filter_add_pattern(),
20775 or gtk_file_filter_add_custom(). To create a filter
20776 that accepts any file, use:
20777 |[
20778 GtkFileFilter *filter = gtk_file_filter_new ();
20779 gtk_file_filter_add_pattern (filter, "*");
20780 ]|</doc>
20781         <return-value transfer-ownership="none">
20782           <doc xml:whitespace="preserve">a new #GtkFileFilter</doc>
20783           <type name="FileFilter" c:type="GtkFileFilter*"/>
20784         </return-value>
20785       </constructor>
20786       <method name="add_custom"
20787               c:identifier="gtk_file_filter_add_custom"
20788               version="2.4">
20789         <doc xml:whitespace="preserve">Adds rule to a filter that allows files based on a custom callback
20790 function. The bitfield @needed which is passed in provides information
20791 about what sorts of information that the filter function needs;
20792 this allows GTK+ to avoid retrieving expensive information when
20793 it isn't needed by the filter.</doc>
20794         <return-value transfer-ownership="none">
20795           <type name="none" c:type="void"/>
20796         </return-value>
20797         <parameters>
20798           <parameter name="needed" transfer-ownership="none">
20799             <doc xml:whitespace="preserve">bitfield of flags indicating the information that the custom filter function needs.</doc>
20800             <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
20801           </parameter>
20802           <parameter name="func"
20803                      transfer-ownership="none"
20804                      scope="notified"
20805                      closure="2"
20806                      destroy="3">
20807             <doc xml:whitespace="preserve">callback function; if the function returns %TRUE, then the file will be displayed.</doc>
20808             <type name="FileFilterFunc" c:type="GtkFileFilterFunc"/>
20809           </parameter>
20810           <parameter name="data" transfer-ownership="none">
20811             <doc xml:whitespace="preserve">data to pass to @func</doc>
20812             <type name="gpointer" c:type="gpointer"/>
20813           </parameter>
20814           <parameter name="notify" transfer-ownership="none" scope="async">
20815             <doc xml:whitespace="preserve">function to call to free @data when it is no longer needed.</doc>
20816             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
20817           </parameter>
20818         </parameters>
20819       </method>
20820       <method name="add_mime_type"
20821               c:identifier="gtk_file_filter_add_mime_type"
20822               version="2.4">
20823         <doc xml:whitespace="preserve">Adds a rule allowing a given mime type to @filter.</doc>
20824         <return-value transfer-ownership="none">
20825           <type name="none" c:type="void"/>
20826         </return-value>
20827         <parameters>
20828           <parameter name="mime_type" transfer-ownership="none">
20829             <doc xml:whitespace="preserve">name of a MIME type</doc>
20830             <type name="utf8" c:type="gchar*"/>
20831           </parameter>
20832         </parameters>
20833       </method>
20834       <method name="add_pattern"
20835               c:identifier="gtk_file_filter_add_pattern"
20836               version="2.4">
20837         <doc xml:whitespace="preserve">Adds a rule allowing a shell style glob to a filter.</doc>
20838         <return-value transfer-ownership="none">
20839           <type name="none" c:type="void"/>
20840         </return-value>
20841         <parameters>
20842           <parameter name="pattern" transfer-ownership="none">
20843             <doc xml:whitespace="preserve">a shell style glob</doc>
20844             <type name="utf8" c:type="gchar*"/>
20845           </parameter>
20846         </parameters>
20847       </method>
20848       <method name="add_pixbuf_formats"
20849               c:identifier="gtk_file_filter_add_pixbuf_formats"
20850               version="2.6">
20851         <doc xml:whitespace="preserve">Adds a rule allowing image files in the formats supported
20852 by GdkPixbuf.</doc>
20853         <return-value transfer-ownership="none">
20854           <type name="none" c:type="void"/>
20855         </return-value>
20856       </method>
20857       <method name="filter"
20858               c:identifier="gtk_file_filter_filter"
20859               version="2.4">
20860         <doc xml:whitespace="preserve">Tests whether a file should be displayed according to @filter.
20861 The #GtkFileFilterInfo structure @filter_info should include
20862 the fields returned from gtk_file_filter_get_needed().
20863 This function will not typically be used by applications; it
20864 is intended principally for use in the implementation of
20865 #GtkFileChooser.</doc>
20866         <return-value transfer-ownership="none">
20867           <doc xml:whitespace="preserve">%TRUE if the file should be displayed</doc>
20868           <type name="gboolean" c:type="gboolean"/>
20869         </return-value>
20870         <parameters>
20871           <parameter name="filter_info" transfer-ownership="none">
20872             <doc xml:whitespace="preserve">a #GtkFileFilterInfo structure containing information about a file.</doc>
20873             <type name="FileFilterInfo" c:type="GtkFileFilterInfo*"/>
20874           </parameter>
20875         </parameters>
20876       </method>
20877       <method name="get_name"
20878               c:identifier="gtk_file_filter_get_name"
20879               version="2.4">
20880         <doc xml:whitespace="preserve">Gets the human-readable name for the filter. See gtk_file_filter_set_name().
20881 or %NULL. This value is owned by GTK+ and must not
20882 be modified or freed.</doc>
20883         <return-value transfer-ownership="none">
20884           <doc xml:whitespace="preserve">The human-readable name of the filter,</doc>
20885           <type name="utf8" c:type="gchar*"/>
20886         </return-value>
20887       </method>
20888       <method name="get_needed"
20889               c:identifier="gtk_file_filter_get_needed"
20890               version="2.4">
20891         <doc xml:whitespace="preserve">Gets the fields that need to be filled in for the structure
20892 passed to gtk_file_filter_filter()
20893 This function will not typically be used by applications; it
20894 is intended principally for use in the implementation of
20895 #GtkFileChooser.
20896 calling gtk_file_filter_filter()</doc>
20897         <return-value transfer-ownership="none">
20898           <doc xml:whitespace="preserve">bitfield of flags indicating needed fields when</doc>
20899           <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
20900         </return-value>
20901       </method>
20902       <method name="set_name"
20903               c:identifier="gtk_file_filter_set_name"
20904               version="2.4">
20905         <doc xml:whitespace="preserve">Sets the human-readable name of the filter; this is the string
20906 that will be displayed in the file selector user interface if
20907 there is a selectable list of filters.</doc>
20908         <return-value transfer-ownership="none">
20909           <type name="none" c:type="void"/>
20910         </return-value>
20911         <parameters>
20912           <parameter name="name" transfer-ownership="none" allow-none="1">
20913             <doc xml:whitespace="preserve">the human-readable-name for the filter, or %NULL to remove any existing name.</doc>
20914             <type name="utf8" c:type="gchar*"/>
20915           </parameter>
20916         </parameters>
20917       </method>
20918     </class>
20919     <bitfield name="FileFilterFlags"
20920               glib:type-name="GtkFileFilterFlags"
20921               glib:get-type="gtk_file_filter_flags_get_type"
20922               c:type="GtkFileFilterFlags">
20923       <member name="filename"
20924               value="1"
20925               c:identifier="GTK_FILE_FILTER_FILENAME"
20926               glib:nick="filename"/>
20927       <member name="uri"
20928               value="2"
20929               c:identifier="GTK_FILE_FILTER_URI"
20930               glib:nick="uri"/>
20931       <member name="display_name"
20932               value="4"
20933               c:identifier="GTK_FILE_FILTER_DISPLAY_NAME"
20934               glib:nick="display-name"/>
20935       <member name="mime_type"
20936               value="8"
20937               c:identifier="GTK_FILE_FILTER_MIME_TYPE"
20938               glib:nick="mime-type"/>
20939     </bitfield>
20940     <callback name="FileFilterFunc" c:type="GtkFileFilterFunc">
20941       <return-value transfer-ownership="none">
20942         <type name="gboolean" c:type="gboolean"/>
20943       </return-value>
20944       <parameters>
20945         <parameter name="filter_info" transfer-ownership="none">
20946           <type name="FileFilterInfo" c:type="GtkFileFilterInfo*"/>
20947         </parameter>
20948         <parameter name="data" transfer-ownership="none">
20949           <type name="gpointer" c:type="gpointer"/>
20950         </parameter>
20951       </parameters>
20952     </callback>
20953     <record name="FileFilterInfo" c:type="GtkFileFilterInfo">
20954       <field name="contains" writable="1">
20955         <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
20956       </field>
20957       <field name="filename" writable="1">
20958         <type name="utf8" c:type="gchar*"/>
20959       </field>
20960       <field name="uri" writable="1">
20961         <type name="utf8" c:type="gchar*"/>
20962       </field>
20963       <field name="display_name" writable="1">
20964         <type name="utf8" c:type="gchar*"/>
20965       </field>
20966       <field name="mime_type" writable="1">
20967         <type name="utf8" c:type="gchar*"/>
20968       </field>
20969     </record>
20970     <class name="Fixed"
20971            c:symbol-prefix="fixed"
20972            c:type="GtkFixed"
20973            parent="Container"
20974            glib:type-name="GtkFixed"
20975            glib:get-type="gtk_fixed_get_type"
20976            glib:type-struct="FixedClass">
20977       <implements name="Atk.ImplementorIface"/>
20978       <implements name="Buildable"/>
20979       <implements name="SizeRequest"/>
20980       <constructor name="new" c:identifier="gtk_fixed_new">
20981         <return-value transfer-ownership="none">
20982           <type name="Widget" c:type="GtkWidget*"/>
20983         </return-value>
20984       </constructor>
20985       <method name="move" c:identifier="gtk_fixed_move">
20986         <return-value transfer-ownership="none">
20987           <type name="none" c:type="void"/>
20988         </return-value>
20989         <parameters>
20990           <parameter name="widget" transfer-ownership="none">
20991             <type name="Widget" c:type="GtkWidget*"/>
20992           </parameter>
20993           <parameter name="x" transfer-ownership="none">
20994             <type name="gint" c:type="gint"/>
20995           </parameter>
20996           <parameter name="y" transfer-ownership="none">
20997             <type name="gint" c:type="gint"/>
20998           </parameter>
20999         </parameters>
21000       </method>
21001       <method name="put" c:identifier="gtk_fixed_put">
21002         <return-value transfer-ownership="none">
21003           <type name="none" c:type="void"/>
21004         </return-value>
21005         <parameters>
21006           <parameter name="widget" transfer-ownership="none">
21007             <type name="Widget" c:type="GtkWidget*"/>
21008           </parameter>
21009           <parameter name="x" transfer-ownership="none">
21010             <type name="gint" c:type="gint"/>
21011           </parameter>
21012           <parameter name="y" transfer-ownership="none">
21013             <type name="gint" c:type="gint"/>
21014           </parameter>
21015         </parameters>
21016       </method>
21017       <field name="container">
21018         <type name="Container" c:type="GtkContainer"/>
21019       </field>
21020       <field name="priv" readable="0" private="1">
21021         <type name="FixedPrivate" c:type="GtkFixedPrivate*"/>
21022       </field>
21023     </class>
21024     <record name="FixedChild" c:type="GtkFixedChild">
21025       <field name="widget" writable="1">
21026         <type name="Widget" c:type="GtkWidget*"/>
21027       </field>
21028       <field name="x" writable="1">
21029         <type name="gint" c:type="gint"/>
21030       </field>
21031       <field name="y" writable="1">
21032         <type name="gint" c:type="gint"/>
21033       </field>
21034     </record>
21035     <record name="FixedClass"
21036             c:type="GtkFixedClass"
21037             glib:is-gtype-struct-for="Fixed">
21038       <field name="parent_class">
21039         <type name="ContainerClass" c:type="GtkContainerClass"/>
21040       </field>
21041     </record>
21042     <record name="FixedPrivate" c:type="GtkFixedPrivate" disguised="1">
21043     </record>
21044     <class name="FontButton"
21045            c:symbol-prefix="font_button"
21046            c:type="GtkFontButton"
21047            parent="Button"
21048            glib:type-name="GtkFontButton"
21049            glib:get-type="gtk_font_button_get_type"
21050            glib:type-struct="FontButtonClass">
21051       <implements name="Atk.ImplementorIface"/>
21052       <implements name="Activatable"/>
21053       <implements name="Buildable"/>
21054       <implements name="SizeRequest"/>
21055       <constructor name="new" c:identifier="gtk_font_button_new" version="2.4">
21056         <doc xml:whitespace="preserve">Creates a new font picker widget.</doc>
21057         <return-value transfer-ownership="none">
21058           <doc xml:whitespace="preserve">a new font picker widget.</doc>
21059           <type name="Widget" c:type="GtkWidget*"/>
21060         </return-value>
21061       </constructor>
21062       <constructor name="new_with_font"
21063                    c:identifier="gtk_font_button_new_with_font"
21064                    version="2.4">
21065         <doc xml:whitespace="preserve">Creates a new font picker widget.</doc>
21066         <return-value transfer-ownership="none">
21067           <doc xml:whitespace="preserve">a new font picker widget.</doc>
21068           <type name="Widget" c:type="GtkWidget*"/>
21069         </return-value>
21070         <parameters>
21071           <parameter name="fontname" transfer-ownership="none">
21072             <doc xml:whitespace="preserve">Name of font to display in font selection dialog</doc>
21073             <type name="utf8" c:type="gchar*"/>
21074           </parameter>
21075         </parameters>
21076       </constructor>
21077       <method name="get_font_name"
21078               c:identifier="gtk_font_button_get_font_name"
21079               version="2.4">
21080         <doc xml:whitespace="preserve">Retrieves the name of the currently selected font. This name includes
21081 style and size information as well. If you want to render something
21082 with the font, use this string with pango_font_description_from_string() .
21083 If you're interested in peeking certain values (family name,
21084 style, size, weight) just query these properties from the
21085 #PangoFontDescription object.</doc>
21086         <return-value transfer-ownership="none">
21087           <doc xml:whitespace="preserve">an internal copy of the font name which must not be freed.</doc>
21088           <type name="utf8" c:type="gchar*"/>
21089         </return-value>
21090       </method>
21091       <method name="get_show_size"
21092               c:identifier="gtk_font_button_get_show_size"
21093               version="2.4">
21094         <doc xml:whitespace="preserve">Returns whether the font size will be shown in the label.</doc>
21095         <return-value transfer-ownership="none">
21096           <doc xml:whitespace="preserve">whether the font size will be shown in the label.</doc>
21097           <type name="gboolean" c:type="gboolean"/>
21098         </return-value>
21099       </method>
21100       <method name="get_show_style"
21101               c:identifier="gtk_font_button_get_show_style"
21102               version="2.4">
21103         <doc xml:whitespace="preserve">Returns whether the name of the font style will be shown in the label.</doc>
21104         <return-value transfer-ownership="none">
21105           <doc xml:whitespace="preserve">whether the font style will be shown in the label.</doc>
21106           <type name="gboolean" c:type="gboolean"/>
21107         </return-value>
21108       </method>
21109       <method name="get_title"
21110               c:identifier="gtk_font_button_get_title"
21111               version="2.4">
21112         <doc xml:whitespace="preserve">Retrieves the title of the font selection dialog.</doc>
21113         <return-value transfer-ownership="none">
21114           <doc xml:whitespace="preserve">an internal copy of the title string which must not be freed.</doc>
21115           <type name="utf8" c:type="gchar*"/>
21116         </return-value>
21117       </method>
21118       <method name="get_use_font"
21119               c:identifier="gtk_font_button_get_use_font"
21120               version="2.4">
21121         <doc xml:whitespace="preserve">Returns whether the selected font is used in the label.</doc>
21122         <return-value transfer-ownership="none">
21123           <doc xml:whitespace="preserve">whether the selected font is used in the label.</doc>
21124           <type name="gboolean" c:type="gboolean"/>
21125         </return-value>
21126       </method>
21127       <method name="get_use_size"
21128               c:identifier="gtk_font_button_get_use_size"
21129               version="2.4">
21130         <doc xml:whitespace="preserve">Returns whether the selected size is used in the label.</doc>
21131         <return-value transfer-ownership="none">
21132           <doc xml:whitespace="preserve">whether the selected size is used in the label.</doc>
21133           <type name="gboolean" c:type="gboolean"/>
21134         </return-value>
21135       </method>
21136       <method name="set_font_name"
21137               c:identifier="gtk_font_button_set_font_name"
21138               version="2.4">
21139         <doc xml:whitespace="preserve">Sets or updates the currently-displayed font in font picker dialog.
21140 font selection dialog exists, otherwise %FALSE.</doc>
21141         <return-value transfer-ownership="none">
21142           <doc xml:whitespace="preserve">Return value of gtk_font_selection_dialog_set_font_name() if the</doc>
21143           <type name="gboolean" c:type="gboolean"/>
21144         </return-value>
21145         <parameters>
21146           <parameter name="fontname" transfer-ownership="none">
21147             <doc xml:whitespace="preserve">Name of font to display in font selection dialog</doc>
21148             <type name="utf8" c:type="gchar*"/>
21149           </parameter>
21150         </parameters>
21151       </method>
21152       <method name="set_show_size"
21153               c:identifier="gtk_font_button_set_show_size"
21154               version="2.4">
21155         <doc xml:whitespace="preserve">If @show_size is %TRUE, the font size will be displayed along with the name of the selected font.</doc>
21156         <return-value transfer-ownership="none">
21157           <type name="none" c:type="void"/>
21158         </return-value>
21159         <parameters>
21160           <parameter name="show_size" transfer-ownership="none">
21161             <doc xml:whitespace="preserve">%TRUE if font size should be displayed in dialog.</doc>
21162             <type name="gboolean" c:type="gboolean"/>
21163           </parameter>
21164         </parameters>
21165       </method>
21166       <method name="set_show_style"
21167               c:identifier="gtk_font_button_set_show_style"
21168               version="2.4">
21169         <doc xml:whitespace="preserve">If @show_style is %TRUE, the font style will be displayed along with name of the selected font.</doc>
21170         <return-value transfer-ownership="none">
21171           <type name="none" c:type="void"/>
21172         </return-value>
21173         <parameters>
21174           <parameter name="show_style" transfer-ownership="none">
21175             <doc xml:whitespace="preserve">%TRUE if font style should be displayed in label.</doc>
21176             <type name="gboolean" c:type="gboolean"/>
21177           </parameter>
21178         </parameters>
21179       </method>
21180       <method name="set_title"
21181               c:identifier="gtk_font_button_set_title"
21182               version="2.4">
21183         <doc xml:whitespace="preserve">Sets the title for the font selection dialog.</doc>
21184         <return-value transfer-ownership="none">
21185           <type name="none" c:type="void"/>
21186         </return-value>
21187         <parameters>
21188           <parameter name="title" transfer-ownership="none">
21189             <doc xml:whitespace="preserve">a string containing the font selection dialog title</doc>
21190             <type name="utf8" c:type="gchar*"/>
21191           </parameter>
21192         </parameters>
21193       </method>
21194       <method name="set_use_font"
21195               c:identifier="gtk_font_button_set_use_font"
21196               version="2.4">
21197         <doc xml:whitespace="preserve">If @use_font is %TRUE, the font name will be written using the selected font.</doc>
21198         <return-value transfer-ownership="none">
21199           <type name="none" c:type="void"/>
21200         </return-value>
21201         <parameters>
21202           <parameter name="use_font" transfer-ownership="none">
21203             <doc xml:whitespace="preserve">If %TRUE, font name will be written using font chosen.</doc>
21204             <type name="gboolean" c:type="gboolean"/>
21205           </parameter>
21206         </parameters>
21207       </method>
21208       <method name="set_use_size"
21209               c:identifier="gtk_font_button_set_use_size"
21210               version="2.4">
21211         <doc xml:whitespace="preserve">If @use_size is %TRUE, the font name will be written using the selected size.</doc>
21212         <return-value transfer-ownership="none">
21213           <type name="none" c:type="void"/>
21214         </return-value>
21215         <parameters>
21216           <parameter name="use_size" transfer-ownership="none">
21217             <doc xml:whitespace="preserve">If %TRUE, font name will be written using the selected size.</doc>
21218             <type name="gboolean" c:type="gboolean"/>
21219           </parameter>
21220         </parameters>
21221       </method>
21222       <property name="font-name"
21223                 version="2.4"
21224                 writable="1"
21225                 transfer-ownership="none">
21226         <doc xml:whitespace="preserve">The name of the currently selected font.</doc>
21227         <type name="utf8"/>
21228       </property>
21229       <property name="show-size"
21230                 version="2.4"
21231                 writable="1"
21232                 transfer-ownership="none">
21233         <doc xml:whitespace="preserve">If this property is set to %TRUE, the selected font size will be shown 
21234 in the label. For a more WYSIWYG way to show the selected size, see the 
21235 ::use-size property.</doc>
21236         <type name="gboolean"/>
21237       </property>
21238       <property name="show-style"
21239                 version="2.4"
21240                 writable="1"
21241                 transfer-ownership="none">
21242         <doc xml:whitespace="preserve">If this property is set to %TRUE, the name of the selected font style 
21243 will be shown in the label. For a more WYSIWYG way to show the selected 
21244 style, see the ::use-font property.</doc>
21245         <type name="gboolean"/>
21246       </property>
21247       <property name="title"
21248                 version="2.4"
21249                 writable="1"
21250                 transfer-ownership="none">
21251         <doc xml:whitespace="preserve">The title of the font selection dialog.</doc>
21252         <type name="utf8"/>
21253       </property>
21254       <property name="use-font"
21255                 version="2.4"
21256                 writable="1"
21257                 transfer-ownership="none">
21258         <doc xml:whitespace="preserve">If this property is set to %TRUE, the label will be drawn 
21259 in the selected font.</doc>
21260         <type name="gboolean"/>
21261       </property>
21262       <property name="use-size"
21263                 version="2.4"
21264                 writable="1"
21265                 transfer-ownership="none">
21266         <doc xml:whitespace="preserve">If this property is set to %TRUE, the label will be drawn 
21267 with the selected font size.</doc>
21268         <type name="gboolean"/>
21269       </property>
21270       <field name="button">
21271         <type name="Button" c:type="GtkButton"/>
21272       </field>
21273       <field name="priv">
21274         <type name="FontButtonPrivate" c:type="GtkFontButtonPrivate*"/>
21275       </field>
21276       <glib:signal name="font-set" version="2.4">
21277         <doc xml:whitespace="preserve">The ::font-set signal is emitted when the user selects a font. 
21278 When handling this signal, use gtk_font_button_get_font_name() 
21279 to find out which font was just selected.
21280 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
21281 changes the font. If you need to react to programmatic font changes
21282 as well, use the notify::font-name signal.</doc>
21283         <return-value transfer-ownership="none">
21284           <type name="none"/>
21285         </return-value>
21286       </glib:signal>
21287     </class>
21288     <record name="FontButtonClass"
21289             c:type="GtkFontButtonClass"
21290             glib:is-gtype-struct-for="FontButton">
21291       <field name="parent_class">
21292         <type name="ButtonClass" c:type="GtkButtonClass"/>
21293       </field>
21294       <field name="font_set">
21295         <callback name="font_set">
21296           <return-value transfer-ownership="none">
21297             <type name="none" c:type="void"/>
21298           </return-value>
21299           <parameters>
21300             <parameter name="gfp" transfer-ownership="none">
21301               <type name="FontButton" c:type="GtkFontButton*"/>
21302             </parameter>
21303           </parameters>
21304         </callback>
21305       </field>
21306       <field name="_gtk_reserved1" introspectable="0">
21307         <callback name="_gtk_reserved1">
21308           <return-value transfer-ownership="none">
21309             <type name="none" c:type="void"/>
21310           </return-value>
21311         </callback>
21312       </field>
21313       <field name="_gtk_reserved2" introspectable="0">
21314         <callback name="_gtk_reserved2">
21315           <return-value transfer-ownership="none">
21316             <type name="none" c:type="void"/>
21317           </return-value>
21318         </callback>
21319       </field>
21320       <field name="_gtk_reserved3" introspectable="0">
21321         <callback name="_gtk_reserved3">
21322           <return-value transfer-ownership="none">
21323             <type name="none" c:type="void"/>
21324           </return-value>
21325         </callback>
21326       </field>
21327       <field name="_gtk_reserved4" introspectable="0">
21328         <callback name="_gtk_reserved4">
21329           <return-value transfer-ownership="none">
21330             <type name="none" c:type="void"/>
21331           </return-value>
21332         </callback>
21333       </field>
21334     </record>
21335     <record name="FontButtonPrivate"
21336             c:type="GtkFontButtonPrivate"
21337             disguised="1">
21338     </record>
21339     <class name="FontSelection"
21340            c:symbol-prefix="font_selection"
21341            c:type="GtkFontSelection"
21342            parent="VBox"
21343            glib:type-name="GtkFontSelection"
21344            glib:get-type="gtk_font_selection_get_type"
21345            glib:type-struct="FontSelectionClass">
21346       <implements name="Atk.ImplementorIface"/>
21347       <implements name="Buildable"/>
21348       <implements name="Orientable"/>
21349       <implements name="SizeRequest"/>
21350       <constructor name="new" c:identifier="gtk_font_selection_new">
21351         <doc xml:whitespace="preserve">Creates a new #GtkFontSelection.</doc>
21352         <return-value transfer-ownership="none">
21353           <doc xml:whitespace="preserve">a n ew #GtkFontSelection</doc>
21354           <type name="Widget" c:type="GtkWidget*"/>
21355         </return-value>
21356       </constructor>
21357       <method name="get_face"
21358               c:identifier="gtk_font_selection_get_face"
21359               version="2.14">
21360         <doc xml:whitespace="preserve">Gets the #PangoFontFace representing the selected font group
21361 details (i.e. family, slant, weight, width, etc).
21362 selected font group details. The returned object is owned by</doc>
21363         <return-value transfer-ownership="none">
21364           <doc xml:whitespace="preserve">A #PangoFontFace representing the</doc>
21365           <type name="Pango.FontFace" c:type="PangoFontFace*"/>
21366         </return-value>
21367       </method>
21368       <method name="get_face_list"
21369               c:identifier="gtk_font_selection_get_face_list"
21370               version="2.14">
21371         <doc xml:whitespace="preserve">This returns the #GtkTreeView which lists all styles available for
21372 the selected font. For example, 'Regular', 'Bold', etc.</doc>
21373         <return-value transfer-ownership="none">
21374           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
21375           <type name="Widget" c:type="GtkWidget*"/>
21376         </return-value>
21377       </method>
21378       <method name="get_family"
21379               c:identifier="gtk_font_selection_get_family"
21380               version="2.14">
21381         <doc xml:whitespace="preserve">Gets the #PangoFontFamily representing the selected font family.
21382 selected font family. Font families are a collection of font
21383 faces. The returned object is owned by @fontsel and must not
21384 be modified or freed.</doc>
21385         <return-value transfer-ownership="none">
21386           <doc xml:whitespace="preserve">A #PangoFontFamily representing the</doc>
21387           <type name="Pango.FontFamily" c:type="PangoFontFamily*"/>
21388         </return-value>
21389       </method>
21390       <method name="get_family_list"
21391               c:identifier="gtk_font_selection_get_family_list"
21392               version="2.14">
21393         <doc xml:whitespace="preserve">This returns the #GtkTreeView that lists font families, for
21394 example, 'Sans', 'Serif', etc.</doc>
21395         <return-value transfer-ownership="none">
21396           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
21397           <type name="Widget" c:type="GtkWidget*"/>
21398         </return-value>
21399       </method>
21400       <method name="get_font_name"
21401               c:identifier="gtk_font_selection_get_font_name">
21402         <doc xml:whitespace="preserve">Gets the currently-selected font name. 
21403 Note that this can be a different string than what you set with 
21404 gtk_font_selection_set_font_name(), as the font selection widget may 
21405 normalize font names and thus return a string with a different structure. 
21406 For example, "Helvetica Italic Bold 12" could be normalized to 
21407 "Helvetica Bold Italic 12". Use pango_font_description_equal()
21408 if you want to compare two font descriptions.
21409 no font is selected. You must free this string with g_free().</doc>
21410         <return-value transfer-ownership="full">
21411           <doc xml:whitespace="preserve">A string with the name of the current font, or %NULL if</doc>
21412           <type name="utf8" c:type="gchar*"/>
21413         </return-value>
21414       </method>
21415       <method name="get_preview_entry"
21416               c:identifier="gtk_font_selection_get_preview_entry"
21417               version="2.14">
21418         <doc xml:whitespace="preserve">This returns the #GtkEntry used to display the font as a preview.</doc>
21419         <return-value transfer-ownership="none">
21420           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
21421           <type name="Widget" c:type="GtkWidget*"/>
21422         </return-value>
21423       </method>
21424       <method name="get_preview_text"
21425               c:identifier="gtk_font_selection_get_preview_text">
21426         <doc xml:whitespace="preserve">Gets the text displayed in the preview area.
21427 This string is owned by the widget and should not be 
21428 modified or freed</doc>
21429         <return-value transfer-ownership="none">
21430           <doc xml:whitespace="preserve">the text displayed in the preview area.</doc>
21431           <type name="utf8" c:type="gchar*"/>
21432         </return-value>
21433       </method>
21434       <method name="get_size"
21435               c:identifier="gtk_font_selection_get_size"
21436               version="2.14">
21437         <doc xml:whitespace="preserve">The selected font size.
21438 or -1 if no font size is selected.</doc>
21439         <return-value transfer-ownership="none">
21440           <doc xml:whitespace="preserve">A n integer representing the selected font size,</doc>
21441           <type name="gint" c:type="gint"/>
21442         </return-value>
21443       </method>
21444       <method name="get_size_entry"
21445               c:identifier="gtk_font_selection_get_size_entry"
21446               version="2.14">
21447         <doc xml:whitespace="preserve">This returns the #GtkEntry used to allow the user to edit the font
21448 number manually instead of selecting it from the list of font sizes.</doc>
21449         <return-value transfer-ownership="none">
21450           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
21451           <type name="Widget" c:type="GtkWidget*"/>
21452         </return-value>
21453       </method>
21454       <method name="get_size_list"
21455               c:identifier="gtk_font_selection_get_size_list"
21456               version="2.14">
21457         <doc xml:whitespace="preserve">This returns the #GtkTreeeView used to list font sizes.</doc>
21458         <return-value transfer-ownership="none">
21459           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
21460           <type name="Widget" c:type="GtkWidget*"/>
21461         </return-value>
21462       </method>
21463       <method name="set_font_name"
21464               c:identifier="gtk_font_selection_set_font_name">
21465         <doc xml:whitespace="preserve">Sets the currently-selected font. 
21466 Note that the @fontsel needs to know the screen in which it will appear 
21467 for this to work; this can be guaranteed by simply making sure that the 
21468 such font exists or if the @fontsel doesn't belong to a particular 
21469 screen yet.</doc>
21470         <return-value transfer-ownership="none">
21471           <doc xml:whitespace="preserve">%TRUE if the font could be set successfully; %FALSE if no</doc>
21472           <type name="gboolean" c:type="gboolean"/>
21473         </return-value>
21474         <parameters>
21475           <parameter name="fontname" transfer-ownership="none">
21476             <doc xml:whitespace="preserve">a font name like "Helvetica 12" or "Times Bold 18"</doc>
21477             <type name="utf8" c:type="gchar*"/>
21478           </parameter>
21479         </parameters>
21480       </method>
21481       <method name="set_preview_text"
21482               c:identifier="gtk_font_selection_set_preview_text">
21483         <doc xml:whitespace="preserve">Sets the text displayed in the preview area.
21484 The @text is used to show how the selected font looks.</doc>
21485         <return-value transfer-ownership="none">
21486           <type name="none" c:type="void"/>
21487         </return-value>
21488         <parameters>
21489           <parameter name="text" transfer-ownership="none">
21490             <doc xml:whitespace="preserve">the text to display in the preview area</doc>
21491             <type name="utf8" c:type="gchar*"/>
21492           </parameter>
21493         </parameters>
21494       </method>
21495       <property name="font-name" writable="1" transfer-ownership="none">
21496         <type name="utf8"/>
21497       </property>
21498       <property name="preview-text" writable="1" transfer-ownership="none">
21499         <type name="utf8"/>
21500       </property>
21501       <field name="parent_instance">
21502         <type name="VBox" c:type="GtkVBox"/>
21503       </field>
21504       <field name="priv" readable="0" private="1">
21505         <type name="FontSelectionPrivate" c:type="GtkFontSelectionPrivate*"/>
21506       </field>
21507     </class>
21508     <record name="FontSelectionClass"
21509             c:type="GtkFontSelectionClass"
21510             glib:is-gtype-struct-for="FontSelection">
21511       <field name="parent_class">
21512         <type name="VBoxClass" c:type="GtkVBoxClass"/>
21513       </field>
21514       <field name="_gtk_reserved1" introspectable="0">
21515         <callback name="_gtk_reserved1">
21516           <return-value transfer-ownership="none">
21517             <type name="none" c:type="void"/>
21518           </return-value>
21519         </callback>
21520       </field>
21521       <field name="_gtk_reserved2" introspectable="0">
21522         <callback name="_gtk_reserved2">
21523           <return-value transfer-ownership="none">
21524             <type name="none" c:type="void"/>
21525           </return-value>
21526         </callback>
21527       </field>
21528       <field name="_gtk_reserved3" introspectable="0">
21529         <callback name="_gtk_reserved3">
21530           <return-value transfer-ownership="none">
21531             <type name="none" c:type="void"/>
21532           </return-value>
21533         </callback>
21534       </field>
21535       <field name="_gtk_reserved4" introspectable="0">
21536         <callback name="_gtk_reserved4">
21537           <return-value transfer-ownership="none">
21538             <type name="none" c:type="void"/>
21539           </return-value>
21540         </callback>
21541       </field>
21542     </record>
21543     <class name="FontSelectionDialog"
21544            c:symbol-prefix="font_selection_dialog"
21545            c:type="GtkFontSelectionDialog"
21546            parent="Dialog"
21547            glib:type-name="GtkFontSelectionDialog"
21548            glib:get-type="gtk_font_selection_dialog_get_type"
21549            glib:type-struct="FontSelectionDialogClass">
21550       <implements name="Atk.ImplementorIface"/>
21551       <implements name="Buildable"/>
21552       <implements name="SizeRequest"/>
21553       <constructor name="new" c:identifier="gtk_font_selection_dialog_new">
21554         <doc xml:whitespace="preserve">Creates a new #GtkFontSelectionDialog.</doc>
21555         <return-value transfer-ownership="none">
21556           <doc xml:whitespace="preserve">a new #GtkFontSelectionDialog</doc>
21557           <type name="Widget" c:type="GtkWidget*"/>
21558         </return-value>
21559         <parameters>
21560           <parameter name="title" transfer-ownership="none">
21561             <doc xml:whitespace="preserve">the title of the dialog window</doc>
21562             <type name="utf8" c:type="gchar*"/>
21563           </parameter>
21564         </parameters>
21565       </constructor>
21566       <method name="get_cancel_button"
21567               c:identifier="gtk_font_selection_dialog_get_cancel_button"
21568               version="2.14">
21569         <doc xml:whitespace="preserve">Gets the 'Cancel' button.
21570 for the 'Cancel' button.</doc>
21571         <return-value transfer-ownership="none">
21572           <doc xml:whitespace="preserve">the #GtkWidget used in the dialog</doc>
21573           <type name="Widget" c:type="GtkWidget*"/>
21574         </return-value>
21575       </method>
21576       <method name="get_font_name"
21577               c:identifier="gtk_font_selection_dialog_get_font_name">
21578         <doc xml:whitespace="preserve">Gets the currently-selected font name.
21579 Note that this can be a different string than what you set with 
21580 gtk_font_selection_dialog_set_font_name(), as the font selection widget
21581 may normalize font names and thus return a string with a different 
21582 structure. For example, "Helvetica Italic Bold 12" could be normalized 
21583 to "Helvetica Bold Italic 12".  Use pango_font_description_equal()
21584 if you want to compare two font descriptions.
21585 font is selected. You must free this string with g_free().</doc>
21586         <return-value transfer-ownership="full">
21587           <doc xml:whitespace="preserve">A string with the name of the current font, or %NULL if no</doc>
21588           <type name="utf8" c:type="gchar*"/>
21589         </return-value>
21590       </method>
21591       <method name="get_font_selection"
21592               c:identifier="gtk_font_selection_dialog_get_font_selection"
21593               version="2.22">
21594         <doc xml:whitespace="preserve">Retrieves the #GtkFontSelection widget embedded in the dialog.</doc>
21595         <return-value transfer-ownership="none">
21596           <doc xml:whitespace="preserve">the embedded #GtkFontSelection</doc>
21597           <type name="Widget" c:type="GtkWidget*"/>
21598         </return-value>
21599       </method>
21600       <method name="get_ok_button"
21601               c:identifier="gtk_font_selection_dialog_get_ok_button"
21602               version="2.14">
21603         <doc xml:whitespace="preserve">Gets the 'OK' button.
21604 for the 'OK' button.</doc>
21605         <return-value transfer-ownership="none">
21606           <doc xml:whitespace="preserve">the #GtkWidget used in the dialog</doc>
21607           <type name="Widget" c:type="GtkWidget*"/>
21608         </return-value>
21609       </method>
21610       <method name="get_preview_text"
21611               c:identifier="gtk_font_selection_dialog_get_preview_text">
21612         <doc xml:whitespace="preserve">Gets the text displayed in the preview area.
21613 This string is owned by the widget and should not be 
21614 modified or freed</doc>
21615         <return-value transfer-ownership="none">
21616           <doc xml:whitespace="preserve">the text displayed in the preview area.</doc>
21617           <type name="utf8" c:type="gchar*"/>
21618         </return-value>
21619       </method>
21620       <method name="set_font_name"
21621               c:identifier="gtk_font_selection_dialog_set_font_name">
21622         <doc xml:whitespace="preserve">Sets the currently selected font.</doc>
21623         <return-value transfer-ownership="none">
21624           <doc xml:whitespace="preserve">%TRUE if the font selected in @fsd is now the</doc>
21625           <type name="gboolean" c:type="gboolean"/>
21626         </return-value>
21627         <parameters>
21628           <parameter name="fontname" transfer-ownership="none">
21629             <doc xml:whitespace="preserve">a font name like "Helvetica 12" or "Times Bold 18"</doc>
21630             <type name="utf8" c:type="gchar*"/>
21631           </parameter>
21632         </parameters>
21633       </method>
21634       <method name="set_preview_text"
21635               c:identifier="gtk_font_selection_dialog_set_preview_text">
21636         <doc xml:whitespace="preserve">Sets the text displayed in the preview area.</doc>
21637         <return-value transfer-ownership="none">
21638           <type name="none" c:type="void"/>
21639         </return-value>
21640         <parameters>
21641           <parameter name="text" transfer-ownership="none">
21642             <doc xml:whitespace="preserve">the text to display in the preview area</doc>
21643             <type name="utf8" c:type="gchar*"/>
21644           </parameter>
21645         </parameters>
21646       </method>
21647       <field name="parent_instance">
21648         <type name="Dialog" c:type="GtkDialog"/>
21649       </field>
21650       <field name="priv">
21651         <type name="FontSelectionDialogPrivate"
21652               c:type="GtkFontSelectionDialogPrivate*"/>
21653       </field>
21654     </class>
21655     <record name="FontSelectionDialogClass"
21656             c:type="GtkFontSelectionDialogClass"
21657             glib:is-gtype-struct-for="FontSelectionDialog">
21658       <field name="parent_class">
21659         <type name="DialogClass" c:type="GtkDialogClass"/>
21660       </field>
21661       <field name="_gtk_reserved1" introspectable="0">
21662         <callback name="_gtk_reserved1">
21663           <return-value transfer-ownership="none">
21664             <type name="none" c:type="void"/>
21665           </return-value>
21666         </callback>
21667       </field>
21668       <field name="_gtk_reserved2" introspectable="0">
21669         <callback name="_gtk_reserved2">
21670           <return-value transfer-ownership="none">
21671             <type name="none" c:type="void"/>
21672           </return-value>
21673         </callback>
21674       </field>
21675       <field name="_gtk_reserved3" introspectable="0">
21676         <callback name="_gtk_reserved3">
21677           <return-value transfer-ownership="none">
21678             <type name="none" c:type="void"/>
21679           </return-value>
21680         </callback>
21681       </field>
21682       <field name="_gtk_reserved4" introspectable="0">
21683         <callback name="_gtk_reserved4">
21684           <return-value transfer-ownership="none">
21685             <type name="none" c:type="void"/>
21686           </return-value>
21687         </callback>
21688       </field>
21689     </record>
21690     <record name="FontSelectionDialogPrivate"
21691             c:type="GtkFontSelectionDialogPrivate"
21692             disguised="1">
21693     </record>
21694     <record name="FontSelectionPrivate"
21695             c:type="GtkFontSelectionPrivate"
21696             disguised="1">
21697     </record>
21698     <class name="Frame"
21699            c:symbol-prefix="frame"
21700            c:type="GtkFrame"
21701            parent="Bin"
21702            glib:type-name="GtkFrame"
21703            glib:get-type="gtk_frame_get_type"
21704            glib:type-struct="FrameClass">
21705       <implements name="Atk.ImplementorIface"/>
21706       <implements name="Buildable"/>
21707       <implements name="SizeRequest"/>
21708       <constructor name="new" c:identifier="gtk_frame_new">
21709         <doc xml:whitespace="preserve">Creates a new #GtkFrame, with optional label @label.
21710 If @label is %NULL, the label is omitted.</doc>
21711         <return-value transfer-ownership="none">
21712           <doc xml:whitespace="preserve">a new #GtkFrame widget</doc>
21713           <type name="Widget" c:type="GtkWidget*"/>
21714         </return-value>
21715         <parameters>
21716           <parameter name="label" transfer-ownership="none">
21717             <doc xml:whitespace="preserve">the text to use as the label of the frame</doc>
21718             <type name="utf8" c:type="gchar*"/>
21719           </parameter>
21720         </parameters>
21721       </constructor>
21722       <virtual-method name="compute_child_allocation">
21723         <return-value transfer-ownership="none">
21724           <type name="none" c:type="void"/>
21725         </return-value>
21726         <parameters>
21727           <parameter name="allocation" transfer-ownership="none">
21728             <type name="Allocation" c:type="GtkAllocation*"/>
21729           </parameter>
21730         </parameters>
21731       </virtual-method>
21732       <method name="get_label" c:identifier="gtk_frame_get_label">
21733         <doc xml:whitespace="preserve">If the frame's label widget is a #GtkLabel, returns the
21734 text in the label widget. (The frame will have a #GtkLabel
21735 for the label widget if a non-%NULL argument was passed
21736 to gtk_frame_new().)
21737 was no label widget or the lable widget was not
21738 a #GtkLabel. This string is owned by GTK+ and
21739 must not be modified or freed.</doc>
21740         <return-value transfer-ownership="none">
21741           <doc xml:whitespace="preserve">the text in the label, or %NULL if there</doc>
21742           <type name="utf8" c:type="gchar*"/>
21743         </return-value>
21744       </method>
21745       <method name="get_label_align" c:identifier="gtk_frame_get_label_align">
21746         <doc xml:whitespace="preserve">Retrieves the X and Y alignment of the frame's label. See
21747 gtk_frame_set_label_align().</doc>
21748         <return-value transfer-ownership="none">
21749           <type name="none" c:type="void"/>
21750         </return-value>
21751         <parameters>
21752           <parameter name="xalign" transfer-ownership="none" allow-none="1">
21753             <doc xml:whitespace="preserve">location to store X alignment of frame's label, or %NULL</doc>
21754             <type name="gfloat" c:type="gfloat*"/>
21755           </parameter>
21756           <parameter name="yalign" transfer-ownership="none" allow-none="1">
21757             <doc xml:whitespace="preserve">location to store X alignment of frame's label, or %NULL</doc>
21758             <type name="gfloat" c:type="gfloat*"/>
21759           </parameter>
21760         </parameters>
21761       </method>
21762       <method name="get_label_widget"
21763               c:identifier="gtk_frame_get_label_widget">
21764         <doc xml:whitespace="preserve">Retrieves the label widget for the frame. See
21765 gtk_frame_set_label_widget().</doc>
21766         <return-value transfer-ownership="none">
21767           <doc xml:whitespace="preserve">the label widget, or %NULL if there is none.</doc>
21768           <type name="Widget" c:type="GtkWidget*"/>
21769         </return-value>
21770       </method>
21771       <method name="get_shadow_type" c:identifier="gtk_frame_get_shadow_type">
21772         <doc xml:whitespace="preserve">Retrieves the shadow type of the frame. See
21773 gtk_frame_set_shadow_type().</doc>
21774         <return-value transfer-ownership="none">
21775           <doc xml:whitespace="preserve">the current shadow type of the frame.</doc>
21776           <type name="ShadowType" c:type="GtkShadowType"/>
21777         </return-value>
21778       </method>
21779       <method name="set_label" c:identifier="gtk_frame_set_label">
21780         <doc xml:whitespace="preserve">Sets the text of the label. If @label is %NULL,
21781 the current label is removed.</doc>
21782         <return-value transfer-ownership="none">
21783           <type name="none" c:type="void"/>
21784         </return-value>
21785         <parameters>
21786           <parameter name="label" transfer-ownership="none" allow-none="1">
21787             <doc xml:whitespace="preserve">the text to use as the label of the frame</doc>
21788             <type name="utf8" c:type="gchar*"/>
21789           </parameter>
21790         </parameters>
21791       </method>
21792       <method name="set_label_align" c:identifier="gtk_frame_set_label_align">
21793         <doc xml:whitespace="preserve">Sets the alignment of the frame widget's label. The
21794 default values for a newly created frame are 0.0 and 0.5.</doc>
21795         <return-value transfer-ownership="none">
21796           <type name="none" c:type="void"/>
21797         </return-value>
21798         <parameters>
21799           <parameter name="xalign" transfer-ownership="none">
21800             <doc xml:whitespace="preserve">The position of the label along the top edge of the widget. A value of 0.0 represents left alignment; 1.0 represents right alignment.</doc>
21801             <type name="gfloat" c:type="gfloat"/>
21802           </parameter>
21803           <parameter name="yalign" transfer-ownership="none">
21804             <doc xml:whitespace="preserve">The y alignment of the label. A value of 0.0 aligns under the frame; 1.0 aligns above the frame. If the values are exactly 0.0 or 1.0 the gap in the frame won't be painted because the label will be completely above or below the frame.</doc>
21805             <type name="gfloat" c:type="gfloat"/>
21806           </parameter>
21807         </parameters>
21808       </method>
21809       <method name="set_label_widget"
21810               c:identifier="gtk_frame_set_label_widget">
21811         <doc xml:whitespace="preserve">Sets the label widget for the frame. This is the widget that
21812 will appear embedded in the top edge of the frame as a
21813 title.</doc>
21814         <return-value transfer-ownership="none">
21815           <type name="none" c:type="void"/>
21816         </return-value>
21817         <parameters>
21818           <parameter name="label_widget" transfer-ownership="none">
21819             <doc xml:whitespace="preserve">the new label widget</doc>
21820             <type name="Widget" c:type="GtkWidget*"/>
21821           </parameter>
21822         </parameters>
21823       </method>
21824       <method name="set_shadow_type" c:identifier="gtk_frame_set_shadow_type">
21825         <doc xml:whitespace="preserve">Sets the shadow type for @frame.</doc>
21826         <return-value transfer-ownership="none">
21827           <type name="none" c:type="void"/>
21828         </return-value>
21829         <parameters>
21830           <parameter name="type" transfer-ownership="none">
21831             <doc xml:whitespace="preserve">the new #GtkShadowType</doc>
21832             <type name="ShadowType" c:type="GtkShadowType"/>
21833           </parameter>
21834         </parameters>
21835       </method>
21836       <property name="label" writable="1" transfer-ownership="none">
21837         <type name="utf8"/>
21838       </property>
21839       <property name="label-widget" writable="1" transfer-ownership="none">
21840         <type name="Widget"/>
21841       </property>
21842       <property name="label-xalign" writable="1" transfer-ownership="none">
21843         <type name="gfloat"/>
21844       </property>
21845       <property name="label-yalign" writable="1" transfer-ownership="none">
21846         <type name="gfloat"/>
21847       </property>
21848       <property name="shadow-type" writable="1" transfer-ownership="none">
21849         <type name="ShadowType"/>
21850       </property>
21851       <field name="bin">
21852         <type name="Bin" c:type="GtkBin"/>
21853       </field>
21854       <field name="priv" readable="0" private="1">
21855         <type name="FramePrivate" c:type="GtkFramePrivate*"/>
21856       </field>
21857     </class>
21858     <record name="FrameClass"
21859             c:type="GtkFrameClass"
21860             glib:is-gtype-struct-for="Frame">
21861       <field name="parent_class">
21862         <type name="BinClass" c:type="GtkBinClass"/>
21863       </field>
21864       <field name="compute_child_allocation">
21865         <callback name="compute_child_allocation">
21866           <return-value transfer-ownership="none">
21867             <type name="none" c:type="void"/>
21868           </return-value>
21869           <parameters>
21870             <parameter name="frame" transfer-ownership="none">
21871               <type name="Frame" c:type="GtkFrame*"/>
21872             </parameter>
21873             <parameter name="allocation" transfer-ownership="none">
21874               <type name="Allocation" c:type="GtkAllocation*"/>
21875             </parameter>
21876           </parameters>
21877         </callback>
21878       </field>
21879     </record>
21880     <record name="FramePrivate" c:type="GtkFramePrivate" disguised="1">
21881     </record>
21882     <callback name="Function" c:type="GtkFunction">
21883       <doc xml:whitespace="preserve">Defines a function pointer.</doc>
21884       <return-value transfer-ownership="none">
21885         <doc xml:whitespace="preserve">#gint</doc>
21886         <type name="gboolean" c:type="gboolean"/>
21887       </return-value>
21888       <parameters>
21889         <parameter name="data" transfer-ownership="none">
21890           <doc xml:whitespace="preserve">#gpointer</doc>
21891           <type name="gpointer" c:type="gpointer"/>
21892         </parameter>
21893       </parameters>
21894     </callback>
21895     <class name="HBox"
21896            c:symbol-prefix="hbox"
21897            c:type="GtkHBox"
21898            parent="Box"
21899            glib:type-name="GtkHBox"
21900            glib:get-type="gtk_hbox_get_type"
21901            glib:type-struct="HBoxClass">
21902       <implements name="Atk.ImplementorIface"/>
21903       <implements name="Buildable"/>
21904       <implements name="Orientable"/>
21905       <implements name="SizeRequest"/>
21906       <constructor name="new" c:identifier="gtk_hbox_new">
21907         <doc xml:whitespace="preserve">Creates a new #GtkHBox.</doc>
21908         <return-value transfer-ownership="none">
21909           <doc xml:whitespace="preserve">a new #GtkHBox.</doc>
21910           <type name="Widget" c:type="GtkWidget*"/>
21911         </return-value>
21912         <parameters>
21913           <parameter name="homogeneous" transfer-ownership="none">
21914             <doc xml:whitespace="preserve">%TRUE if all children are to be given equal space allotments.</doc>
21915             <type name="gboolean" c:type="gboolean"/>
21916           </parameter>
21917           <parameter name="spacing" transfer-ownership="none">
21918             <doc xml:whitespace="preserve">the number of pixels to place by default between children.</doc>
21919             <type name="gint" c:type="gint"/>
21920           </parameter>
21921         </parameters>
21922       </constructor>
21923       <field name="box">
21924         <type name="Box" c:type="GtkBox"/>
21925       </field>
21926     </class>
21927     <record name="HBoxClass"
21928             c:type="GtkHBoxClass"
21929             glib:is-gtype-struct-for="HBox">
21930       <field name="parent_class">
21931         <type name="BoxClass" c:type="GtkBoxClass"/>
21932       </field>
21933     </record>
21934     <class name="HButtonBox"
21935            c:symbol-prefix="hbutton_box"
21936            c:type="GtkHButtonBox"
21937            parent="ButtonBox"
21938            glib:type-name="GtkHButtonBox"
21939            glib:get-type="gtk_hbutton_box_get_type"
21940            glib:type-struct="HButtonBoxClass">
21941       <implements name="Atk.ImplementorIface"/>
21942       <implements name="Buildable"/>
21943       <implements name="Orientable"/>
21944       <implements name="SizeRequest"/>
21945       <constructor name="new" c:identifier="gtk_hbutton_box_new">
21946         <return-value transfer-ownership="none">
21947           <type name="Widget" c:type="GtkWidget*"/>
21948         </return-value>
21949       </constructor>
21950       <field name="button_box">
21951         <type name="ButtonBox" c:type="GtkButtonBox"/>
21952       </field>
21953     </class>
21954     <record name="HButtonBoxClass"
21955             c:type="GtkHButtonBoxClass"
21956             glib:is-gtype-struct-for="HButtonBox">
21957       <field name="parent_class">
21958         <type name="ButtonBoxClass" c:type="GtkButtonBoxClass"/>
21959       </field>
21960     </record>
21961     <class name="HPaned"
21962            c:symbol-prefix="hpaned"
21963            c:type="GtkHPaned"
21964            parent="Paned"
21965            glib:type-name="GtkHPaned"
21966            glib:get-type="gtk_hpaned_get_type"
21967            glib:type-struct="HPanedClass">
21968       <implements name="Atk.ImplementorIface"/>
21969       <implements name="Buildable"/>
21970       <implements name="Orientable"/>
21971       <implements name="SizeRequest"/>
21972       <constructor name="new" c:identifier="gtk_hpaned_new">
21973         <return-value transfer-ownership="none">
21974           <type name="Widget" c:type="GtkWidget*"/>
21975         </return-value>
21976       </constructor>
21977       <field name="paned">
21978         <type name="Paned" c:type="GtkPaned"/>
21979       </field>
21980     </class>
21981     <record name="HPanedClass"
21982             c:type="GtkHPanedClass"
21983             glib:is-gtype-struct-for="HPaned">
21984       <field name="parent_class">
21985         <type name="PanedClass" c:type="GtkPanedClass"/>
21986       </field>
21987     </record>
21988     <class name="HRuler"
21989            c:symbol-prefix="hruler"
21990            c:type="GtkHRuler"
21991            parent="Ruler"
21992            glib:type-name="GtkHRuler"
21993            glib:get-type="gtk_hruler_get_type"
21994            glib:type-struct="HRulerClass">
21995       <implements name="Atk.ImplementorIface"/>
21996       <implements name="Buildable"/>
21997       <implements name="Orientable"/>
21998       <implements name="SizeRequest"/>
21999       <constructor name="new" c:identifier="gtk_hruler_new">
22000         <return-value transfer-ownership="none">
22001           <type name="Widget" c:type="GtkWidget*"/>
22002         </return-value>
22003       </constructor>
22004       <field name="ruler">
22005         <type name="Ruler" c:type="GtkRuler"/>
22006       </field>
22007     </class>
22008     <record name="HRulerClass"
22009             c:type="GtkHRulerClass"
22010             glib:is-gtype-struct-for="HRuler">
22011       <field name="parent_class">
22012         <type name="RulerClass" c:type="GtkRulerClass"/>
22013       </field>
22014     </record>
22015     <class name="HSV"
22016            c:symbol-prefix="hsv"
22017            c:type="GtkHSV"
22018            parent="Widget"
22019            glib:type-name="GtkHSV"
22020            glib:get-type="gtk_hsv_get_type"
22021            glib:type-struct="HSVClass">
22022       <implements name="Atk.ImplementorIface"/>
22023       <implements name="Buildable"/>
22024       <implements name="SizeRequest"/>
22025       <constructor name="new" c:identifier="gtk_hsv_new" version="2.14">
22026         <doc xml:whitespace="preserve">Creates a new HSV color selector.</doc>
22027         <return-value transfer-ownership="none">
22028           <doc xml:whitespace="preserve">A newly-created HSV color selector.</doc>
22029           <type name="Widget" c:type="GtkWidget*"/>
22030         </return-value>
22031       </constructor>
22032       <function name="to_rgb" c:identifier="gtk_hsv_to_rgb" version="2.14">
22033         <doc xml:whitespace="preserve">Converts a color from HSV space to RGB.
22034 Input values must be in the [0.0, 1.0] range; 
22035 output values will be in the same range.</doc>
22036         <return-value transfer-ownership="none">
22037           <type name="none" c:type="void"/>
22038         </return-value>
22039         <parameters>
22040           <parameter name="h" transfer-ownership="none">
22041             <doc xml:whitespace="preserve">Hue</doc>
22042             <type name="gdouble" c:type="gdouble"/>
22043           </parameter>
22044           <parameter name="s" transfer-ownership="none">
22045             <doc xml:whitespace="preserve">Saturation</doc>
22046             <type name="gdouble" c:type="gdouble"/>
22047           </parameter>
22048           <parameter name="v" transfer-ownership="none">
22049             <doc xml:whitespace="preserve">Value</doc>
22050             <type name="gdouble" c:type="gdouble"/>
22051           </parameter>
22052           <parameter name="r" transfer-ownership="none">
22053             <doc xml:whitespace="preserve">Return value for the red component</doc>
22054             <type name="gdouble" c:type="gdouble*"/>
22055           </parameter>
22056           <parameter name="g" transfer-ownership="none">
22057             <doc xml:whitespace="preserve">Return value for the green component</doc>
22058             <type name="gdouble" c:type="gdouble*"/>
22059           </parameter>
22060           <parameter name="b" transfer-ownership="none">
22061             <doc xml:whitespace="preserve">Return value for the blue component</doc>
22062             <type name="gdouble" c:type="gdouble*"/>
22063           </parameter>
22064         </parameters>
22065       </function>
22066       <method name="get_color" c:identifier="gtk_hsv_get_color" version="2.14">
22067         <doc xml:whitespace="preserve">Queries the current color in an HSV color selector.
22068 Returned values will be in the [0.0, 1.0] range.</doc>
22069         <return-value transfer-ownership="none">
22070           <type name="none" c:type="void"/>
22071         </return-value>
22072         <parameters>
22073           <parameter name="h" transfer-ownership="none">
22074             <doc xml:whitespace="preserve">Return value for the hue</doc>
22075             <type name="gdouble" c:type="gdouble*"/>
22076           </parameter>
22077           <parameter name="s" transfer-ownership="none">
22078             <doc xml:whitespace="preserve">Return value for the saturation</doc>
22079             <type name="gdouble" c:type="gdouble*"/>
22080           </parameter>
22081           <parameter name="v" transfer-ownership="none">
22082             <doc xml:whitespace="preserve">Return value for the value</doc>
22083             <type name="gdouble" c:type="gdouble*"/>
22084           </parameter>
22085         </parameters>
22086       </method>
22087       <method name="get_metrics"
22088               c:identifier="gtk_hsv_get_metrics"
22089               version="2.14">
22090         <doc xml:whitespace="preserve">Queries the size and ring width of an HSV color selector.</doc>
22091         <return-value transfer-ownership="none">
22092           <type name="none" c:type="void"/>
22093         </return-value>
22094         <parameters>
22095           <parameter name="size" transfer-ownership="none">
22096             <doc xml:whitespace="preserve">Return value for the diameter of the hue ring</doc>
22097             <type name="gint" c:type="gint*"/>
22098           </parameter>
22099           <parameter name="ring_width" transfer-ownership="none">
22100             <doc xml:whitespace="preserve">Return value for the width of the hue ring</doc>
22101             <type name="gint" c:type="gint*"/>
22102           </parameter>
22103         </parameters>
22104       </method>
22105       <method name="is_adjusting"
22106               c:identifier="gtk_hsv_is_adjusting"
22107               version="2.14">
22108         <doc xml:whitespace="preserve">An HSV color selector can be said to be adjusting if multiple rapid
22109 changes are being made to its value, for example, when the user is 
22110 adjusting the value with the mouse. This function queries whether 
22111 the HSV color selector is being adjusted or not.
22112 since they may be transitory, or %FALSE if they should consider
22113 the color value status to be final.</doc>
22114         <return-value transfer-ownership="none">
22115           <doc xml:whitespace="preserve">%TRUE if clients can ignore changes to the color value,</doc>
22116           <type name="gboolean" c:type="gboolean"/>
22117         </return-value>
22118       </method>
22119       <method name="set_color" c:identifier="gtk_hsv_set_color" version="2.14">
22120         <doc xml:whitespace="preserve">Sets the current color in an HSV color selector.
22121 Color component values must be in the [0.0, 1.0] range.</doc>
22122         <return-value transfer-ownership="none">
22123           <type name="none" c:type="void"/>
22124         </return-value>
22125         <parameters>
22126           <parameter name="h" transfer-ownership="none">
22127             <doc xml:whitespace="preserve">Hue</doc>
22128             <type name="gdouble" c:type="double"/>
22129           </parameter>
22130           <parameter name="s" transfer-ownership="none">
22131             <doc xml:whitespace="preserve">Saturation</doc>
22132             <type name="gdouble" c:type="double"/>
22133           </parameter>
22134           <parameter name="v" transfer-ownership="none">
22135             <doc xml:whitespace="preserve">Value</doc>
22136             <type name="gdouble" c:type="double"/>
22137           </parameter>
22138         </parameters>
22139       </method>
22140       <method name="set_metrics"
22141               c:identifier="gtk_hsv_set_metrics"
22142               version="2.14">
22143         <doc xml:whitespace="preserve">Sets the size and ring width of an HSV color selector.</doc>
22144         <return-value transfer-ownership="none">
22145           <type name="none" c:type="void"/>
22146         </return-value>
22147         <parameters>
22148           <parameter name="size" transfer-ownership="none">
22149             <doc xml:whitespace="preserve">Diameter for the hue ring</doc>
22150             <type name="gint" c:type="gint"/>
22151           </parameter>
22152           <parameter name="ring_width" transfer-ownership="none">
22153             <doc xml:whitespace="preserve">Width of the hue ring</doc>
22154             <type name="gint" c:type="gint"/>
22155           </parameter>
22156         </parameters>
22157       </method>
22158       <field name="parent_instance">
22159         <type name="Widget" c:type="GtkWidget"/>
22160       </field>
22161       <field name="priv" readable="0" private="1">
22162         <type name="HSVPrivate" c:type="GtkHSVPrivate*"/>
22163       </field>
22164       <glib:signal name="changed">
22165         <return-value transfer-ownership="none">
22166           <type name="none"/>
22167         </return-value>
22168       </glib:signal>
22169       <glib:signal name="move">
22170         <return-value transfer-ownership="none">
22171           <type name="none"/>
22172         </return-value>
22173         <parameters>
22174           <parameter name="object" transfer-ownership="none">
22175             <type name="DirectionType"/>
22176           </parameter>
22177         </parameters>
22178       </glib:signal>
22179     </class>
22180     <record name="HSVClass"
22181             c:type="GtkHSVClass"
22182             glib:is-gtype-struct-for="HSV">
22183       <field name="parent_class">
22184         <type name="WidgetClass" c:type="GtkWidgetClass"/>
22185       </field>
22186       <field name="changed">
22187         <callback name="changed">
22188           <return-value transfer-ownership="none">
22189             <type name="none" c:type="void"/>
22190           </return-value>
22191           <parameters>
22192             <parameter name="hsv" transfer-ownership="none">
22193               <type name="HSV" c:type="GtkHSV*"/>
22194             </parameter>
22195           </parameters>
22196         </callback>
22197       </field>
22198       <field name="move">
22199         <callback name="move">
22200           <return-value transfer-ownership="none">
22201             <type name="none" c:type="void"/>
22202           </return-value>
22203           <parameters>
22204             <parameter name="hsv" transfer-ownership="none">
22205               <type name="HSV" c:type="GtkHSV*"/>
22206             </parameter>
22207             <parameter name="type" transfer-ownership="none">
22208               <type name="DirectionType" c:type="GtkDirectionType"/>
22209             </parameter>
22210           </parameters>
22211         </callback>
22212       </field>
22213       <field name="_gtk_reserved1" introspectable="0">
22214         <callback name="_gtk_reserved1">
22215           <return-value transfer-ownership="none">
22216             <type name="none" c:type="void"/>
22217           </return-value>
22218         </callback>
22219       </field>
22220       <field name="_gtk_reserved2" introspectable="0">
22221         <callback name="_gtk_reserved2">
22222           <return-value transfer-ownership="none">
22223             <type name="none" c:type="void"/>
22224           </return-value>
22225         </callback>
22226       </field>
22227       <field name="_gtk_reserved3" introspectable="0">
22228         <callback name="_gtk_reserved3">
22229           <return-value transfer-ownership="none">
22230             <type name="none" c:type="void"/>
22231           </return-value>
22232         </callback>
22233       </field>
22234       <field name="_gtk_reserved4" introspectable="0">
22235         <callback name="_gtk_reserved4">
22236           <return-value transfer-ownership="none">
22237             <type name="none" c:type="void"/>
22238           </return-value>
22239         </callback>
22240       </field>
22241     </record>
22242     <record name="HSVPrivate" c:type="GtkHSVPrivate" disguised="1">
22243     </record>
22244     <class name="HScale"
22245            c:symbol-prefix="hscale"
22246            c:type="GtkHScale"
22247            parent="Scale"
22248            glib:type-name="GtkHScale"
22249            glib:get-type="gtk_hscale_get_type"
22250            glib:type-struct="HScaleClass">
22251       <implements name="Atk.ImplementorIface"/>
22252       <implements name="Buildable"/>
22253       <implements name="Orientable"/>
22254       <implements name="SizeRequest"/>
22255       <constructor name="new" c:identifier="gtk_hscale_new">
22256         <return-value transfer-ownership="none">
22257           <type name="Widget" c:type="GtkWidget*"/>
22258         </return-value>
22259         <parameters>
22260           <parameter name="adjustment" transfer-ownership="none">
22261             <type name="Adjustment" c:type="GtkAdjustment*"/>
22262           </parameter>
22263         </parameters>
22264       </constructor>
22265       <constructor name="new_with_range"
22266                    c:identifier="gtk_hscale_new_with_range">
22267         <doc xml:whitespace="preserve">Creates a new horizontal scale widget that lets the user input a
22268 number between @min and @max (including @min and @max) with the
22269 increment @step.  @step must be nonzero; it's the distance the
22270 slider moves when using the arrow keys to adjust the scale value.
22271 Note that the way in which the precision is derived works best if @step
22272 is a power of ten. If the resulting precision is not suitable for your
22273 needs, use gtk_scale_set_digits() to correct it.</doc>
22274         <return-value transfer-ownership="none">
22275           <doc xml:whitespace="preserve">a new #GtkHScale</doc>
22276           <type name="Widget" c:type="GtkWidget*"/>
22277         </return-value>
22278         <parameters>
22279           <parameter name="min" transfer-ownership="none">
22280             <doc xml:whitespace="preserve">minimum value</doc>
22281             <type name="gdouble" c:type="gdouble"/>
22282           </parameter>
22283           <parameter name="max" transfer-ownership="none">
22284             <doc xml:whitespace="preserve">maximum value</doc>
22285             <type name="gdouble" c:type="gdouble"/>
22286           </parameter>
22287           <parameter name="step" transfer-ownership="none">
22288             <doc xml:whitespace="preserve">step increment (tick size) used with keyboard shortcuts</doc>
22289             <type name="gdouble" c:type="gdouble"/>
22290           </parameter>
22291         </parameters>
22292       </constructor>
22293       <field name="scale">
22294         <type name="Scale" c:type="GtkScale"/>
22295       </field>
22296     </class>
22297     <record name="HScaleClass"
22298             c:type="GtkHScaleClass"
22299             glib:is-gtype-struct-for="HScale">
22300       <field name="parent_class">
22301         <type name="ScaleClass" c:type="GtkScaleClass"/>
22302       </field>
22303     </record>
22304     <class name="HScrollbar"
22305            c:symbol-prefix="hscrollbar"
22306            c:type="GtkHScrollbar"
22307            parent="Scrollbar"
22308            glib:type-name="GtkHScrollbar"
22309            glib:get-type="gtk_hscrollbar_get_type"
22310            glib:type-struct="HScrollbarClass">
22311       <implements name="Atk.ImplementorIface"/>
22312       <implements name="Buildable"/>
22313       <implements name="Orientable"/>
22314       <implements name="SizeRequest"/>
22315       <constructor name="new" c:identifier="gtk_hscrollbar_new">
22316         <doc xml:whitespace="preserve">Creates a new horizontal scrollbar.</doc>
22317         <return-value transfer-ownership="none">
22318           <doc xml:whitespace="preserve">the new #GtkHScrollbar</doc>
22319           <type name="Widget" c:type="GtkWidget*"/>
22320         </return-value>
22321         <parameters>
22322           <parameter name="adjustment"
22323                      transfer-ownership="none"
22324                      allow-none="1">
22325             <doc xml:whitespace="preserve">the #GtkAdjustment to use, or %NULL to create a new adjustment</doc>
22326             <type name="Adjustment" c:type="GtkAdjustment*"/>
22327           </parameter>
22328         </parameters>
22329       </constructor>
22330       <field name="scrollbar">
22331         <type name="Scrollbar" c:type="GtkScrollbar"/>
22332       </field>
22333     </class>
22334     <record name="HScrollbarClass"
22335             c:type="GtkHScrollbarClass"
22336             glib:is-gtype-struct-for="HScrollbar">
22337       <field name="parent_class">
22338         <type name="ScrollbarClass" c:type="GtkScrollbarClass"/>
22339       </field>
22340     </record>
22341     <class name="HSeparator"
22342            c:symbol-prefix="hseparator"
22343            c:type="GtkHSeparator"
22344            parent="Separator"
22345            glib:type-name="GtkHSeparator"
22346            glib:get-type="gtk_hseparator_get_type"
22347            glib:type-struct="HSeparatorClass">
22348       <implements name="Atk.ImplementorIface"/>
22349       <implements name="Buildable"/>
22350       <implements name="Orientable"/>
22351       <implements name="SizeRequest"/>
22352       <constructor name="new" c:identifier="gtk_hseparator_new">
22353         <return-value transfer-ownership="none">
22354           <type name="Widget" c:type="GtkWidget*"/>
22355         </return-value>
22356       </constructor>
22357       <field name="separator">
22358         <type name="Separator" c:type="GtkSeparator"/>
22359       </field>
22360     </class>
22361     <record name="HSeparatorClass"
22362             c:type="GtkHSeparatorClass"
22363             glib:is-gtype-struct-for="HSeparator">
22364       <field name="parent_class">
22365         <type name="SeparatorClass" c:type="GtkSeparatorClass"/>
22366       </field>
22367     </record>
22368     <class name="HandleBox"
22369            c:symbol-prefix="handle_box"
22370            c:type="GtkHandleBox"
22371            parent="Bin"
22372            glib:type-name="GtkHandleBox"
22373            glib:get-type="gtk_handle_box_get_type"
22374            glib:type-struct="HandleBoxClass">
22375       <implements name="Atk.ImplementorIface"/>
22376       <implements name="Buildable"/>
22377       <implements name="SizeRequest"/>
22378       <constructor name="new" c:identifier="gtk_handle_box_new">
22379         <return-value transfer-ownership="none">
22380           <type name="Widget" c:type="GtkWidget*"/>
22381         </return-value>
22382       </constructor>
22383       <method name="get_child_detached"
22384               c:identifier="gtk_handle_box_get_child_detached"
22385               version="2.14">
22386         <doc xml:whitespace="preserve">Whether the handlebox's child is currently detached.</doc>
22387         <return-value transfer-ownership="none">
22388           <doc xml:whitespace="preserve">%TRUE if the child is currently detached, otherwise %FALSE</doc>
22389           <type name="gboolean" c:type="gboolean"/>
22390         </return-value>
22391       </method>
22392       <method name="get_handle_position"
22393               c:identifier="gtk_handle_box_get_handle_position">
22394         <doc xml:whitespace="preserve">Gets the handle position of the handle box. See
22395 gtk_handle_box_set_handle_position().</doc>
22396         <return-value transfer-ownership="none">
22397           <doc xml:whitespace="preserve">the current handle position.</doc>
22398           <type name="PositionType" c:type="GtkPositionType"/>
22399         </return-value>
22400       </method>
22401       <method name="get_shadow_type"
22402               c:identifier="gtk_handle_box_get_shadow_type">
22403         <doc xml:whitespace="preserve">Gets the type of shadow drawn around the handle box. See
22404 gtk_handle_box_set_shadow_type().</doc>
22405         <return-value transfer-ownership="none">
22406           <doc xml:whitespace="preserve">the type of shadow currently drawn around the handle box.</doc>
22407           <type name="ShadowType" c:type="GtkShadowType"/>
22408         </return-value>
22409       </method>
22410       <method name="get_snap_edge" c:identifier="gtk_handle_box_get_snap_edge">
22411         <doc xml:whitespace="preserve">Gets the edge used for determining reattachment of the handle box. See
22412 gtk_handle_box_set_snap_edge().
22413 is determined (as per default) from the handle position.</doc>
22414         <return-value transfer-ownership="none">
22415           <doc xml:whitespace="preserve">the edge used for determining reattachment, or (GtkPositionType)-1 if this</doc>
22416           <type name="PositionType" c:type="GtkPositionType"/>
22417         </return-value>
22418       </method>
22419       <method name="set_handle_position"
22420               c:identifier="gtk_handle_box_set_handle_position">
22421         <return-value transfer-ownership="none">
22422           <type name="none" c:type="void"/>
22423         </return-value>
22424         <parameters>
22425           <parameter name="position" transfer-ownership="none">
22426             <type name="PositionType" c:type="GtkPositionType"/>
22427           </parameter>
22428         </parameters>
22429       </method>
22430       <method name="set_shadow_type"
22431               c:identifier="gtk_handle_box_set_shadow_type">
22432         <return-value transfer-ownership="none">
22433           <type name="none" c:type="void"/>
22434         </return-value>
22435         <parameters>
22436           <parameter name="type" transfer-ownership="none">
22437             <type name="ShadowType" c:type="GtkShadowType"/>
22438           </parameter>
22439         </parameters>
22440       </method>
22441       <method name="set_snap_edge" c:identifier="gtk_handle_box_set_snap_edge">
22442         <return-value transfer-ownership="none">
22443           <type name="none" c:type="void"/>
22444         </return-value>
22445         <parameters>
22446           <parameter name="edge" transfer-ownership="none">
22447             <type name="PositionType" c:type="GtkPositionType"/>
22448           </parameter>
22449         </parameters>
22450       </method>
22451       <property name="child-detached" transfer-ownership="none">
22452         <type name="gboolean"/>
22453       </property>
22454       <property name="handle-position" writable="1" transfer-ownership="none">
22455         <type name="PositionType"/>
22456       </property>
22457       <property name="shadow-type" writable="1" transfer-ownership="none">
22458         <type name="ShadowType"/>
22459       </property>
22460       <property name="snap-edge" writable="1" transfer-ownership="none">
22461         <type name="PositionType"/>
22462       </property>
22463       <property name="snap-edge-set" writable="1" transfer-ownership="none">
22464         <type name="gboolean"/>
22465       </property>
22466       <field name="bin">
22467         <type name="Bin" c:type="GtkBin"/>
22468       </field>
22469       <field name="priv" readable="0" private="1">
22470         <type name="HandleBoxPrivate" c:type="GtkHandleBoxPrivate*"/>
22471       </field>
22472       <glib:signal name="child-attached">
22473         <return-value transfer-ownership="none">
22474           <type name="none"/>
22475         </return-value>
22476         <parameters>
22477           <parameter name="object" transfer-ownership="none">
22478             <type name="Widget"/>
22479           </parameter>
22480         </parameters>
22481       </glib:signal>
22482       <glib:signal name="child-detached">
22483         <return-value transfer-ownership="none">
22484           <type name="none"/>
22485         </return-value>
22486         <parameters>
22487           <parameter name="object" transfer-ownership="none">
22488             <type name="Widget"/>
22489           </parameter>
22490         </parameters>
22491       </glib:signal>
22492     </class>
22493     <record name="HandleBoxClass"
22494             c:type="GtkHandleBoxClass"
22495             glib:is-gtype-struct-for="HandleBox">
22496       <field name="parent_class">
22497         <type name="BinClass" c:type="GtkBinClass"/>
22498       </field>
22499       <field name="child_attached">
22500         <callback name="child_attached">
22501           <return-value transfer-ownership="none">
22502             <type name="none" c:type="void"/>
22503           </return-value>
22504           <parameters>
22505             <parameter name="handle_box" transfer-ownership="none">
22506               <type name="HandleBox" c:type="GtkHandleBox*"/>
22507             </parameter>
22508             <parameter name="child" transfer-ownership="none">
22509               <type name="Widget" c:type="GtkWidget*"/>
22510             </parameter>
22511           </parameters>
22512         </callback>
22513       </field>
22514       <field name="child_detached">
22515         <callback name="child_detached">
22516           <return-value transfer-ownership="none">
22517             <type name="none" c:type="void"/>
22518           </return-value>
22519           <parameters>
22520             <parameter name="handle_box" transfer-ownership="none">
22521               <type name="HandleBox" c:type="GtkHandleBox*"/>
22522             </parameter>
22523             <parameter name="child" transfer-ownership="none">
22524               <type name="Widget" c:type="GtkWidget*"/>
22525             </parameter>
22526           </parameters>
22527         </callback>
22528       </field>
22529       <field name="_gtk_reserved1" introspectable="0">
22530         <callback name="_gtk_reserved1">
22531           <return-value transfer-ownership="none">
22532             <type name="none" c:type="void"/>
22533           </return-value>
22534         </callback>
22535       </field>
22536       <field name="_gtk_reserved2" introspectable="0">
22537         <callback name="_gtk_reserved2">
22538           <return-value transfer-ownership="none">
22539             <type name="none" c:type="void"/>
22540           </return-value>
22541         </callback>
22542       </field>
22543       <field name="_gtk_reserved3" introspectable="0">
22544         <callback name="_gtk_reserved3">
22545           <return-value transfer-ownership="none">
22546             <type name="none" c:type="void"/>
22547           </return-value>
22548         </callback>
22549       </field>
22550       <field name="_gtk_reserved4" introspectable="0">
22551         <callback name="_gtk_reserved4">
22552           <return-value transfer-ownership="none">
22553             <type name="none" c:type="void"/>
22554           </return-value>
22555         </callback>
22556       </field>
22557     </record>
22558     <record name="HandleBoxPrivate" c:type="GtkHandleBoxPrivate" disguised="1">
22559     </record>
22560     <class name="IMContext"
22561            c:symbol-prefix="im_context"
22562            c:type="GtkIMContext"
22563            parent="GObject.Object"
22564            abstract="1"
22565            glib:type-name="GtkIMContext"
22566            glib:get-type="gtk_im_context_get_type"
22567            glib:type-struct="IMContextClass">
22568       <virtual-method name="filter_keypress" invoker="filter_keypress">
22569         <doc xml:whitespace="preserve">Allow an input method to internally handle key press and release 
22570 events. If this function returns %TRUE, then no further processing
22571 should be done for this key event.</doc>
22572         <return-value transfer-ownership="none">
22573           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
22574           <type name="gboolean" c:type="gboolean"/>
22575         </return-value>
22576         <parameters>
22577           <parameter name="event" transfer-ownership="none">
22578             <doc xml:whitespace="preserve">the key event</doc>
22579             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
22580           </parameter>
22581         </parameters>
22582       </virtual-method>
22583       <virtual-method name="focus_in" invoker="focus_in">
22584         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
22585 input context corresponds has gained focus. The input method
22586 may, for example, change the displayed feedback to reflect
22587 this change.</doc>
22588         <return-value transfer-ownership="none">
22589           <type name="none" c:type="void"/>
22590         </return-value>
22591       </virtual-method>
22592       <virtual-method name="focus_out" invoker="focus_out">
22593         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
22594 input context corresponds has lost focus. The input method
22595 may, for example, change the displayed feedback or reset the contexts
22596 state to reflect this change.</doc>
22597         <return-value transfer-ownership="none">
22598           <type name="none" c:type="void"/>
22599         </return-value>
22600       </virtual-method>
22601       <virtual-method name="get_preedit_string" invoker="get_preedit_string">
22602         <doc xml:whitespace="preserve">Retrieve the current preedit string for the input context,
22603 and a list of attributes to apply to the string.
22604 This string should be displayed inserted at the insertion
22605 point.</doc>
22606         <return-value transfer-ownership="none">
22607           <type name="none" c:type="void"/>
22608         </return-value>
22609         <parameters>
22610           <parameter name="str" transfer-ownership="none">
22611             <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
22612             <type name="utf8" c:type="gchar**"/>
22613           </parameter>
22614           <parameter name="attrs" transfer-ownership="none">
22615             <doc xml:whitespace="preserve">location to store the retrieved attribute list. When you are done with this list, you must unreference it with pango_attr_list_unref().</doc>
22616             <type name="Pango.AttrList" c:type="PangoAttrList**"/>
22617           </parameter>
22618           <parameter name="cursor_pos" transfer-ownership="none">
22619             <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
22620             <type name="gint" c:type="gint*"/>
22621           </parameter>
22622         </parameters>
22623       </virtual-method>
22624       <virtual-method name="get_surrounding" invoker="get_surrounding">
22625         <doc xml:whitespace="preserve">Retrieves context around the insertion point. Input methods
22626 typically want context in order to constrain input text based on
22627 existing text; this is important for languages such as Thai where
22628 only some sequences of characters are allowed.
22629 This function is implemented by emitting the
22630 GtkIMContext::retrieve_surrounding signal on the input method; in
22631 response to this signal, a widget should provide as much context as
22632 is available, up to an entire paragraph, by calling
22633 gtk_im_context_set_surrounding(). Note that there is no obligation
22634 for a widget to respond to the ::retrieve_surrounding signal, so input
22635 methods must be prepared to function without context.
22636 you must free the result stored in *text.</doc>
22637         <return-value transfer-ownership="none">
22638           <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
22639           <type name="gboolean" c:type="gboolean"/>
22640         </return-value>
22641         <parameters>
22642           <parameter name="text" transfer-ownership="none">
22643             <doc xml:whitespace="preserve">location to store a UTF-8 encoded string of text holding context around the insertion point. If the function returns %TRUE, then you must free the result stored in this location with g_free().</doc>
22644             <type name="utf8" c:type="gchar**"/>
22645           </parameter>
22646           <parameter name="cursor_index" transfer-ownership="none">
22647             <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
22648             <type name="gint" c:type="gint*"/>
22649           </parameter>
22650         </parameters>
22651       </virtual-method>
22652       <virtual-method name="reset" invoker="reset">
22653         <doc xml:whitespace="preserve">Notify the input method that a change such as a change in cursor
22654 position has been made. This will typically cause the input
22655 method to clear the preedit state.</doc>
22656         <return-value transfer-ownership="none">
22657           <type name="none" c:type="void"/>
22658         </return-value>
22659       </virtual-method>
22660       <virtual-method name="set_client_window" invoker="set_client_window">
22661         <doc xml:whitespace="preserve">Set the client window for the input context; this is the
22662 #GdkWindow in which the input appears. This window is
22663 used in order to correctly position status windows, and may
22664 also be used for purposes internal to the input method.</doc>
22665         <return-value transfer-ownership="none">
22666           <type name="none" c:type="void"/>
22667         </return-value>
22668         <parameters>
22669           <parameter name="window" transfer-ownership="none" allow-none="1">
22670             <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
22671             <type name="Gdk.Window" c:type="GdkWindow*"/>
22672           </parameter>
22673         </parameters>
22674       </virtual-method>
22675       <virtual-method name="set_cursor_location" invoker="set_cursor_location">
22676         <doc xml:whitespace="preserve">Notify the input method that a change in cursor 
22677 position has been made. The location is relative to the client
22678 window.</doc>
22679         <return-value transfer-ownership="none">
22680           <type name="none" c:type="void"/>
22681         </return-value>
22682         <parameters>
22683           <parameter name="area" transfer-ownership="none">
22684             <doc xml:whitespace="preserve">new location</doc>
22685             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
22686           </parameter>
22687         </parameters>
22688       </virtual-method>
22689       <virtual-method name="set_surrounding" invoker="set_surrounding">
22690         <doc xml:whitespace="preserve">Sets surrounding context around the insertion point and preedit
22691 string. This function is expected to be called in response to the
22692 GtkIMContext::retrieve_surrounding signal, and will likely have no
22693 effect if called at other times.</doc>
22694         <return-value transfer-ownership="none">
22695           <type name="none" c:type="void"/>
22696         </return-value>
22697         <parameters>
22698           <parameter name="text" transfer-ownership="none">
22699             <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
22700             <type name="utf8" c:type="gchar*"/>
22701           </parameter>
22702           <parameter name="len" transfer-ownership="none">
22703             <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
22704             <type name="gint" c:type="gint"/>
22705           </parameter>
22706           <parameter name="cursor_index" transfer-ownership="none">
22707             <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
22708             <type name="gint" c:type="gint"/>
22709           </parameter>
22710         </parameters>
22711       </virtual-method>
22712       <virtual-method name="set_use_preedit" invoker="set_use_preedit">
22713         <doc xml:whitespace="preserve">Sets whether the IM context should use the preedit string
22714 to display feedback. If @use_preedit is FALSE (default
22715 is TRUE), then the IM context may use some other method to display
22716 feedback, such as displaying it in a child of the root window.</doc>
22717         <return-value transfer-ownership="none">
22718           <type name="none" c:type="void"/>
22719         </return-value>
22720         <parameters>
22721           <parameter name="use_preedit" transfer-ownership="none">
22722             <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
22723             <type name="gboolean" c:type="gboolean"/>
22724           </parameter>
22725         </parameters>
22726       </virtual-method>
22727       <method name="delete_surrounding"
22728               c:identifier="gtk_im_context_delete_surrounding">
22729         <doc xml:whitespace="preserve">Asks the widget that the input context is attached to to delete
22730 characters around the cursor position by emitting the
22731 GtkIMContext::delete_surrounding signal. Note that @offset and @n_chars
22732 are in characters not in bytes which differs from the usage other
22733 places in #GtkIMContext.
22734 In order to use this function, you should first call
22735 gtk_im_context_get_surrounding() to get the current context, and
22736 call this function immediately afterwards to make sure that you
22737 know what you are deleting. You should also account for the fact
22738 that even if the signal was handled, the input context might not
22739 have deleted all the characters that were requested to be deleted.
22740 This function is used by an input method that wants to make
22741 subsitutions in the existing text in response to new input. It is
22742 not useful for applications.</doc>
22743         <return-value transfer-ownership="none">
22744           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
22745           <type name="gboolean" c:type="gboolean"/>
22746         </return-value>
22747         <parameters>
22748           <parameter name="offset" transfer-ownership="none">
22749             <doc xml:whitespace="preserve">offset from cursor position in chars; a negative value means start before the cursor.</doc>
22750             <type name="gint" c:type="gint"/>
22751           </parameter>
22752           <parameter name="n_chars" transfer-ownership="none">
22753             <doc xml:whitespace="preserve">number of characters to delete.</doc>
22754             <type name="gint" c:type="gint"/>
22755           </parameter>
22756         </parameters>
22757       </method>
22758       <method name="filter_keypress"
22759               c:identifier="gtk_im_context_filter_keypress">
22760         <doc xml:whitespace="preserve">Allow an input method to internally handle key press and release 
22761 events. If this function returns %TRUE, then no further processing
22762 should be done for this key event.</doc>
22763         <return-value transfer-ownership="none">
22764           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
22765           <type name="gboolean" c:type="gboolean"/>
22766         </return-value>
22767         <parameters>
22768           <parameter name="event" transfer-ownership="none">
22769             <doc xml:whitespace="preserve">the key event</doc>
22770             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
22771           </parameter>
22772         </parameters>
22773       </method>
22774       <method name="focus_in" c:identifier="gtk_im_context_focus_in">
22775         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
22776 input context corresponds has gained focus. The input method
22777 may, for example, change the displayed feedback to reflect
22778 this change.</doc>
22779         <return-value transfer-ownership="none">
22780           <type name="none" c:type="void"/>
22781         </return-value>
22782       </method>
22783       <method name="focus_out" c:identifier="gtk_im_context_focus_out">
22784         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
22785 input context corresponds has lost focus. The input method
22786 may, for example, change the displayed feedback or reset the contexts
22787 state to reflect this change.</doc>
22788         <return-value transfer-ownership="none">
22789           <type name="none" c:type="void"/>
22790         </return-value>
22791       </method>
22792       <method name="get_preedit_string"
22793               c:identifier="gtk_im_context_get_preedit_string">
22794         <doc xml:whitespace="preserve">Retrieve the current preedit string for the input context,
22795 and a list of attributes to apply to the string.
22796 This string should be displayed inserted at the insertion
22797 point.</doc>
22798         <return-value transfer-ownership="none">
22799           <type name="none" c:type="void"/>
22800         </return-value>
22801         <parameters>
22802           <parameter name="str" transfer-ownership="none">
22803             <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
22804             <type name="utf8" c:type="gchar**"/>
22805           </parameter>
22806           <parameter name="attrs" transfer-ownership="none">
22807             <doc xml:whitespace="preserve">location to store the retrieved attribute list. When you are done with this list, you must unreference it with pango_attr_list_unref().</doc>
22808             <type name="Pango.AttrList" c:type="PangoAttrList**"/>
22809           </parameter>
22810           <parameter name="cursor_pos" transfer-ownership="none">
22811             <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
22812             <type name="gint" c:type="gint*"/>
22813           </parameter>
22814         </parameters>
22815       </method>
22816       <method name="get_surrounding"
22817               c:identifier="gtk_im_context_get_surrounding">
22818         <doc xml:whitespace="preserve">Retrieves context around the insertion point. Input methods
22819 typically want context in order to constrain input text based on
22820 existing text; this is important for languages such as Thai where
22821 only some sequences of characters are allowed.
22822 This function is implemented by emitting the
22823 GtkIMContext::retrieve_surrounding signal on the input method; in
22824 response to this signal, a widget should provide as much context as
22825 is available, up to an entire paragraph, by calling
22826 gtk_im_context_set_surrounding(). Note that there is no obligation
22827 for a widget to respond to the ::retrieve_surrounding signal, so input
22828 methods must be prepared to function without context.
22829 you must free the result stored in *text.</doc>
22830         <return-value transfer-ownership="none">
22831           <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
22832           <type name="gboolean" c:type="gboolean"/>
22833         </return-value>
22834         <parameters>
22835           <parameter name="text" transfer-ownership="none">
22836             <doc xml:whitespace="preserve">location to store a UTF-8 encoded string of text holding context around the insertion point. If the function returns %TRUE, then you must free the result stored in this location with g_free().</doc>
22837             <type name="utf8" c:type="gchar**"/>
22838           </parameter>
22839           <parameter name="cursor_index" transfer-ownership="none">
22840             <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
22841             <type name="gint" c:type="gint*"/>
22842           </parameter>
22843         </parameters>
22844       </method>
22845       <method name="reset" c:identifier="gtk_im_context_reset">
22846         <doc xml:whitespace="preserve">Notify the input method that a change such as a change in cursor
22847 position has been made. This will typically cause the input
22848 method to clear the preedit state.</doc>
22849         <return-value transfer-ownership="none">
22850           <type name="none" c:type="void"/>
22851         </return-value>
22852       </method>
22853       <method name="set_client_window"
22854               c:identifier="gtk_im_context_set_client_window">
22855         <doc xml:whitespace="preserve">Set the client window for the input context; this is the
22856 #GdkWindow in which the input appears. This window is
22857 used in order to correctly position status windows, and may
22858 also be used for purposes internal to the input method.</doc>
22859         <return-value transfer-ownership="none">
22860           <type name="none" c:type="void"/>
22861         </return-value>
22862         <parameters>
22863           <parameter name="window" transfer-ownership="none" allow-none="1">
22864             <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
22865             <type name="Gdk.Window" c:type="GdkWindow*"/>
22866           </parameter>
22867         </parameters>
22868       </method>
22869       <method name="set_cursor_location"
22870               c:identifier="gtk_im_context_set_cursor_location">
22871         <doc xml:whitespace="preserve">Notify the input method that a change in cursor 
22872 position has been made. The location is relative to the client
22873 window.</doc>
22874         <return-value transfer-ownership="none">
22875           <type name="none" c:type="void"/>
22876         </return-value>
22877         <parameters>
22878           <parameter name="area" transfer-ownership="none">
22879             <doc xml:whitespace="preserve">new location</doc>
22880             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
22881           </parameter>
22882         </parameters>
22883       </method>
22884       <method name="set_surrounding"
22885               c:identifier="gtk_im_context_set_surrounding">
22886         <doc xml:whitespace="preserve">Sets surrounding context around the insertion point and preedit
22887 string. This function is expected to be called in response to the
22888 GtkIMContext::retrieve_surrounding signal, and will likely have no
22889 effect if called at other times.</doc>
22890         <return-value transfer-ownership="none">
22891           <type name="none" c:type="void"/>
22892         </return-value>
22893         <parameters>
22894           <parameter name="text" transfer-ownership="none">
22895             <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
22896             <type name="utf8" c:type="gchar*"/>
22897           </parameter>
22898           <parameter name="len" transfer-ownership="none">
22899             <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
22900             <type name="gint" c:type="gint"/>
22901           </parameter>
22902           <parameter name="cursor_index" transfer-ownership="none">
22903             <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
22904             <type name="gint" c:type="gint"/>
22905           </parameter>
22906         </parameters>
22907       </method>
22908       <method name="set_use_preedit"
22909               c:identifier="gtk_im_context_set_use_preedit">
22910         <doc xml:whitespace="preserve">Sets whether the IM context should use the preedit string
22911 to display feedback. If @use_preedit is FALSE (default
22912 is TRUE), then the IM context may use some other method to display
22913 feedback, such as displaying it in a child of the root window.</doc>
22914         <return-value transfer-ownership="none">
22915           <type name="none" c:type="void"/>
22916         </return-value>
22917         <parameters>
22918           <parameter name="use_preedit" transfer-ownership="none">
22919             <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
22920             <type name="gboolean" c:type="gboolean"/>
22921           </parameter>
22922         </parameters>
22923       </method>
22924       <field name="parent_instance">
22925         <type name="GObject.Object" c:type="GObject"/>
22926       </field>
22927       <glib:signal name="commit">
22928         <doc xml:whitespace="preserve">The ::commit signal is emitted when a complete input sequence
22929 has been entered by the user. This can be a single character
22930 immediately after a key press or the final result of preediting.</doc>
22931         <return-value transfer-ownership="none">
22932           <type name="none"/>
22933         </return-value>
22934         <parameters>
22935           <parameter name="object" transfer-ownership="none">
22936             <doc xml:whitespace="preserve">the completed character(s) entered by the user</doc>
22937             <type name="utf8"/>
22938           </parameter>
22939         </parameters>
22940       </glib:signal>
22941       <glib:signal name="delete-surrounding">
22942         <doc xml:whitespace="preserve">The ::delete-surrounding signal is emitted when the input method
22943 needs to delete all or part of the context surrounding the cursor.</doc>
22944         <return-value transfer-ownership="none">
22945           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
22946           <type name="gboolean"/>
22947         </return-value>
22948         <parameters>
22949           <parameter name="object" transfer-ownership="none">
22950             <doc xml:whitespace="preserve">the character offset from the cursor position of the text to be deleted. A negative value indicates a position before the cursor.</doc>
22951             <type name="gint"/>
22952           </parameter>
22953           <parameter name="p0" transfer-ownership="none">
22954             <doc xml:whitespace="preserve">the number of characters to be deleted</doc>
22955             <type name="gint"/>
22956           </parameter>
22957         </parameters>
22958       </glib:signal>
22959       <glib:signal name="preedit-changed">
22960         <doc xml:whitespace="preserve">The ::preedit-changed signal is emitted whenever the preedit sequence
22961 currently being entered has changed.  It is also emitted at the end of
22962 a preedit sequence, in which case
22963 gtk_im_context_get_preedit_string() returns the empty string.</doc>
22964         <return-value transfer-ownership="none">
22965           <type name="none"/>
22966         </return-value>
22967       </glib:signal>
22968       <glib:signal name="preedit-end">
22969         <doc xml:whitespace="preserve">The ::preedit-end signal is emitted when a preediting sequence
22970 has been completed or canceled.</doc>
22971         <return-value transfer-ownership="none">
22972           <type name="none"/>
22973         </return-value>
22974       </glib:signal>
22975       <glib:signal name="preedit-start">
22976         <doc xml:whitespace="preserve">The ::preedit-start signal is emitted when a new preediting sequence
22977 starts.</doc>
22978         <return-value transfer-ownership="none">
22979           <type name="none"/>
22980         </return-value>
22981       </glib:signal>
22982       <glib:signal name="retrieve-surrounding">
22983         <doc xml:whitespace="preserve">The ::retrieve-surrounding signal is emitted when the input method
22984 requires the context surrounding the cursor.  The callback should set
22985 the input method surrounding context by calling the
22986 gtk_im_context_set_surrounding() method.</doc>
22987         <return-value transfer-ownership="none">
22988           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
22989           <type name="gboolean"/>
22990         </return-value>
22991       </glib:signal>
22992     </class>
22993     <record name="IMContextClass"
22994             c:type="GtkIMContextClass"
22995             glib:is-gtype-struct-for="IMContext">
22996       <field name="parent_class">
22997         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
22998       </field>
22999       <field name="preedit_start">
23000         <callback name="preedit_start">
23001           <return-value transfer-ownership="none">
23002             <type name="none" c:type="void"/>
23003           </return-value>
23004           <parameters>
23005             <parameter name="context" transfer-ownership="none">
23006               <type name="IMContext" c:type="GtkIMContext*"/>
23007             </parameter>
23008           </parameters>
23009         </callback>
23010       </field>
23011       <field name="preedit_end">
23012         <callback name="preedit_end">
23013           <return-value transfer-ownership="none">
23014             <type name="none" c:type="void"/>
23015           </return-value>
23016           <parameters>
23017             <parameter name="context" transfer-ownership="none">
23018               <type name="IMContext" c:type="GtkIMContext*"/>
23019             </parameter>
23020           </parameters>
23021         </callback>
23022       </field>
23023       <field name="preedit_changed">
23024         <callback name="preedit_changed">
23025           <return-value transfer-ownership="none">
23026             <type name="none" c:type="void"/>
23027           </return-value>
23028           <parameters>
23029             <parameter name="context" transfer-ownership="none">
23030               <type name="IMContext" c:type="GtkIMContext*"/>
23031             </parameter>
23032           </parameters>
23033         </callback>
23034       </field>
23035       <field name="commit">
23036         <callback name="commit">
23037           <return-value transfer-ownership="none">
23038             <type name="none" c:type="void"/>
23039           </return-value>
23040           <parameters>
23041             <parameter name="context" transfer-ownership="none">
23042               <type name="IMContext" c:type="GtkIMContext*"/>
23043             </parameter>
23044             <parameter name="str" transfer-ownership="none">
23045               <type name="utf8" c:type="gchar*"/>
23046             </parameter>
23047           </parameters>
23048         </callback>
23049       </field>
23050       <field name="retrieve_surrounding">
23051         <callback name="retrieve_surrounding">
23052           <return-value transfer-ownership="none">
23053             <type name="gboolean" c:type="gboolean"/>
23054           </return-value>
23055           <parameters>
23056             <parameter name="context" transfer-ownership="none">
23057               <type name="IMContext" c:type="GtkIMContext*"/>
23058             </parameter>
23059           </parameters>
23060         </callback>
23061       </field>
23062       <field name="delete_surrounding">
23063         <callback name="delete_surrounding">
23064           <return-value transfer-ownership="none">
23065             <type name="gboolean" c:type="gboolean"/>
23066           </return-value>
23067           <parameters>
23068             <parameter name="context" transfer-ownership="none">
23069               <type name="IMContext" c:type="GtkIMContext*"/>
23070             </parameter>
23071             <parameter name="offset" transfer-ownership="none">
23072               <type name="gint" c:type="gint"/>
23073             </parameter>
23074             <parameter name="n_chars" transfer-ownership="none">
23075               <type name="gint" c:type="gint"/>
23076             </parameter>
23077           </parameters>
23078         </callback>
23079       </field>
23080       <field name="set_client_window">
23081         <callback name="set_client_window">
23082           <return-value transfer-ownership="none">
23083             <type name="none" c:type="void"/>
23084           </return-value>
23085           <parameters>
23086             <parameter name="context" transfer-ownership="none">
23087               <type name="IMContext" c:type="GtkIMContext*"/>
23088             </parameter>
23089             <parameter name="window" transfer-ownership="none" allow-none="1">
23090               <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
23091               <type name="Gdk.Window" c:type="GdkWindow*"/>
23092             </parameter>
23093           </parameters>
23094         </callback>
23095       </field>
23096       <field name="get_preedit_string">
23097         <callback name="get_preedit_string">
23098           <return-value transfer-ownership="none">
23099             <type name="none" c:type="void"/>
23100           </return-value>
23101           <parameters>
23102             <parameter name="context" transfer-ownership="none">
23103               <type name="IMContext" c:type="GtkIMContext*"/>
23104             </parameter>
23105             <parameter name="str" transfer-ownership="none">
23106               <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
23107               <type name="utf8" c:type="gchar**"/>
23108             </parameter>
23109             <parameter name="attrs" transfer-ownership="none">
23110               <doc xml:whitespace="preserve">location to store the retrieved attribute list. When you are done with this list, you must unreference it with pango_attr_list_unref().</doc>
23111               <type name="Pango.AttrList" c:type="PangoAttrList**"/>
23112             </parameter>
23113             <parameter name="cursor_pos" transfer-ownership="none">
23114               <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
23115               <type name="gint" c:type="gint*"/>
23116             </parameter>
23117           </parameters>
23118         </callback>
23119       </field>
23120       <field name="filter_keypress">
23121         <callback name="filter_keypress">
23122           <return-value transfer-ownership="none">
23123             <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
23124             <type name="gboolean" c:type="gboolean"/>
23125           </return-value>
23126           <parameters>
23127             <parameter name="context" transfer-ownership="none">
23128               <type name="IMContext" c:type="GtkIMContext*"/>
23129             </parameter>
23130             <parameter name="event" transfer-ownership="none">
23131               <doc xml:whitespace="preserve">the key event</doc>
23132               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
23133             </parameter>
23134           </parameters>
23135         </callback>
23136       </field>
23137       <field name="focus_in">
23138         <callback name="focus_in">
23139           <return-value transfer-ownership="none">
23140             <type name="none" c:type="void"/>
23141           </return-value>
23142           <parameters>
23143             <parameter name="context" transfer-ownership="none">
23144               <type name="IMContext" c:type="GtkIMContext*"/>
23145             </parameter>
23146           </parameters>
23147         </callback>
23148       </field>
23149       <field name="focus_out">
23150         <callback name="focus_out">
23151           <return-value transfer-ownership="none">
23152             <type name="none" c:type="void"/>
23153           </return-value>
23154           <parameters>
23155             <parameter name="context" transfer-ownership="none">
23156               <type name="IMContext" c:type="GtkIMContext*"/>
23157             </parameter>
23158           </parameters>
23159         </callback>
23160       </field>
23161       <field name="reset">
23162         <callback name="reset">
23163           <return-value transfer-ownership="none">
23164             <type name="none" c:type="void"/>
23165           </return-value>
23166           <parameters>
23167             <parameter name="context" transfer-ownership="none">
23168               <type name="IMContext" c:type="GtkIMContext*"/>
23169             </parameter>
23170           </parameters>
23171         </callback>
23172       </field>
23173       <field name="set_cursor_location">
23174         <callback name="set_cursor_location">
23175           <return-value transfer-ownership="none">
23176             <type name="none" c:type="void"/>
23177           </return-value>
23178           <parameters>
23179             <parameter name="context" transfer-ownership="none">
23180               <type name="IMContext" c:type="GtkIMContext*"/>
23181             </parameter>
23182             <parameter name="area" transfer-ownership="none">
23183               <doc xml:whitespace="preserve">new location</doc>
23184               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
23185             </parameter>
23186           </parameters>
23187         </callback>
23188       </field>
23189       <field name="set_use_preedit">
23190         <callback name="set_use_preedit">
23191           <return-value transfer-ownership="none">
23192             <type name="none" c:type="void"/>
23193           </return-value>
23194           <parameters>
23195             <parameter name="context" transfer-ownership="none">
23196               <type name="IMContext" c:type="GtkIMContext*"/>
23197             </parameter>
23198             <parameter name="use_preedit" transfer-ownership="none">
23199               <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
23200               <type name="gboolean" c:type="gboolean"/>
23201             </parameter>
23202           </parameters>
23203         </callback>
23204       </field>
23205       <field name="set_surrounding">
23206         <callback name="set_surrounding">
23207           <return-value transfer-ownership="none">
23208             <type name="none" c:type="void"/>
23209           </return-value>
23210           <parameters>
23211             <parameter name="context" transfer-ownership="none">
23212               <type name="IMContext" c:type="GtkIMContext*"/>
23213             </parameter>
23214             <parameter name="text" transfer-ownership="none">
23215               <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
23216               <type name="utf8" c:type="gchar*"/>
23217             </parameter>
23218             <parameter name="len" transfer-ownership="none">
23219               <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
23220               <type name="gint" c:type="gint"/>
23221             </parameter>
23222             <parameter name="cursor_index" transfer-ownership="none">
23223               <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
23224               <type name="gint" c:type="gint"/>
23225             </parameter>
23226           </parameters>
23227         </callback>
23228       </field>
23229       <field name="get_surrounding">
23230         <callback name="get_surrounding">
23231           <return-value transfer-ownership="none">
23232             <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
23233             <type name="gboolean" c:type="gboolean"/>
23234           </return-value>
23235           <parameters>
23236             <parameter name="context" transfer-ownership="none">
23237               <type name="IMContext" c:type="GtkIMContext*"/>
23238             </parameter>
23239             <parameter name="text" transfer-ownership="none">
23240               <doc xml:whitespace="preserve">location to store a UTF-8 encoded string of text holding context around the insertion point. If the function returns %TRUE, then you must free the result stored in this location with g_free().</doc>
23241               <type name="utf8" c:type="gchar**"/>
23242             </parameter>
23243             <parameter name="cursor_index" transfer-ownership="none">
23244               <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
23245               <type name="gint" c:type="gint*"/>
23246             </parameter>
23247           </parameters>
23248         </callback>
23249       </field>
23250       <field name="_gtk_reserved1" introspectable="0">
23251         <callback name="_gtk_reserved1">
23252           <return-value transfer-ownership="none">
23253             <type name="none" c:type="void"/>
23254           </return-value>
23255         </callback>
23256       </field>
23257       <field name="_gtk_reserved2" introspectable="0">
23258         <callback name="_gtk_reserved2">
23259           <return-value transfer-ownership="none">
23260             <type name="none" c:type="void"/>
23261           </return-value>
23262         </callback>
23263       </field>
23264       <field name="_gtk_reserved3" introspectable="0">
23265         <callback name="_gtk_reserved3">
23266           <return-value transfer-ownership="none">
23267             <type name="none" c:type="void"/>
23268           </return-value>
23269         </callback>
23270       </field>
23271       <field name="_gtk_reserved4" introspectable="0">
23272         <callback name="_gtk_reserved4">
23273           <return-value transfer-ownership="none">
23274             <type name="none" c:type="void"/>
23275           </return-value>
23276         </callback>
23277       </field>
23278       <field name="_gtk_reserved5" introspectable="0">
23279         <callback name="_gtk_reserved5">
23280           <return-value transfer-ownership="none">
23281             <type name="none" c:type="void"/>
23282           </return-value>
23283         </callback>
23284       </field>
23285       <field name="_gtk_reserved6" introspectable="0">
23286         <callback name="_gtk_reserved6">
23287           <return-value transfer-ownership="none">
23288             <type name="none" c:type="void"/>
23289           </return-value>
23290         </callback>
23291       </field>
23292     </record>
23293     <record name="IMContextInfo" c:type="GtkIMContextInfo">
23294       <doc xml:whitespace="preserve">Bookkeeping information about a loadable input method.</doc>
23295       <field name="context_id" writable="1">
23296         <type name="utf8" c:type="gchar*"/>
23297       </field>
23298       <field name="context_name" writable="1">
23299         <type name="utf8" c:type="gchar*"/>
23300       </field>
23301       <field name="domain" writable="1">
23302         <type name="utf8" c:type="gchar*"/>
23303       </field>
23304       <field name="domain_dirname" writable="1">
23305         <type name="utf8" c:type="gchar*"/>
23306       </field>
23307       <field name="default_locales" writable="1">
23308         <type name="utf8" c:type="gchar*"/>
23309       </field>
23310     </record>
23311     <class name="IMContextSimple"
23312            c:symbol-prefix="im_context_simple"
23313            c:type="GtkIMContextSimple"
23314            parent="IMContext"
23315            glib:type-name="GtkIMContextSimple"
23316            glib:get-type="gtk_im_context_simple_get_type"
23317            glib:type-struct="IMContextSimpleClass">
23318       <constructor name="new" c:identifier="gtk_im_context_simple_new">
23319         <return-value transfer-ownership="full">
23320           <type name="IMContext" c:type="GtkIMContext*"/>
23321         </return-value>
23322       </constructor>
23323       <method name="add_table" c:identifier="gtk_im_context_simple_add_table">
23324         <doc xml:whitespace="preserve">Adds an additional table to search to the input context.
23325 Each row of the table consists of @max_seq_len key symbols
23326 followed by two #guint16 interpreted as the high and low
23327 words of a #gunicode value. Tables are searched starting
23328 from the last added.
23329 The table must be sorted in dictionary order on the
23330 numeric value of the key symbol fields. (Values beyond
23331 the length of the sequence should be zero.)</doc>
23332         <return-value transfer-ownership="none">
23333           <type name="none" c:type="void"/>
23334         </return-value>
23335         <parameters>
23336           <parameter name="data" transfer-ownership="none">
23337             <doc xml:whitespace="preserve">the table</doc>
23338             <type name="guint16" c:type="guint16*"/>
23339           </parameter>
23340           <parameter name="max_seq_len" transfer-ownership="none">
23341             <doc xml:whitespace="preserve">Maximum length of a sequence in the table (cannot be greater than #GTK_MAX_COMPOSE_LEN)</doc>
23342             <type name="gint" c:type="gint"/>
23343           </parameter>
23344           <parameter name="n_seqs" transfer-ownership="none">
23345             <doc xml:whitespace="preserve">number of sequences in the table</doc>
23346             <type name="gint" c:type="gint"/>
23347           </parameter>
23348         </parameters>
23349       </method>
23350       <field name="object">
23351         <type name="IMContext" c:type="GtkIMContext"/>
23352       </field>
23353       <field name="priv" readable="0" private="1">
23354         <type name="IMContextSimplePrivate"
23355               c:type="GtkIMContextSimplePrivate*"/>
23356       </field>
23357     </class>
23358     <record name="IMContextSimpleClass"
23359             c:type="GtkIMContextSimpleClass"
23360             glib:is-gtype-struct-for="IMContextSimple">
23361       <field name="parent_class">
23362         <type name="IMContextClass" c:type="GtkIMContextClass"/>
23363       </field>
23364     </record>
23365     <record name="IMContextSimplePrivate"
23366             c:type="GtkIMContextSimplePrivate"
23367             disguised="1">
23368     </record>
23369     <class name="IMMulticontext"
23370            c:symbol-prefix="im_multicontext"
23371            c:type="GtkIMMulticontext"
23372            parent="IMContext"
23373            glib:type-name="GtkIMMulticontext"
23374            glib:get-type="gtk_im_multicontext_get_type"
23375            glib:type-struct="IMMulticontextClass">
23376       <constructor name="new" c:identifier="gtk_im_multicontext_new">
23377         <doc xml:whitespace="preserve">Creates a new #GtkIMMulticontext.</doc>
23378         <return-value transfer-ownership="full">
23379           <doc xml:whitespace="preserve">a new #GtkIMMulticontext.</doc>
23380           <type name="IMContext" c:type="GtkIMContext*"/>
23381         </return-value>
23382       </constructor>
23383       <method name="append_menuitems"
23384               c:identifier="gtk_im_multicontext_append_menuitems">
23385         <doc xml:whitespace="preserve">Add menuitems for various available input methods to a menu;
23386 the menuitems, when selected, will switch the input method
23387 for the context and the global default input method.</doc>
23388         <return-value transfer-ownership="none">
23389           <type name="none" c:type="void"/>
23390         </return-value>
23391         <parameters>
23392           <parameter name="menushell" transfer-ownership="none">
23393             <doc xml:whitespace="preserve">a #GtkMenuShell</doc>
23394             <type name="MenuShell" c:type="GtkMenuShell*"/>
23395           </parameter>
23396         </parameters>
23397       </method>
23398       <method name="get_context_id"
23399               c:identifier="gtk_im_multicontext_get_context_id"
23400               version="2.16">
23401         <doc xml:whitespace="preserve">Gets the id of the currently active slave of the @context.</doc>
23402         <return-value transfer-ownership="none">
23403           <doc xml:whitespace="preserve">the id of the currently active slave</doc>
23404           <type name="utf8" c:type="char*"/>
23405         </return-value>
23406       </method>
23407       <method name="set_context_id"
23408               c:identifier="gtk_im_multicontext_set_context_id"
23409               version="2.16">
23410         <doc xml:whitespace="preserve">Sets the context id for @context.
23411 This causes the currently active slave of @context to be
23412 replaced by the slave corresponding to the new context id.</doc>
23413         <return-value transfer-ownership="none">
23414           <type name="none" c:type="void"/>
23415         </return-value>
23416         <parameters>
23417           <parameter name="context_id" transfer-ownership="none">
23418             <doc xml:whitespace="preserve">the id to use</doc>
23419             <type name="utf8" c:type="char*"/>
23420           </parameter>
23421         </parameters>
23422       </method>
23423       <field name="object">
23424         <type name="IMContext" c:type="GtkIMContext"/>
23425       </field>
23426       <field name="priv" readable="0" private="1">
23427         <type name="IMMulticontextPrivate" c:type="GtkIMMulticontextPrivate*"/>
23428       </field>
23429     </class>
23430     <record name="IMMulticontextClass"
23431             c:type="GtkIMMulticontextClass"
23432             glib:is-gtype-struct-for="IMMulticontext">
23433       <field name="parent_class">
23434         <type name="IMContextClass" c:type="GtkIMContextClass"/>
23435       </field>
23436       <field name="_gtk_reserved1" introspectable="0">
23437         <callback name="_gtk_reserved1">
23438           <return-value transfer-ownership="none">
23439             <type name="none" c:type="void"/>
23440           </return-value>
23441         </callback>
23442       </field>
23443       <field name="_gtk_reserved2" introspectable="0">
23444         <callback name="_gtk_reserved2">
23445           <return-value transfer-ownership="none">
23446             <type name="none" c:type="void"/>
23447           </return-value>
23448         </callback>
23449       </field>
23450       <field name="_gtk_reserved3" introspectable="0">
23451         <callback name="_gtk_reserved3">
23452           <return-value transfer-ownership="none">
23453             <type name="none" c:type="void"/>
23454           </return-value>
23455         </callback>
23456       </field>
23457       <field name="_gtk_reserved4" introspectable="0">
23458         <callback name="_gtk_reserved4">
23459           <return-value transfer-ownership="none">
23460             <type name="none" c:type="void"/>
23461           </return-value>
23462         </callback>
23463       </field>
23464     </record>
23465     <record name="IMMulticontextPrivate"
23466             c:type="GtkIMMulticontextPrivate"
23467             disguised="1">
23468     </record>
23469     <enumeration name="IMPreeditStyle"
23470                  glib:type-name="GtkIMPreeditStyle"
23471                  glib:get-type="gtk_im_preedit_style_get_type"
23472                  c:type="GtkIMPreeditStyle">
23473       <member name="nothing"
23474               value="0"
23475               c:identifier="GTK_IM_PREEDIT_NOTHING"
23476               glib:nick="nothing"/>
23477       <member name="callback"
23478               value="1"
23479               c:identifier="GTK_IM_PREEDIT_CALLBACK"
23480               glib:nick="callback"/>
23481       <member name="none"
23482               value="2"
23483               c:identifier="GTK_IM_PREEDIT_NONE"
23484               glib:nick="none"/>
23485     </enumeration>
23486     <enumeration name="IMStatusStyle"
23487                  glib:type-name="GtkIMStatusStyle"
23488                  glib:get-type="gtk_im_status_style_get_type"
23489                  c:type="GtkIMStatusStyle">
23490       <member name="nothing"
23491               value="0"
23492               c:identifier="GTK_IM_STATUS_NOTHING"
23493               glib:nick="nothing"/>
23494       <member name="callback"
23495               value="1"
23496               c:identifier="GTK_IM_STATUS_CALLBACK"
23497               glib:nick="callback"/>
23498       <member name="none"
23499               value="2"
23500               c:identifier="GTK_IM_STATUS_NONE"
23501               glib:nick="none"/>
23502     </enumeration>
23503     <constant name="INPUT_ERROR" value="-1">
23504       <type name="gint" c:type="gint"/>
23505     </constant>
23506     <constant name="INTERFACE_AGE" value="0">
23507       <type name="gint" c:type="gint"/>
23508     </constant>
23509     <class name="IconFactory"
23510            c:symbol-prefix="icon_factory"
23511            c:type="GtkIconFactory"
23512            parent="GObject.Object"
23513            glib:type-name="GtkIconFactory"
23514            glib:get-type="gtk_icon_factory_get_type"
23515            glib:type-struct="IconFactoryClass">
23516       <implements name="Buildable"/>
23517       <constructor name="new" c:identifier="gtk_icon_factory_new">
23518         <doc xml:whitespace="preserve">Creates a new #GtkIconFactory. An icon factory manages a collection
23519 of #GtkIconSet&lt;!-- --&gt;s; a #GtkIconSet manages a set of variants of a
23520 particular icon (i.e. a #GtkIconSet contains variants for different
23521 sizes and widget states). Icons in an icon factory are named by a
23522 stock ID, which is a simple string identifying the icon. Each
23523 #GtkStyle has a list of #GtkIconFactory&lt;!-- --&gt;s derived from the current
23524 theme; those icon factories are consulted first when searching for
23525 an icon. If the theme doesn't set a particular icon, GTK+ looks for
23526 the icon in a list of default icon factories, maintained by
23527 gtk_icon_factory_add_default() and
23528 gtk_icon_factory_remove_default(). Applications with icons should
23529 add a default icon factory with their icons, which will allow
23530 themes to override the icons for the application.</doc>
23531         <return-value transfer-ownership="full">
23532           <doc xml:whitespace="preserve">a new #GtkIconFactory</doc>
23533           <type name="IconFactory" c:type="GtkIconFactory*"/>
23534         </return-value>
23535       </constructor>
23536       <function name="lookup_default"
23537                 c:identifier="gtk_icon_factory_lookup_default">
23538         <doc xml:whitespace="preserve">Looks for an icon in the list of default icon factories.  For
23539 display to the user, you should use gtk_style_lookup_icon_set() on
23540 the #GtkStyle for the widget that will display the icon, instead of
23541 using this function directly, so that themes are taken into
23542 account.</doc>
23543         <return-value transfer-ownership="full">
23544           <doc xml:whitespace="preserve">a #GtkIconSet, or %NULL</doc>
23545           <type name="IconSet" c:type="GtkIconSet*"/>
23546         </return-value>
23547         <parameters>
23548           <parameter name="stock_id" transfer-ownership="none">
23549             <doc xml:whitespace="preserve">an icon name</doc>
23550             <type name="utf8" c:type="gchar*"/>
23551           </parameter>
23552         </parameters>
23553       </function>
23554       <method name="add" c:identifier="gtk_icon_factory_add">
23555         <doc xml:whitespace="preserve">Adds the given @icon_set to the icon factory, under the name
23556 e.g. "myapp-whatever-icon".  Normally applications create a
23557 #GtkIconFactory, then add it to the list of default factories with
23558 gtk_icon_factory_add_default(). Then they pass the @stock_id to
23559 widgets such as #GtkImage to display the icon. Themes can provide
23560 an icon with the same name (such as "myapp-whatever-icon") to
23561 override your application's default icons. If an icon already
23562 existed in @factory for @stock_id, it is unreferenced and replaced
23563 with the new @icon_set.</doc>
23564         <return-value transfer-ownership="none">
23565           <type name="none" c:type="void"/>
23566         </return-value>
23567         <parameters>
23568           <parameter name="stock_id" transfer-ownership="none">
23569             <doc xml:whitespace="preserve">icon name</doc>
23570             <type name="utf8" c:type="gchar*"/>
23571           </parameter>
23572           <parameter name="icon_set" transfer-ownership="none">
23573             <doc xml:whitespace="preserve">icon set</doc>
23574             <type name="IconSet" c:type="GtkIconSet*"/>
23575           </parameter>
23576         </parameters>
23577       </method>
23578       <method name="add_default" c:identifier="gtk_icon_factory_add_default">
23579         <doc xml:whitespace="preserve">Adds an icon factory to the list of icon factories searched by
23580 gtk_style_lookup_icon_set(). This means that, for example,
23581 gtk_image_new_from_stock() will be able to find icons in @factory.
23582 There will normally be an icon factory added for each library or
23583 application that comes with icons. The default icon factories
23584 can be overridden by themes.</doc>
23585         <return-value transfer-ownership="none">
23586           <type name="none" c:type="void"/>
23587         </return-value>
23588       </method>
23589       <method name="lookup" c:identifier="gtk_icon_factory_lookup">
23590         <doc xml:whitespace="preserve">Looks up @stock_id in the icon factory, returning an icon set
23591 if found, otherwise %NULL. For display to the user, you should
23592 use gtk_style_lookup_icon_set() on the #GtkStyle for the
23593 widget that will display the icon, instead of using this
23594 function directly, so that themes are taken into account.</doc>
23595         <return-value transfer-ownership="full">
23596           <doc xml:whitespace="preserve">icon set of @stock_id.</doc>
23597           <type name="IconSet" c:type="GtkIconSet*"/>
23598         </return-value>
23599         <parameters>
23600           <parameter name="stock_id" transfer-ownership="none">
23601             <doc xml:whitespace="preserve">an icon name</doc>
23602             <type name="utf8" c:type="gchar*"/>
23603           </parameter>
23604         </parameters>
23605       </method>
23606       <method name="remove_default"
23607               c:identifier="gtk_icon_factory_remove_default">
23608         <doc xml:whitespace="preserve">Removes an icon factory from the list of default icon
23609 factories. Not normally used; you might use it for a library that
23610 can be unloaded or shut down.</doc>
23611         <return-value transfer-ownership="none">
23612           <type name="none" c:type="void"/>
23613         </return-value>
23614       </method>
23615       <field name="parent_instance">
23616         <type name="GObject.Object" c:type="GObject"/>
23617       </field>
23618       <field name="priv" readable="0" private="1">
23619         <type name="IconFactoryPrivate" c:type="GtkIconFactoryPrivate*"/>
23620       </field>
23621     </class>
23622     <record name="IconFactoryClass"
23623             c:type="GtkIconFactoryClass"
23624             glib:is-gtype-struct-for="IconFactory">
23625       <field name="parent_class">
23626         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
23627       </field>
23628       <field name="_gtk_reserved1" introspectable="0">
23629         <callback name="_gtk_reserved1">
23630           <return-value transfer-ownership="none">
23631             <type name="none" c:type="void"/>
23632           </return-value>
23633         </callback>
23634       </field>
23635       <field name="_gtk_reserved2" introspectable="0">
23636         <callback name="_gtk_reserved2">
23637           <return-value transfer-ownership="none">
23638             <type name="none" c:type="void"/>
23639           </return-value>
23640         </callback>
23641       </field>
23642       <field name="_gtk_reserved3" introspectable="0">
23643         <callback name="_gtk_reserved3">
23644           <return-value transfer-ownership="none">
23645             <type name="none" c:type="void"/>
23646           </return-value>
23647         </callback>
23648       </field>
23649       <field name="_gtk_reserved4" introspectable="0">
23650         <callback name="_gtk_reserved4">
23651           <return-value transfer-ownership="none">
23652             <type name="none" c:type="void"/>
23653           </return-value>
23654         </callback>
23655       </field>
23656     </record>
23657     <record name="IconFactoryPrivate"
23658             c:type="GtkIconFactoryPrivate"
23659             disguised="1">
23660     </record>
23661     <record name="IconInfo"
23662             c:type="GtkIconInfo"
23663             glib:type-name="GtkIconInfo"
23664             glib:get-type="gtk_icon_info_get_type"
23665             c:symbol-prefix="icon_info">
23666       <constructor name="new_for_pixbuf"
23667                    c:identifier="gtk_icon_info_new_for_pixbuf"
23668                    version="2.14">
23669         <doc xml:whitespace="preserve">Creates a #GtkIconInfo for a #GdkPixbuf.</doc>
23670         <return-value transfer-ownership="full">
23671           <doc xml:whitespace="preserve">a #GtkIconInfo</doc>
23672           <type name="IconInfo" c:type="GtkIconInfo*"/>
23673         </return-value>
23674         <parameters>
23675           <parameter name="icon_theme" transfer-ownership="none">
23676             <doc xml:whitespace="preserve">a #GtkIconTheme</doc>
23677             <type name="IconTheme" c:type="GtkIconTheme*"/>
23678           </parameter>
23679           <parameter name="pixbuf" transfer-ownership="none">
23680             <doc xml:whitespace="preserve">the pixbuf to wrap in a #GtkIconInfo</doc>
23681             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23682           </parameter>
23683         </parameters>
23684       </constructor>
23685       <method name="copy" c:identifier="gtk_icon_info_copy" version="2.4">
23686         <doc xml:whitespace="preserve">Make a copy of a #GtkIconInfo.</doc>
23687         <return-value transfer-ownership="full">
23688           <doc xml:whitespace="preserve">the new GtkIconInfo</doc>
23689           <type name="IconInfo" c:type="GtkIconInfo*"/>
23690         </return-value>
23691       </method>
23692       <method name="free" c:identifier="gtk_icon_info_free" version="2.4">
23693         <doc xml:whitespace="preserve">Free a #GtkIconInfo and associated information</doc>
23694         <return-value transfer-ownership="none">
23695           <type name="none" c:type="void"/>
23696         </return-value>
23697       </method>
23698       <method name="get_attach_points"
23699               c:identifier="gtk_icon_info_get_attach_points"
23700               version="2.4">
23701         <doc xml:whitespace="preserve">Fetches the set of attach points for an icon. An attach point
23702 is a location in the icon that can be used as anchor points for attaching
23703 emblems or overlays to the icon.</doc>
23704         <return-value transfer-ownership="none">
23705           <doc xml:whitespace="preserve">%TRUE if there are any attach points for the icon.</doc>
23706           <type name="gboolean" c:type="gboolean"/>
23707         </return-value>
23708         <parameters>
23709           <parameter name="points"
23710                      direction="out"
23711                      caller-allocates="0"
23712                      transfer-ownership="full"
23713                      allow-none="1">
23714             <doc xml:whitespace="preserve">location to store pointer to an array of points, or %NULL free the array of points with g_free().</doc>
23715             <array length="1" c:type="GdkPoint**">
23716               <type name="Gdk.Point"/>
23717             </array>
23718           </parameter>
23719           <parameter name="n_points"
23720                      direction="out"
23721                      caller-allocates="0"
23722                      transfer-ownership="full"
23723                      allow-none="1">
23724             <doc xml:whitespace="preserve">location to store the number of points in @points, or %NULL</doc>
23725             <type name="gint" c:type="gint*"/>
23726           </parameter>
23727         </parameters>
23728       </method>
23729       <method name="get_base_size"
23730               c:identifier="gtk_icon_info_get_base_size"
23731               version="2.4">
23732         <doc xml:whitespace="preserve">Gets the base size for the icon. The base size
23733 is a size for the icon that was specified by
23734 the icon theme creator. This may be different
23735 than the actual size of image; an example of
23736 this is small emblem icons that can be attached
23737 to a larger icon. These icons will be given
23738 the same base size as the larger icons to which
23739 they are attached.
23740 size is known for the icon.</doc>
23741         <return-value transfer-ownership="none">
23742           <doc xml:whitespace="preserve">the base size, or 0, if no base</doc>
23743           <type name="gint" c:type="gint"/>
23744         </return-value>
23745       </method>
23746       <method name="get_builtin_pixbuf"
23747               c:identifier="gtk_icon_info_get_builtin_pixbuf"
23748               version="2.4">
23749         <doc xml:whitespace="preserve">Gets the built-in image for this icon, if any. To allow
23750 GTK+ to use built in icon images, you must pass the
23751 %GTK_ICON_LOOKUP_USE_BUILTIN to
23752 gtk_icon_theme_lookup_icon().
23753 extra reference is added to the returned pixbuf, so if
23754 you want to keep it around, you must use g_object_ref().
23755 The returned image must not be modified.</doc>
23756         <return-value transfer-ownership="none">
23757           <doc xml:whitespace="preserve">the built-in image pixbuf, or %NULL. No</doc>
23758           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23759         </return-value>
23760       </method>
23761       <method name="get_display_name"
23762               c:identifier="gtk_icon_info_get_display_name"
23763               version="2.4">
23764         <doc xml:whitespace="preserve">Gets the display name for an icon. A display name is a
23765 string to be used in place of the icon name in a user
23766 visible context like a list of icons.
23767 the icon doesn't have a specified display name. This value
23768 is owned @icon_info and must not be modified or free.</doc>
23769         <return-value transfer-ownership="none">
23770           <doc xml:whitespace="preserve">the display name for the icon or %NULL, if</doc>
23771           <type name="utf8" c:type="gchar*"/>
23772         </return-value>
23773       </method>
23774       <method name="get_embedded_rect"
23775               c:identifier="gtk_icon_info_get_embedded_rect"
23776               version="2.4">
23777         <doc xml:whitespace="preserve">Gets the coordinates of a rectangle within the icon
23778 that can be used for display of information such
23779 as a preview of the contents of a text file.
23780 See gtk_icon_info_set_raw_coordinates() for further
23781 information about the coordinate system.</doc>
23782         <return-value transfer-ownership="none">
23783           <doc xml:whitespace="preserve">%TRUE if the icon has an embedded rectangle</doc>
23784           <type name="gboolean" c:type="gboolean"/>
23785         </return-value>
23786         <parameters>
23787           <parameter name="rectangle" transfer-ownership="none">
23788             <doc xml:whitespace="preserve">#GdkRectangle in which to store embedded rectangle coordinates; coordinates are only stored when this function returns %TRUE.</doc>
23789             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
23790           </parameter>
23791         </parameters>
23792       </method>
23793       <method name="get_filename"
23794               c:identifier="gtk_icon_info_get_filename"
23795               version="2.4">
23796         <doc xml:whitespace="preserve">Gets the filename for the icon. If the
23797 %GTK_ICON_LOOKUP_USE_BUILTIN flag was passed
23798 to gtk_icon_theme_lookup_icon(), there may be
23799 no filename if a builtin icon is returned; in this
23800 case, you should use gtk_icon_info_get_builtin_pixbuf().
23801 if gtk_icon_info_get_builtin_pixbuf() should
23802 be used instead. The return value is owned by
23803 GTK+ and should not be modified or freed.</doc>
23804         <return-value transfer-ownership="none">
23805           <doc xml:whitespace="preserve">the filename for the icon, or %NULL</doc>
23806           <type name="utf8" c:type="gchar*"/>
23807         </return-value>
23808       </method>
23809       <method name="load_icon"
23810               c:identifier="gtk_icon_info_load_icon"
23811               version="2.4"
23812               throws="1">
23813         <doc xml:whitespace="preserve">Renders an icon previously looked up in an icon theme using
23814 gtk_icon_theme_lookup_icon(); the size will be based on the size
23815 passed to gtk_icon_theme_lookup_icon(). Note that the resulting
23816 pixbuf may not be exactly this size; an icon theme may have icons
23817 that differ slightly from their nominal sizes, and in addition GTK+
23818 will avoid scaling icons that it considers sufficiently close to the
23819 requested size or for which the source image would have to be scaled
23820 up too far. (This maintains sharpness.). This behaviour can be changed
23821 by passing the %GTK_ICON_LOOKUP_FORCE_SIZE flag when obtaining
23822 the #GtkIconInfo. If this flag has been specified, the pixbuf
23823 returned by this function will be scaled to the exact size.
23824 created icon or a new reference to an internal icon, so you must
23825 not modify the icon. Use g_object_unref() to release your reference
23826 to the icon.</doc>
23827         <return-value transfer-ownership="full">
23828           <doc xml:whitespace="preserve">the rendered icon; this may be a newly</doc>
23829           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23830         </return-value>
23831       </method>
23832       <method name="load_symbolic"
23833               c:identifier="gtk_icon_info_load_symbolic"
23834               version="3.0"
23835               throws="1">
23836         <doc xml:whitespace="preserve">Loads an icon, modifying it to match the system colours for the foreground,
23837 success, warning and error colors provided. If the icon is not a symbolic
23838 one, the function will return the result from gtk_icon_info_load_icon().
23839 This allows loading symbolic icons that will match the system theme.
23840 Unless you are implementing a widget, you will want to use
23841 g_themed_icon_new_with_default_fallbacks() to load the icon.
23842 As implementation details, the icon loaded needs to be of SVG type,
23843 contain the "symbolic" term as the last component of the icon name,
23844 and use the 'fg', 'success', 'warning' and 'error' CSS styles in the
23845 SVG file itself.
23846 See the &lt;ulink url="http://www.freedesktop.org/wiki/SymbolicIcons"&gt;Symbolic Icons spec&lt;/ulink&gt;
23847 for more information about symbolic icons.</doc>
23848         <return-value transfer-ownership="full">
23849           <doc xml:whitespace="preserve">a #GdkPixbuf representing the loaded icon</doc>
23850           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23851         </return-value>
23852         <parameters>
23853           <parameter name="fg" transfer-ownership="none">
23854             <doc xml:whitespace="preserve">a #GdkColor representing the foreground color of the icon</doc>
23855             <type name="Gdk.Color" c:type="GdkColor*"/>
23856           </parameter>
23857           <parameter name="success_color"
23858                      transfer-ownership="none"
23859                      allow-none="1">
23860             <doc xml:whitespace="preserve">a #GdkColor representing the warning color of the icon or %NULL to use the default color</doc>
23861             <type name="Gdk.Color" c:type="GdkColor*"/>
23862           </parameter>
23863           <parameter name="warning_color"
23864                      transfer-ownership="none"
23865                      allow-none="1">
23866             <doc xml:whitespace="preserve">a #GdkColor representing the warning color of the icon or %NULL to use the default color</doc>
23867             <type name="Gdk.Color" c:type="GdkColor*"/>
23868           </parameter>
23869           <parameter name="error_color"
23870                      transfer-ownership="none"
23871                      allow-none="1">
23872             <doc xml:whitespace="preserve">a #GdkColor representing the error color of the icon or %NULL to use the default color (allow-none)</doc>
23873             <type name="Gdk.Color" c:type="GdkColor*"/>
23874           </parameter>
23875           <parameter name="was_symbolic"
23876                      transfer-ownership="none"
23877                      allow-none="1">
23878             <doc xml:whitespace="preserve">a #gboolean, returns whether the loaded icon was a symbolic one and whether the @fg color was applied to it.</doc>
23879             <type name="gboolean" c:type="gboolean*"/>
23880           </parameter>
23881         </parameters>
23882       </method>
23883       <method name="load_symbolic_for_style"
23884               c:identifier="gtk_icon_info_load_symbolic_for_style"
23885               version="3.0"
23886               throws="1">
23887         <doc xml:whitespace="preserve">Loads an icon, modifying it to match the system colours for the foreground,
23888 success, warning and error colors provided. If the icon is not a symbolic
23889 one, the function will return the result from gtk_icon_info_load_icon().
23890 This allows loading symbolic icons that will match the system theme.
23891 See gtk_icon_info_load_symbolic() for more details.</doc>
23892         <return-value transfer-ownership="full">
23893           <doc xml:whitespace="preserve">a #GdkPixbuf representing the loaded icon</doc>
23894           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23895         </return-value>
23896         <parameters>
23897           <parameter name="style" transfer-ownership="none">
23898             <doc xml:whitespace="preserve">a #GtkStyle to take the colors from</doc>
23899             <type name="Style" c:type="GtkStyle*"/>
23900           </parameter>
23901           <parameter name="state" transfer-ownership="none">
23902             <doc xml:whitespace="preserve">the widget state to use for colors</doc>
23903             <type name="StateType" c:type="GtkStateType"/>
23904           </parameter>
23905           <parameter name="was_symbolic"
23906                      transfer-ownership="none"
23907                      allow-none="1">
23908             <doc xml:whitespace="preserve">a #gboolean, returns whether the loaded icon was a symbolic one and whether the @fg color was applied to it.</doc>
23909             <type name="gboolean" c:type="gboolean*"/>
23910           </parameter>
23911         </parameters>
23912       </method>
23913       <method name="set_raw_coordinates"
23914               c:identifier="gtk_icon_info_set_raw_coordinates"
23915               version="2.4">
23916         <doc xml:whitespace="preserve">Sets whether the coordinates returned by gtk_icon_info_get_embedded_rect()
23917 and gtk_icon_info_get_attach_points() should be returned in their
23918 original form as specified in the icon theme, instead of scaled
23919 appropriately for the pixbuf returned by gtk_icon_info_load_icon().
23920 Raw coordinates are somewhat strange; they are specified to be with
23921 respect to the unscaled pixmap for PNG and XPM icons, but for SVG
23922 icons, they are in a 1000x1000 coordinate space that is scaled
23923 to the final size of the icon.  You can determine if the icon is an SVG
23924 icon by using gtk_icon_info_get_filename(), and seeing if it is non-%NULL
23925 and ends in '.svg'.
23926 This function is provided primarily to allow compatibility wrappers
23927 for older API's, and is not expected to be useful for applications.</doc>
23928         <return-value transfer-ownership="none">
23929           <type name="none" c:type="void"/>
23930         </return-value>
23931         <parameters>
23932           <parameter name="raw_coordinates" transfer-ownership="none">
23933             <doc xml:whitespace="preserve">whether the coordinates of embedded rectangles and attached points should be returned in their original (unscaled) form.</doc>
23934             <type name="gboolean" c:type="gboolean"/>
23935           </parameter>
23936         </parameters>
23937       </method>
23938     </record>
23939     <bitfield name="IconLookupFlags"
23940               glib:type-name="GtkIconLookupFlags"
23941               glib:get-type="gtk_icon_lookup_flags_get_type"
23942               c:type="GtkIconLookupFlags">
23943       <doc xml:whitespace="preserve">Used to specify options for gtk_icon_theme_lookup_icon()</doc>
23944       <member name="no_svg"
23945               value="1"
23946               c:identifier="GTK_ICON_LOOKUP_NO_SVG"
23947               glib:nick="no-svg"/>
23948       <member name="force_svg"
23949               value="2"
23950               c:identifier="GTK_ICON_LOOKUP_FORCE_SVG"
23951               glib:nick="force-svg"/>
23952       <member name="use_builtin"
23953               value="4"
23954               c:identifier="GTK_ICON_LOOKUP_USE_BUILTIN"
23955               glib:nick="use-builtin"/>
23956       <member name="generic_fallback"
23957               value="8"
23958               c:identifier="GTK_ICON_LOOKUP_GENERIC_FALLBACK"
23959               glib:nick="generic-fallback"/>
23960       <member name="force_size"
23961               value="16"
23962               c:identifier="GTK_ICON_LOOKUP_FORCE_SIZE"
23963               glib:nick="force-size"/>
23964     </bitfield>
23965     <record name="IconSet"
23966             c:type="GtkIconSet"
23967             glib:type-name="GtkIconSet"
23968             glib:get-type="gtk_icon_set_get_type"
23969             c:symbol-prefix="icon_set">
23970       <constructor name="new" c:identifier="gtk_icon_set_new">
23971         <doc xml:whitespace="preserve">Creates a new #GtkIconSet. A #GtkIconSet represents a single icon
23972 in various sizes and widget states. It can provide a #GdkPixbuf
23973 for a given size and state on request, and automatically caches
23974 some of the rendered #GdkPixbuf objects.
23975 Normally you would use gtk_widget_render_icon() instead of
23976 using #GtkIconSet directly. The one case where you'd use
23977 #GtkIconSet is to create application-specific icon sets to place in
23978 a #GtkIconFactory.</doc>
23979         <return-value transfer-ownership="full">
23980           <doc xml:whitespace="preserve">a new #GtkIconSet</doc>
23981           <type name="IconSet" c:type="GtkIconSet*"/>
23982         </return-value>
23983       </constructor>
23984       <constructor name="new_from_pixbuf"
23985                    c:identifier="gtk_icon_set_new_from_pixbuf">
23986         <doc xml:whitespace="preserve">Creates a new #GtkIconSet with @pixbuf as the default/fallback
23987 source image. If you don't add any additional #GtkIconSource to the
23988 icon set, all variants of the icon will be created from @pixbuf,
23989 using scaling, pixelation, etc. as required to adjust the icon size
23990 or make the icon look insensitive/prelighted.</doc>
23991         <return-value transfer-ownership="full">
23992           <doc xml:whitespace="preserve">a new #GtkIconSet</doc>
23993           <type name="IconSet" c:type="GtkIconSet*"/>
23994         </return-value>
23995         <parameters>
23996           <parameter name="pixbuf" transfer-ownership="none">
23997             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
23998             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
23999           </parameter>
24000         </parameters>
24001       </constructor>
24002       <method name="add_source" c:identifier="gtk_icon_set_add_source">
24003         <doc xml:whitespace="preserve">Icon sets have a list of #GtkIconSource, which they use as base
24004 icons for rendering icons in different states and sizes. Icons are
24005 scaled, made to look insensitive, etc. in
24006 gtk_icon_set_render_icon(), but #GtkIconSet needs base images to
24007 work with. The base images and when to use them are described by
24008 a #GtkIconSource.
24009 This function copies @source, so you can reuse the same source immediately
24010 without affecting the icon set.
24011 to Previous Page" icon might point in a different direction in
24012 Hebrew and in English; it might look different when insensitive;
24013 and it might change size depending on toolbar mode (small/large
24014 icons). So a single icon set would contain all those variants of
24015 the icon, and you might add a separate source for each one.
24016 You should nearly always add a "default" icon source with all
24017 fields wildcarded, which will be used as a fallback if no more
24018 specific source matches. #GtkIconSet always prefers more specific
24019 icon sources to more generic icon sources. The order in which you
24020 add the sources to the icon set does not matter.
24021 gtk_icon_set_new_from_pixbuf() creates a new icon set with a
24022 default icon source based on the given pixbuf.</doc>
24023         <return-value transfer-ownership="none">
24024           <type name="none" c:type="void"/>
24025         </return-value>
24026         <parameters>
24027           <parameter name="source" transfer-ownership="none">
24028             <doc xml:whitespace="preserve">a #GtkIconSource</doc>
24029             <type name="IconSource" c:type="GtkIconSource*"/>
24030           </parameter>
24031         </parameters>
24032       </method>
24033       <method name="copy" c:identifier="gtk_icon_set_copy">
24034         <doc xml:whitespace="preserve">Copies @icon_set by value.</doc>
24035         <return-value transfer-ownership="full">
24036           <doc xml:whitespace="preserve">a new #GtkIconSet identical to the first.</doc>
24037           <type name="IconSet" c:type="GtkIconSet*"/>
24038         </return-value>
24039       </method>
24040       <method name="get_sizes" c:identifier="gtk_icon_set_get_sizes">
24041         <doc xml:whitespace="preserve">Obtains a list of icon sizes this icon set can render. The returned
24042 array must be freed with g_free().</doc>
24043         <return-value transfer-ownership="none">
24044           <type name="none" c:type="void"/>
24045         </return-value>
24046         <parameters>
24047           <parameter name="sizes"
24048                      direction="out"
24049                      caller-allocates="0"
24050                      transfer-ownership="full">
24051             <doc xml:whitespace="preserve">return location for array of sizes</doc>
24052             <array length="1">
24053               <type name="gint"/>
24054             </array>
24055           </parameter>
24056           <parameter name="n_sizes"
24057                      direction="out"
24058                      caller-allocates="0"
24059                      transfer-ownership="full">
24060             <doc xml:whitespace="preserve">location to store number of elements in returned array</doc>
24061             <type name="gint" c:type="gint*"/>
24062           </parameter>
24063         </parameters>
24064       </method>
24065       <method name="ref" c:identifier="gtk_icon_set_ref">
24066         <doc xml:whitespace="preserve">Increments the reference count on @icon_set.</doc>
24067         <return-value transfer-ownership="full">
24068           <doc xml:whitespace="preserve">@icon_set.</doc>
24069           <type name="IconSet" c:type="GtkIconSet*"/>
24070         </return-value>
24071       </method>
24072       <method name="render_icon" c:identifier="gtk_icon_set_render_icon">
24073         <doc xml:whitespace="preserve">Renders an icon using gtk_style_render_icon(). In most cases,
24074 gtk_widget_render_icon() is better, since it automatically provides
24075 most of the arguments from the current widget settings.  This
24076 function never returns %NULL; if the icon can't be rendered
24077 (perhaps because an image file fails to load), a default "missing
24078 image" icon will be returned instead.</doc>
24079         <return-value transfer-ownership="full">
24080           <doc xml:whitespace="preserve">a #GdkPixbuf to be displayed</doc>
24081           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
24082         </return-value>
24083         <parameters>
24084           <parameter name="style" transfer-ownership="none" allow-none="1">
24085             <doc xml:whitespace="preserve">a #GtkStyle associated with @widget, or %NULL</doc>
24086             <type name="Style" c:type="GtkStyle*"/>
24087           </parameter>
24088           <parameter name="direction" transfer-ownership="none">
24089             <doc xml:whitespace="preserve">text direction</doc>
24090             <type name="TextDirection" c:type="GtkTextDirection"/>
24091           </parameter>
24092           <parameter name="state" transfer-ownership="none">
24093             <doc xml:whitespace="preserve">widget state</doc>
24094             <type name="StateType" c:type="GtkStateType"/>
24095           </parameter>
24096           <parameter name="size" transfer-ownership="none">
24097             <doc xml:whitespace="preserve">icon size. A size of (GtkIconSize)-1 means render at the size of the source and don't scale.</doc>
24098             <type name="gint"/>
24099           </parameter>
24100           <parameter name="widget" transfer-ownership="none" allow-none="1">
24101             <doc xml:whitespace="preserve">widget that will display the icon, or %NULL. The only use that is typically made of this is to determine the appropriate #GdkScreen.</doc>
24102             <type name="Widget" c:type="GtkWidget*"/>
24103           </parameter>
24104           <parameter name="detail" transfer-ownership="none" allow-none="1">
24105             <doc xml:whitespace="preserve">detail to pass to the theme engine, or %NULL. Note that passing a detail of anything but %NULL will disable caching.</doc>
24106             <type name="utf8" c:type="char*"/>
24107           </parameter>
24108         </parameters>
24109       </method>
24110       <method name="unref" c:identifier="gtk_icon_set_unref">
24111         <doc xml:whitespace="preserve">Decrements the reference count on @icon_set, and frees memory
24112 if the reference count reaches 0.</doc>
24113         <return-value transfer-ownership="none">
24114           <type name="none" c:type="void"/>
24115         </return-value>
24116       </method>
24117     </record>
24118     <enumeration name="IconSize"
24119                  glib:type-name="GtkIconSize"
24120                  glib:get-type="gtk_icon_size_get_type"
24121                  c:type="GtkIconSize">
24122       <member name="invalid"
24123               value="0"
24124               c:identifier="GTK_ICON_SIZE_INVALID"
24125               glib:nick="invalid"/>
24126       <member name="menu"
24127               value="1"
24128               c:identifier="GTK_ICON_SIZE_MENU"
24129               glib:nick="menu"/>
24130       <member name="small_toolbar"
24131               value="2"
24132               c:identifier="GTK_ICON_SIZE_SMALL_TOOLBAR"
24133               glib:nick="small-toolbar"/>
24134       <member name="large_toolbar"
24135               value="3"
24136               c:identifier="GTK_ICON_SIZE_LARGE_TOOLBAR"
24137               glib:nick="large-toolbar"/>
24138       <member name="button"
24139               value="4"
24140               c:identifier="GTK_ICON_SIZE_BUTTON"
24141               glib:nick="button"/>
24142       <member name="dnd"
24143               value="5"
24144               c:identifier="GTK_ICON_SIZE_DND"
24145               glib:nick="dnd"/>
24146       <member name="dialog"
24147               value="6"
24148               c:identifier="GTK_ICON_SIZE_DIALOG"
24149               glib:nick="dialog"/>
24150     </enumeration>
24151     <record name="IconSource"
24152             c:type="GtkIconSource"
24153             glib:type-name="GtkIconSource"
24154             glib:get-type="gtk_icon_source_get_type"
24155             c:symbol-prefix="icon_source">
24156       <constructor name="new" c:identifier="gtk_icon_source_new">
24157         <doc xml:whitespace="preserve">Creates a new #GtkIconSource. A #GtkIconSource contains a #GdkPixbuf (or
24158 image filename) that serves as the base image for one or more of the
24159 icons in a #GtkIconSet, along with a specification for which icons in the
24160 icon set will be based on that pixbuf or image file. An icon set contains
24161 a set of icons that represent "the same" logical concept in different states,
24162 different global text directions, and different sizes.
24163 So for example a web browser's "Back to Previous Page" icon might
24164 point in a different direction in Hebrew and in English; it might
24165 look different when insensitive; and it might change size depending
24166 on toolbar mode (small/large icons). So a single icon set would
24167 contain all those variants of the icon. #GtkIconSet contains a list
24168 of #GtkIconSource from which it can derive specific icon variants in
24169 the set.
24170 In the simplest case, #GtkIconSet contains one source pixbuf from
24171 which it derives all variants. The convenience function
24172 gtk_icon_set_new_from_pixbuf() handles this case; if you only have
24173 one source pixbuf, just use that function.
24174 If you want to use a different base pixbuf for different icon
24175 variants, you create multiple icon sources, mark which variants
24176 they'll be used to create, and add them to the icon set with
24177 gtk_icon_set_add_source().
24178 By default, the icon source has all parameters wildcarded. That is,
24179 the icon source will be used as the base icon for any desired text
24180 direction, widget state, or icon size.</doc>
24181         <return-value transfer-ownership="full">
24182           <doc xml:whitespace="preserve">a new #GtkIconSource</doc>
24183           <type name="IconSource" c:type="GtkIconSource*"/>
24184         </return-value>
24185       </constructor>
24186       <method name="copy" c:identifier="gtk_icon_source_copy">
24187         <doc xml:whitespace="preserve">Creates a copy of @source; mostly useful for language bindings.</doc>
24188         <return-value transfer-ownership="full">
24189           <doc xml:whitespace="preserve">a new #GtkIconSource</doc>
24190           <type name="IconSource" c:type="GtkIconSource*"/>
24191         </return-value>
24192       </method>
24193       <method name="free" c:identifier="gtk_icon_source_free">
24194         <doc xml:whitespace="preserve">Frees a dynamically-allocated icon source, along with its
24195 filename, size, and pixbuf fields if those are not %NULL.</doc>
24196         <return-value transfer-ownership="none">
24197           <type name="none" c:type="void"/>
24198         </return-value>
24199       </method>
24200       <method name="get_direction"
24201               c:identifier="gtk_icon_source_get_direction">
24202         <doc xml:whitespace="preserve">Obtains the text direction this icon source applies to. The return
24203 value is only useful/meaningful if the text direction is &lt;emphasis&gt;not&lt;/emphasis&gt;
24204 wildcarded.</doc>
24205         <return-value transfer-ownership="none">
24206           <doc xml:whitespace="preserve">text direction this source matches</doc>
24207           <type name="TextDirection" c:type="GtkTextDirection"/>
24208         </return-value>
24209       </method>
24210       <method name="get_direction_wildcarded"
24211               c:identifier="gtk_icon_source_get_direction_wildcarded">
24212         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_direction_wildcarded().</doc>
24213         <return-value transfer-ownership="none">
24214           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any text direction variant</doc>
24215           <type name="gboolean" c:type="gboolean"/>
24216         </return-value>
24217       </method>
24218       <method name="get_filename" c:identifier="gtk_icon_source_get_filename">
24219         <doc xml:whitespace="preserve">Retrieves the source filename, or %NULL if none is set. The
24220 filename is not a copy, and should not be modified or expected to
24221 persist beyond the lifetime of the icon source.
24222 or freed.</doc>
24223         <return-value transfer-ownership="none">
24224           <doc xml:whitespace="preserve">image filename. This string must not be modified</doc>
24225           <type name="utf8" c:type="gchar*"/>
24226         </return-value>
24227       </method>
24228       <method name="get_icon_name"
24229               c:identifier="gtk_icon_source_get_icon_name">
24230         <doc xml:whitespace="preserve">Retrieves the source icon name, or %NULL if none is set. The
24231 icon_name is not a copy, and should not be modified or expected to
24232 persist beyond the lifetime of the icon source.</doc>
24233         <return-value transfer-ownership="none">
24234           <doc xml:whitespace="preserve">icon name. This string must not be modified or freed.</doc>
24235           <type name="utf8" c:type="gchar*"/>
24236         </return-value>
24237       </method>
24238       <method name="get_pixbuf" c:identifier="gtk_icon_source_get_pixbuf">
24239         <doc xml:whitespace="preserve">Retrieves the source pixbuf, or %NULL if none is set.
24240 In addition, if a filename source is in use, this
24241 function in some cases will return the pixbuf from
24242 loaded from the filename. This is, for example, true
24243 for the GtkIconSource passed to the GtkStyle::render_icon()
24244 virtual function. The reference count on the pixbuf is
24245 not incremented.</doc>
24246         <return-value transfer-ownership="none">
24247           <doc xml:whitespace="preserve">source pixbuf</doc>
24248           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
24249         </return-value>
24250       </method>
24251       <method name="get_size" c:identifier="gtk_icon_source_get_size">
24252         <doc xml:whitespace="preserve">Obtains the icon size this source applies to. The return value
24253 is only useful/meaningful if the icon size is &lt;emphasis&gt;not&lt;/emphasis&gt; wildcarded.</doc>
24254         <return-value transfer-ownership="none">
24255           <doc xml:whitespace="preserve">icon size this source matches.</doc>
24256           <type name="gint"/>
24257         </return-value>
24258       </method>
24259       <method name="get_size_wildcarded"
24260               c:identifier="gtk_icon_source_get_size_wildcarded">
24261         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_size_wildcarded().</doc>
24262         <return-value transfer-ownership="none">
24263           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any icon size variant</doc>
24264           <type name="gboolean" c:type="gboolean"/>
24265         </return-value>
24266       </method>
24267       <method name="get_state" c:identifier="gtk_icon_source_get_state">
24268         <doc xml:whitespace="preserve">Obtains the widget state this icon source applies to. The return
24269 value is only useful/meaningful if the widget state is &lt;emphasis&gt;not&lt;/emphasis&gt;
24270 wildcarded.</doc>
24271         <return-value transfer-ownership="none">
24272           <doc xml:whitespace="preserve">widget state this source matches</doc>
24273           <type name="StateType" c:type="GtkStateType"/>
24274         </return-value>
24275       </method>
24276       <method name="get_state_wildcarded"
24277               c:identifier="gtk_icon_source_get_state_wildcarded">
24278         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_state_wildcarded().</doc>
24279         <return-value transfer-ownership="none">
24280           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any widget state variant</doc>
24281           <type name="gboolean" c:type="gboolean"/>
24282         </return-value>
24283       </method>
24284       <method name="set_direction"
24285               c:identifier="gtk_icon_source_set_direction">
24286         <doc xml:whitespace="preserve">Sets the text direction this icon source is intended to be used
24287 with.
24288 Setting the text direction on an icon source makes no difference
24289 if the text direction is wildcarded. Therefore, you should usually
24290 call gtk_icon_source_set_direction_wildcarded() to un-wildcard it
24291 in addition to calling this function.</doc>
24292         <return-value transfer-ownership="none">
24293           <type name="none" c:type="void"/>
24294         </return-value>
24295         <parameters>
24296           <parameter name="direction" transfer-ownership="none">
24297             <doc xml:whitespace="preserve">text direction this source applies to</doc>
24298             <type name="TextDirection" c:type="GtkTextDirection"/>
24299           </parameter>
24300         </parameters>
24301       </method>
24302       <method name="set_direction_wildcarded"
24303               c:identifier="gtk_icon_source_set_direction_wildcarded">
24304         <doc xml:whitespace="preserve">If the text direction is wildcarded, this source can be used
24305 as the base image for an icon in any #GtkTextDirection.
24306 If the text direction is not wildcarded, then the
24307 text direction the icon source applies to should be set
24308 with gtk_icon_source_set_direction(), and the icon source
24309 will only be used with that text direction.
24310 #GtkIconSet prefers non-wildcarded sources (exact matches) over
24311 wildcarded sources, and will use an exact match when possible.</doc>
24312         <return-value transfer-ownership="none">
24313           <type name="none" c:type="void"/>
24314         </return-value>
24315         <parameters>
24316           <parameter name="setting" transfer-ownership="none">
24317             <doc xml:whitespace="preserve">%TRUE to wildcard the text direction</doc>
24318             <type name="gboolean" c:type="gboolean"/>
24319           </parameter>
24320         </parameters>
24321       </method>
24322       <method name="set_filename" c:identifier="gtk_icon_source_set_filename">
24323         <doc xml:whitespace="preserve">Sets the name of an image file to use as a base image when creating
24324 icon variants for #GtkIconSet. The filename must be absolute.</doc>
24325         <return-value transfer-ownership="none">
24326           <type name="none" c:type="void"/>
24327         </return-value>
24328         <parameters>
24329           <parameter name="filename" transfer-ownership="none">
24330             <doc xml:whitespace="preserve">image file to use</doc>
24331             <type name="utf8" c:type="gchar*"/>
24332           </parameter>
24333         </parameters>
24334       </method>
24335       <method name="set_icon_name"
24336               c:identifier="gtk_icon_source_set_icon_name">
24337         <return-value transfer-ownership="none">
24338           <type name="none" c:type="void"/>
24339         </return-value>
24340         <parameters>
24341           <parameter name="icon_name" transfer-ownership="none">
24342             <type name="utf8" c:type="gchar*"/>
24343           </parameter>
24344         </parameters>
24345       </method>
24346       <method name="set_pixbuf" c:identifier="gtk_icon_source_set_pixbuf">
24347         <doc xml:whitespace="preserve">Sets a pixbuf to use as a base image when creating icon variants
24348 for #GtkIconSet.</doc>
24349         <return-value transfer-ownership="none">
24350           <type name="none" c:type="void"/>
24351         </return-value>
24352         <parameters>
24353           <parameter name="pixbuf" transfer-ownership="none">
24354             <doc xml:whitespace="preserve">pixbuf to use as a source</doc>
24355             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
24356           </parameter>
24357         </parameters>
24358       </method>
24359       <method name="set_size" c:identifier="gtk_icon_source_set_size">
24360         <doc xml:whitespace="preserve">Sets the icon size this icon source is intended to be used
24361 with.
24362 Setting the icon size on an icon source makes no difference
24363 if the size is wildcarded. Therefore, you should usually
24364 call gtk_icon_source_set_size_wildcarded() to un-wildcard it
24365 in addition to calling this function.</doc>
24366         <return-value transfer-ownership="none">
24367           <type name="none" c:type="void"/>
24368         </return-value>
24369         <parameters>
24370           <parameter name="size" transfer-ownership="none">
24371             <doc xml:whitespace="preserve">icon size this source applies to</doc>
24372             <type name="gint"/>
24373           </parameter>
24374         </parameters>
24375       </method>
24376       <method name="set_size_wildcarded"
24377               c:identifier="gtk_icon_source_set_size_wildcarded">
24378         <doc xml:whitespace="preserve">If the icon size is wildcarded, this source can be used as the base
24379 image for an icon of any size.  If the size is not wildcarded, then
24380 the size the source applies to should be set with
24381 gtk_icon_source_set_size() and the icon source will only be used
24382 with that specific size.
24383 #GtkIconSet prefers non-wildcarded sources (exact matches) over
24384 wildcarded sources, and will use an exact match when possible.
24385 #GtkIconSet will normally scale wildcarded source images to produce
24386 an appropriate icon at a given size, but will not change the size
24387 of source images that match exactly.</doc>
24388         <return-value transfer-ownership="none">
24389           <type name="none" c:type="void"/>
24390         </return-value>
24391         <parameters>
24392           <parameter name="setting" transfer-ownership="none">
24393             <doc xml:whitespace="preserve">%TRUE to wildcard the widget state</doc>
24394             <type name="gboolean" c:type="gboolean"/>
24395           </parameter>
24396         </parameters>
24397       </method>
24398       <method name="set_state" c:identifier="gtk_icon_source_set_state">
24399         <doc xml:whitespace="preserve">Sets the widget state this icon source is intended to be used
24400 with.
24401 Setting the widget state on an icon source makes no difference
24402 if the state is wildcarded. Therefore, you should usually
24403 call gtk_icon_source_set_state_wildcarded() to un-wildcard it
24404 in addition to calling this function.</doc>
24405         <return-value transfer-ownership="none">
24406           <type name="none" c:type="void"/>
24407         </return-value>
24408         <parameters>
24409           <parameter name="state" transfer-ownership="none">
24410             <doc xml:whitespace="preserve">widget state this source applies to</doc>
24411             <type name="StateType" c:type="GtkStateType"/>
24412           </parameter>
24413         </parameters>
24414       </method>
24415       <method name="set_state_wildcarded"
24416               c:identifier="gtk_icon_source_set_state_wildcarded">
24417         <doc xml:whitespace="preserve">If the widget state is wildcarded, this source can be used as the
24418 base image for an icon in any #GtkStateType.  If the widget state
24419 is not wildcarded, then the state the source applies to should be
24420 set with gtk_icon_source_set_state() and the icon source will
24421 only be used with that specific state.
24422 #GtkIconSet prefers non-wildcarded sources (exact matches) over
24423 wildcarded sources, and will use an exact match when possible.
24424 #GtkIconSet will normally transform wildcarded source images to
24425 produce an appropriate icon for a given state, for example
24426 lightening an image on prelight, but will not modify source images
24427 that match exactly.</doc>
24428         <return-value transfer-ownership="none">
24429           <type name="none" c:type="void"/>
24430         </return-value>
24431         <parameters>
24432           <parameter name="setting" transfer-ownership="none">
24433             <doc xml:whitespace="preserve">%TRUE to wildcard the widget state</doc>
24434             <type name="gboolean" c:type="gboolean"/>
24435           </parameter>
24436         </parameters>
24437       </method>
24438     </record>
24439     <class name="IconTheme"
24440            c:symbol-prefix="icon_theme"
24441            c:type="GtkIconTheme"
24442            parent="GObject.Object"
24443            glib:type-name="GtkIconTheme"
24444            glib:get-type="gtk_icon_theme_get_type"
24445            glib:type-struct="IconThemeClass">
24446       <constructor name="new" c:identifier="gtk_icon_theme_new" version="2.4">
24447         <doc xml:whitespace="preserve">Creates a new icon theme object. Icon theme objects are used
24448 to lookup up an icon by name in a particular icon theme.
24449 Usually, you'll want to use gtk_icon_theme_get_default()
24450 or gtk_icon_theme_get_for_screen() rather than creating
24451 a new icon theme object for scratch.</doc>
24452         <return-value transfer-ownership="full">
24453           <doc xml:whitespace="preserve">the newly created #GtkIconTheme object.</doc>
24454           <type name="IconTheme" c:type="GtkIconTheme*"/>
24455         </return-value>
24456       </constructor>
24457       <function name="add_builtin_icon"
24458                 c:identifier="gtk_icon_theme_add_builtin_icon"
24459                 version="2.4">
24460         <doc xml:whitespace="preserve">Registers a built-in icon for icon theme lookups. The idea
24461 of built-in icons is to allow an application or library
24462 that uses themed icons to function requiring files to
24463 be present in the file system. For instance, the default
24464 images for all of GTK+'s stock icons are registered
24465 as built-icons.
24466 In general, if you use gtk_icon_theme_add_builtin_icon()
24467 you should also install the icon in the icon theme, so
24468 that the icon is generally available.
24469 This function will generally be used with pixbufs loaded
24470 via gdk_pixbuf_new_from_inline().</doc>
24471         <return-value transfer-ownership="none">
24472           <type name="none" c:type="void"/>
24473         </return-value>
24474         <parameters>
24475           <parameter name="icon_name" transfer-ownership="none">
24476             <doc xml:whitespace="preserve">the name of the icon to register</doc>
24477             <type name="utf8" c:type="gchar*"/>
24478           </parameter>
24479           <parameter name="size" transfer-ownership="none">
24480             <doc xml:whitespace="preserve">the size at which to register the icon (different images can be registered for the same icon name at different sizes.)</doc>
24481             <type name="gint" c:type="gint"/>
24482           </parameter>
24483           <parameter name="pixbuf" transfer-ownership="none">
24484             <doc xml:whitespace="preserve">#GdkPixbuf that contains the image to use for @icon_name.</doc>
24485             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
24486           </parameter>
24487         </parameters>
24488       </function>
24489       <function name="get_default"
24490                 c:identifier="gtk_icon_theme_get_default"
24491                 version="2.4">
24492         <doc xml:whitespace="preserve">Gets the icon theme for the default screen. See
24493 gtk_icon_theme_get_for_screen().
24494 the default screen. This icon theme is associated with
24495 the screen and can be used as long as the screen
24496 is open. Do not ref or unref it.</doc>
24497         <return-value transfer-ownership="none">
24498           <doc xml:whitespace="preserve">A unique #GtkIconTheme associated with</doc>
24499           <type name="IconTheme" c:type="GtkIconTheme*"/>
24500         </return-value>
24501       </function>
24502       <function name="get_for_screen"
24503                 c:identifier="gtk_icon_theme_get_for_screen"
24504                 version="2.4">
24505         <doc xml:whitespace="preserve">Gets the icon theme object associated with @screen; if this
24506 function has not previously been called for the given
24507 screen, a new icon theme object will be created and
24508 associated with the screen. Icon theme objects are
24509 fairly expensive to create, so using this function
24510 is usually a better choice than calling than gtk_icon_theme_new()
24511 and setting the screen yourself; by using this function
24512 a single icon theme object will be shared between users.
24513 the given screen. This icon theme is associated with
24514 the screen and can be used as long as the screen
24515 is open. Do not ref or unref it.</doc>
24516         <return-value transfer-ownership="none">
24517           <doc xml:whitespace="preserve">A unique #GtkIconTheme associated with</doc>
24518           <type name="IconTheme" c:type="GtkIconTheme*"/>
24519         </return-value>
24520         <parameters>
24521           <parameter name="screen" transfer-ownership="none">
24522             <doc xml:whitespace="preserve">a #GdkScreen</doc>
24523             <type name="Gdk.Screen" c:type="GdkScreen*"/>
24524           </parameter>
24525         </parameters>
24526       </function>
24527       <method name="append_search_path"
24528               c:identifier="gtk_icon_theme_append_search_path"
24529               version="2.4">
24530         <doc xml:whitespace="preserve">Appends a directory to the search path. 
24531 See gtk_icon_theme_set_search_path().</doc>
24532         <return-value transfer-ownership="none">
24533           <type name="none" c:type="void"/>
24534         </return-value>
24535         <parameters>
24536           <parameter name="path" transfer-ownership="none">
24537             <doc xml:whitespace="preserve">directory name to append to the icon path</doc>
24538             <type name="utf8" c:type="gchar*"/>
24539           </parameter>
24540         </parameters>
24541       </method>
24542       <method name="choose_icon"
24543               c:identifier="gtk_icon_theme_choose_icon"
24544               version="2.12">
24545         <doc xml:whitespace="preserve">Looks up a named icon and returns a structure containing
24546 information such as the filename of the icon. The icon
24547 can then be rendered into a pixbuf using
24548 gtk_icon_info_load_icon(). (gtk_icon_theme_load_icon()
24549 combines these two steps if all you need is the pixbuf.)
24550 If @icon_names contains more than one name, this function 
24551 tries them all in the given order before falling back to 
24552 inherited icon themes.
24553 about the icon, or %NULL if the icon wasn't found. Free with
24554 gtk_icon_info_free()</doc>
24555         <return-value transfer-ownership="full">
24556           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing information</doc>
24557           <type name="IconInfo" c:type="GtkIconInfo*"/>
24558         </return-value>
24559         <parameters>
24560           <parameter name="icon_names" transfer-ownership="none">
24561             <doc xml:whitespace="preserve">%NULL-terminated array of icon names to lookup</doc>
24562             <type name="utf8" c:type="gchar*"/>
24563           </parameter>
24564           <parameter name="size" transfer-ownership="none">
24565             <doc xml:whitespace="preserve">desired icon size</doc>
24566             <type name="gint" c:type="gint"/>
24567           </parameter>
24568           <parameter name="flags" transfer-ownership="none">
24569             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
24570             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
24571           </parameter>
24572         </parameters>
24573       </method>
24574       <method name="get_example_icon_name"
24575               c:identifier="gtk_icon_theme_get_example_icon_name"
24576               version="2.4">
24577         <doc xml:whitespace="preserve">Gets the name of an icon that is representative of the
24578 current theme (for instance, to use when presenting
24579 a list of themes to the user.)
24580 Free with g_free().</doc>
24581         <return-value transfer-ownership="full">
24582           <doc xml:whitespace="preserve">the name of an example icon or %NULL.</doc>
24583           <type name="utf8" c:type="char*"/>
24584         </return-value>
24585       </method>
24586       <method name="get_icon_sizes"
24587               c:identifier="gtk_icon_theme_get_icon_sizes"
24588               version="2.6">
24589         <doc xml:whitespace="preserve">Returns an array of integers describing the sizes at which
24590 the icon is available without scaling. A size of -1 means 
24591 that the icon is available in a scalable format. The array 
24592 is zero-terminated.
24593 which the icon is available. The array should be freed with g_free()
24594 when it is no longer needed.</doc>
24595         <return-value transfer-ownership="none">
24596           <doc xml:whitespace="preserve">An newly allocated array describing the sizes at</doc>
24597           <type name="gint" c:type="gint*"/>
24598         </return-value>
24599         <parameters>
24600           <parameter name="icon_name" transfer-ownership="none">
24601             <doc xml:whitespace="preserve">the name of an icon</doc>
24602             <type name="utf8" c:type="gchar*"/>
24603           </parameter>
24604         </parameters>
24605       </method>
24606       <method name="get_search_path"
24607               c:identifier="gtk_icon_theme_get_search_path"
24608               version="2.4">
24609         <doc xml:whitespace="preserve">Gets the current search path. See gtk_icon_theme_set_search_path().</doc>
24610         <return-value transfer-ownership="none">
24611           <type name="none" c:type="void"/>
24612         </return-value>
24613         <parameters>
24614           <parameter name="path"
24615                      direction="out"
24616                      caller-allocates="0"
24617                      transfer-ownership="full"
24618                      allow-none="1">
24619             <doc xml:whitespace="preserve">location to store a list of icon theme path directories or %NULL The stored value should be freed with g_strfreev().</doc>
24620             <array length="1" c:type="gchar**">
24621               <type name="utf8"/>
24622             </array>
24623           </parameter>
24624           <parameter name="n_elements"
24625                      direction="out"
24626                      caller-allocates="0"
24627                      transfer-ownership="full">
24628             <doc xml:whitespace="preserve">location to store number of elements in @path, or %NULL</doc>
24629             <type name="gint" c:type="gint*"/>
24630           </parameter>
24631         </parameters>
24632       </method>
24633       <method name="has_icon"
24634               c:identifier="gtk_icon_theme_has_icon"
24635               version="2.4">
24636         <doc xml:whitespace="preserve">Checks whether an icon theme includes an icon
24637 for a particular name.
24638 icon for @icon_name.</doc>
24639         <return-value transfer-ownership="none">
24640           <doc xml:whitespace="preserve">%TRUE if @icon_theme includes an</doc>
24641           <type name="gboolean" c:type="gboolean"/>
24642         </return-value>
24643         <parameters>
24644           <parameter name="icon_name" transfer-ownership="none">
24645             <doc xml:whitespace="preserve">the name of an icon</doc>
24646             <type name="utf8" c:type="gchar*"/>
24647           </parameter>
24648         </parameters>
24649       </method>
24650       <method name="list_contexts"
24651               c:identifier="gtk_icon_theme_list_contexts"
24652               version="2.12">
24653         <doc xml:whitespace="preserve">Gets the list of contexts available within the current
24654 hierarchy of icon themes
24655 contexts in the theme. You must first free each element
24656 in the list with g_free(), then free the list itself
24657 with g_list_free().</doc>
24658         <return-value transfer-ownership="full">
24659           <doc xml:whitespace="preserve">a #GList list holding the names of all the</doc>
24660           <type name="GLib.List" c:type="GList*">
24661             <type name="utf8"/>
24662           </type>
24663         </return-value>
24664       </method>
24665       <method name="list_icons"
24666               c:identifier="gtk_icon_theme_list_icons"
24667               version="2.4">
24668         <doc xml:whitespace="preserve">Lists the icons in the current icon theme. Only a subset
24669 of the icons can be listed by providing a context string.
24670 The set of values for the context string is system dependent,
24671 but will typically include such values as "Applications" and
24672 "MimeTypes".
24673 icons in the theme. You must first free each element
24674 in the list with g_free(), then free the list itself
24675 with g_list_free().</doc>
24676         <return-value transfer-ownership="none">
24677           <doc xml:whitespace="preserve">a #GList list holding the names of all the</doc>
24678           <type name="GLib.List" c:type="GList*">
24679             <type name="utf8"/>
24680           </type>
24681         </return-value>
24682         <parameters>
24683           <parameter name="context" transfer-ownership="none">
24684             <doc xml:whitespace="preserve">a string identifying a particular type of icon, or %NULL to list all icons.</doc>
24685             <type name="utf8" c:type="gchar*"/>
24686           </parameter>
24687         </parameters>
24688       </method>
24689       <method name="load_icon"
24690               c:identifier="gtk_icon_theme_load_icon"
24691               version="2.4"
24692               throws="1">
24693         <doc xml:whitespace="preserve">Looks up an icon in an icon theme, scales it to the given size
24694 and renders it into a pixbuf. This is a convenience function;
24695 if more details about the icon are needed, use
24696 gtk_icon_theme_lookup_icon() followed by gtk_icon_info_load_icon().
24697 Note that you probably want to listen for icon theme changes and
24698 update the icon. This is usually done by connecting to the
24699 GtkWidget::style-set signal. If for some reason you do not want to
24700 update the icon when the icon theme changes, you should consider
24701 using gdk_pixbuf_copy() to make a private copy of the pixbuf
24702 returned by this function. Otherwise GTK+ may need to keep the old
24703 icon theme loaded, which would be a waste of memory.
24704 newly created icon or a new reference to an internal icon, so
24705 you must not modify the icon. Use g_object_unref() to release
24706 your reference to the icon. %NULL if the icon isn't found.</doc>
24707         <return-value transfer-ownership="full">
24708           <doc xml:whitespace="preserve">the rendered icon; this may be a</doc>
24709           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
24710         </return-value>
24711         <parameters>
24712           <parameter name="icon_name" transfer-ownership="none">
24713             <doc xml:whitespace="preserve">the name of the icon to lookup</doc>
24714             <type name="utf8" c:type="gchar*"/>
24715           </parameter>
24716           <parameter name="size" transfer-ownership="none">
24717             <doc xml:whitespace="preserve">the desired icon size. The resulting icon may not be exactly this size; see gtk_icon_info_load_icon().</doc>
24718             <type name="gint" c:type="gint"/>
24719           </parameter>
24720           <parameter name="flags" transfer-ownership="none">
24721             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
24722             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
24723           </parameter>
24724         </parameters>
24725       </method>
24726       <method name="lookup_by_gicon"
24727               c:identifier="gtk_icon_theme_lookup_by_gicon"
24728               version="2.14">
24729         <doc xml:whitespace="preserve">Looks up an icon and returns a structure containing
24730 information such as the filename of the icon. 
24731 The icon can then be rendered into a pixbuf using
24732 gtk_icon_info_load_icon().
24733 information about the icon, or %NULL if the icon 
24734 wasn't found. Free with gtk_icon_info_free()</doc>
24735         <return-value transfer-ownership="full">
24736           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing</doc>
24737           <type name="IconInfo" c:type="GtkIconInfo*"/>
24738         </return-value>
24739         <parameters>
24740           <parameter name="icon" transfer-ownership="none">
24741             <doc xml:whitespace="preserve">the #GIcon to look up</doc>
24742             <type name="Gio.Icon" c:type="GIcon*"/>
24743           </parameter>
24744           <parameter name="size" transfer-ownership="none">
24745             <doc xml:whitespace="preserve">desired icon size</doc>
24746             <type name="gint" c:type="gint"/>
24747           </parameter>
24748           <parameter name="flags" transfer-ownership="none">
24749             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
24750             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
24751           </parameter>
24752         </parameters>
24753       </method>
24754       <method name="lookup_icon"
24755               c:identifier="gtk_icon_theme_lookup_icon"
24756               version="2.4">
24757         <doc xml:whitespace="preserve">Looks up a named icon and returns a structure containing
24758 information such as the filename of the icon. The icon
24759 can then be rendered into a pixbuf using
24760 gtk_icon_info_load_icon(). (gtk_icon_theme_load_icon()
24761 combines these two steps if all you need is the pixbuf.)
24762 about the icon, or %NULL if the icon wasn't found. Free with
24763 gtk_icon_info_free()</doc>
24764         <return-value transfer-ownership="full">
24765           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing information</doc>
24766           <type name="IconInfo" c:type="GtkIconInfo*"/>
24767         </return-value>
24768         <parameters>
24769           <parameter name="icon_name" transfer-ownership="none">
24770             <doc xml:whitespace="preserve">the name of the icon to lookup</doc>
24771             <type name="utf8" c:type="gchar*"/>
24772           </parameter>
24773           <parameter name="size" transfer-ownership="none">
24774             <doc xml:whitespace="preserve">desired icon size</doc>
24775             <type name="gint" c:type="gint"/>
24776           </parameter>
24777           <parameter name="flags" transfer-ownership="none">
24778             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
24779             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
24780           </parameter>
24781         </parameters>
24782       </method>
24783       <method name="prepend_search_path"
24784               c:identifier="gtk_icon_theme_prepend_search_path"
24785               version="2.4">
24786         <doc xml:whitespace="preserve">Prepends a directory to the search path. 
24787 See gtk_icon_theme_set_search_path().</doc>
24788         <return-value transfer-ownership="none">
24789           <type name="none" c:type="void"/>
24790         </return-value>
24791         <parameters>
24792           <parameter name="path" transfer-ownership="none">
24793             <doc xml:whitespace="preserve">directory name to prepend to the icon path</doc>
24794             <type name="utf8" c:type="gchar*"/>
24795           </parameter>
24796         </parameters>
24797       </method>
24798       <method name="rescan_if_needed"
24799               c:identifier="gtk_icon_theme_rescan_if_needed"
24800               version="2.4">
24801         <doc xml:whitespace="preserve">Checks to see if the icon theme has changed; if it has, any
24802 currently cached information is discarded and will be reloaded
24803 next time @icon_theme is accessed.
24804 to be reloaded.</doc>
24805         <return-value transfer-ownership="none">
24806           <doc xml:whitespace="preserve">%TRUE if the icon theme has changed and needed</doc>
24807           <type name="gboolean" c:type="gboolean"/>
24808         </return-value>
24809       </method>
24810       <method name="set_custom_theme"
24811               c:identifier="gtk_icon_theme_set_custom_theme"
24812               version="2.4">
24813         <doc xml:whitespace="preserve">Sets the name of the icon theme that the #GtkIconTheme object uses
24814 overriding system configuration. This function cannot be called
24815 on the icon theme objects returned from gtk_icon_theme_get_default()
24816 and gtk_icon_theme_get_for_screen().</doc>
24817         <return-value transfer-ownership="none">
24818           <type name="none" c:type="void"/>
24819         </return-value>
24820         <parameters>
24821           <parameter name="theme_name" transfer-ownership="none">
24822             <doc xml:whitespace="preserve">name of icon theme to use instead of configured theme, or %NULL to unset a previously set custom theme</doc>
24823             <type name="utf8" c:type="gchar*"/>
24824           </parameter>
24825         </parameters>
24826       </method>
24827       <method name="set_screen"
24828               c:identifier="gtk_icon_theme_set_screen"
24829               version="2.4">
24830         <doc xml:whitespace="preserve">Sets the screen for an icon theme; the screen is used
24831 to track the user's currently configured icon theme,
24832 which might be different for different screens.</doc>
24833         <return-value transfer-ownership="none">
24834           <type name="none" c:type="void"/>
24835         </return-value>
24836         <parameters>
24837           <parameter name="screen" transfer-ownership="none">
24838             <doc xml:whitespace="preserve">a #GdkScreen</doc>
24839             <type name="Gdk.Screen" c:type="GdkScreen*"/>
24840           </parameter>
24841         </parameters>
24842       </method>
24843       <method name="set_search_path"
24844               c:identifier="gtk_icon_theme_set_search_path"
24845               version="2.4">
24846         <doc xml:whitespace="preserve">Sets the search path for the icon theme object. When looking
24847 for an icon theme, GTK+ will search for a subdirectory of
24848 one or more of the directories in @path with the same name
24849 as the icon theme. (Themes from multiple of the path elements
24850 are combined to allow themes to be extended by adding icons
24851 in the user's home directory.)
24852 In addition if an icon found isn't found either in the current
24853 icon theme or the default icon theme, and an image file with
24854 the right name is found directly in one of the elements of
24855 (This is legacy feature, and new icons should be put
24856 into the default icon theme, which is called DEFAULT_THEME_NAME,
24857 rather than directly on the icon path.)</doc>
24858         <return-value transfer-ownership="none">
24859           <type name="none" c:type="void"/>
24860         </return-value>
24861         <parameters>
24862           <parameter name="path" transfer-ownership="none">
24863             <doc xml:whitespace="preserve">array of directories that are searched for icon themes</doc>
24864             <type name="utf8" c:type="gchar*"/>
24865           </parameter>
24866           <parameter name="n_elements" transfer-ownership="none">
24867             <doc xml:whitespace="preserve">number of elements in @path.</doc>
24868             <type name="gint" c:type="gint"/>
24869           </parameter>
24870         </parameters>
24871       </method>
24872       <field name="parent_instance">
24873         <type name="GObject.Object" c:type="GObject"/>
24874       </field>
24875       <field name="priv">
24876         <type name="IconThemePrivate" c:type="GtkIconThemePrivate*"/>
24877       </field>
24878       <glib:signal name="changed">
24879         <return-value transfer-ownership="none">
24880           <type name="none"/>
24881         </return-value>
24882       </glib:signal>
24883     </class>
24884     <record name="IconThemeClass"
24885             c:type="GtkIconThemeClass"
24886             glib:is-gtype-struct-for="IconTheme">
24887       <field name="parent_class">
24888         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
24889       </field>
24890       <field name="changed">
24891         <callback name="changed">
24892           <return-value transfer-ownership="none">
24893             <type name="none" c:type="void"/>
24894           </return-value>
24895           <parameters>
24896             <parameter name="icon_theme" transfer-ownership="none">
24897               <type name="IconTheme" c:type="GtkIconTheme*"/>
24898             </parameter>
24899           </parameters>
24900         </callback>
24901       </field>
24902     </record>
24903     <enumeration name="IconThemeError"
24904                  glib:type-name="GtkIconThemeError"
24905                  glib:get-type="gtk_icon_theme_error_get_type"
24906                  c:type="GtkIconThemeError"
24907                  glib:error-quark="gtk_icon_theme_error_quark">
24908       <doc xml:whitespace="preserve">Error codes for GtkIconTheme operations.</doc>
24909       <member name="not_found"
24910               value="0"
24911               c:identifier="GTK_ICON_THEME_NOT_FOUND"
24912               glib:nick="not-found"/>
24913       <member name="failed"
24914               value="1"
24915               c:identifier="GTK_ICON_THEME_FAILED"
24916               glib:nick="failed"/>
24917     </enumeration>
24918     <record name="IconThemePrivate" c:type="GtkIconThemePrivate" disguised="1">
24919     </record>
24920     <class name="IconView"
24921            c:symbol-prefix="icon_view"
24922            c:type="GtkIconView"
24923            parent="Container"
24924            glib:type-name="GtkIconView"
24925            glib:get-type="gtk_icon_view_get_type"
24926            glib:type-struct="IconViewClass">
24927       <implements name="Atk.ImplementorIface"/>
24928       <implements name="Buildable"/>
24929       <implements name="CellLayout"/>
24930       <implements name="SizeRequest"/>
24931       <constructor name="new" c:identifier="gtk_icon_view_new" version="2.6">
24932         <doc xml:whitespace="preserve">Creates a new #GtkIconView widget</doc>
24933         <return-value transfer-ownership="none">
24934           <doc xml:whitespace="preserve">A newly created #GtkIconView widget</doc>
24935           <type name="Widget" c:type="GtkWidget*"/>
24936         </return-value>
24937       </constructor>
24938       <constructor name="new_with_model"
24939                    c:identifier="gtk_icon_view_new_with_model"
24940                    version="2.6 ">
24941         <doc xml:whitespace="preserve">Creates a new #GtkIconView widget with the model @model.</doc>
24942         <return-value transfer-ownership="none">
24943           <doc xml:whitespace="preserve">A newly created #GtkIconView widget.</doc>
24944           <type name="Widget" c:type="GtkWidget*"/>
24945         </return-value>
24946         <parameters>
24947           <parameter name="model" transfer-ownership="none">
24948             <doc xml:whitespace="preserve">The model.</doc>
24949             <type name="TreeModel" c:type="GtkTreeModel*"/>
24950           </parameter>
24951         </parameters>
24952       </constructor>
24953       <method name="convert_widget_to_bin_window_coords"
24954               c:identifier="gtk_icon_view_convert_widget_to_bin_window_coords"
24955               version="2.12">
24956         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the bin_window,
24957 as expected by e.g. gtk_icon_view_get_path_at_pos().</doc>
24958         <return-value transfer-ownership="none">
24959           <type name="none" c:type="void"/>
24960         </return-value>
24961         <parameters>
24962           <parameter name="wx" transfer-ownership="none">
24963             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
24964             <type name="gint" c:type="gint"/>
24965           </parameter>
24966           <parameter name="wy" transfer-ownership="none">
24967             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
24968             <type name="gint" c:type="gint"/>
24969           </parameter>
24970           <parameter name="bx" transfer-ownership="none">
24971             <doc xml:whitespace="preserve">return location for bin_window X coordinate</doc>
24972             <type name="gint" c:type="gint*"/>
24973           </parameter>
24974           <parameter name="by" transfer-ownership="none">
24975             <doc xml:whitespace="preserve">return location for bin_window Y coordinate</doc>
24976             <type name="gint" c:type="gint*"/>
24977           </parameter>
24978         </parameters>
24979       </method>
24980       <method name="create_drag_icon"
24981               c:identifier="gtk_icon_view_create_drag_icon"
24982               version="2.8">
24983         <doc xml:whitespace="preserve">Creates a #GdkPixmap representation of the item at @path.
24984 This image is used for a drag icon.</doc>
24985         <return-value transfer-ownership="full">
24986           <doc xml:whitespace="preserve">a newly-allocated pixmap of the drag icon.</doc>
24987           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
24988         </return-value>
24989         <parameters>
24990           <parameter name="path" transfer-ownership="none">
24991             <doc xml:whitespace="preserve">a #GtkTreePath in @icon_view</doc>
24992             <type name="TreePath" c:type="GtkTreePath*"/>
24993           </parameter>
24994         </parameters>
24995       </method>
24996       <method name="enable_model_drag_dest"
24997               c:identifier="gtk_icon_view_enable_model_drag_dest"
24998               version="2.8">
24999         <doc xml:whitespace="preserve">Turns @icon_view into a drop destination for automatic DND. Calling this
25000 method sets #GtkIconView:reorderable to %FALSE.</doc>
25001         <return-value transfer-ownership="none">
25002           <type name="none" c:type="void"/>
25003         </return-value>
25004         <parameters>
25005           <parameter name="targets" transfer-ownership="none">
25006             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
25007             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
25008           </parameter>
25009           <parameter name="n_targets" transfer-ownership="none">
25010             <doc xml:whitespace="preserve">the number of items in @targets</doc>
25011             <type name="gint" c:type="gint"/>
25012           </parameter>
25013           <parameter name="actions" transfer-ownership="none">
25014             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag to this widget</doc>
25015             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
25016           </parameter>
25017         </parameters>
25018       </method>
25019       <method name="enable_model_drag_source"
25020               c:identifier="gtk_icon_view_enable_model_drag_source"
25021               version="2.8">
25022         <doc xml:whitespace="preserve">Turns @icon_view into a drag source for automatic DND. Calling this
25023 method sets #GtkIconView:reorderable to %FALSE.</doc>
25024         <return-value transfer-ownership="none">
25025           <type name="none" c:type="void"/>
25026         </return-value>
25027         <parameters>
25028           <parameter name="start_button_mask" transfer-ownership="none">
25029             <doc xml:whitespace="preserve">Mask of allowed buttons to start drag</doc>
25030             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
25031           </parameter>
25032           <parameter name="targets" transfer-ownership="none">
25033             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
25034             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
25035           </parameter>
25036           <parameter name="n_targets" transfer-ownership="none">
25037             <doc xml:whitespace="preserve">the number of items in @targets</doc>
25038             <type name="gint" c:type="gint"/>
25039           </parameter>
25040           <parameter name="actions" transfer-ownership="none">
25041             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
25042             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
25043           </parameter>
25044         </parameters>
25045       </method>
25046       <method name="get_column_spacing"
25047               c:identifier="gtk_icon_view_get_column_spacing"
25048               version="2.6">
25049         <doc xml:whitespace="preserve">Returns the value of the ::column-spacing property.</doc>
25050         <return-value transfer-ownership="none">
25051           <doc xml:whitespace="preserve">the space between columns</doc>
25052           <type name="gint" c:type="gint"/>
25053         </return-value>
25054       </method>
25055       <method name="get_columns"
25056               c:identifier="gtk_icon_view_get_columns"
25057               version="2.6">
25058         <doc xml:whitespace="preserve">Returns the value of the ::columns property.</doc>
25059         <return-value transfer-ownership="none">
25060           <doc xml:whitespace="preserve">the number of columns, or -1</doc>
25061           <type name="gint" c:type="gint"/>
25062         </return-value>
25063       </method>
25064       <method name="get_cursor"
25065               c:identifier="gtk_icon_view_get_cursor"
25066               version="2.8">
25067         <doc xml:whitespace="preserve">Fills in @path and @cell with the current cursor path and cell. 
25068 If the cursor isn't currently set, then *@path will be %NULL.  
25069 If no cell currently has focus, then *@cell will be %NULL.
25070 The returned #GtkTreePath must be freed with gtk_tree_path_free().</doc>
25071         <return-value transfer-ownership="none">
25072           <doc xml:whitespace="preserve">%TRUE if the cursor is set.</doc>
25073           <type name="gboolean" c:type="gboolean"/>
25074         </return-value>
25075         <parameters>
25076           <parameter name="path" transfer-ownership="none" allow-none="1">
25077             <doc xml:whitespace="preserve">Return location for the current cursor path, or %NULL</doc>
25078             <type name="TreePath" c:type="GtkTreePath**"/>
25079           </parameter>
25080           <parameter name="cell" transfer-ownership="none" allow-none="1">
25081             <doc xml:whitespace="preserve">Return location the current focus cell, or %NULL</doc>
25082             <type name="CellRenderer" c:type="GtkCellRenderer**"/>
25083           </parameter>
25084         </parameters>
25085       </method>
25086       <method name="get_dest_item_at_pos"
25087               c:identifier="gtk_icon_view_get_dest_item_at_pos"
25088               version="2.8">
25089         <doc xml:whitespace="preserve">Determines the destination item for a given position.</doc>
25090         <return-value transfer-ownership="none">
25091           <doc xml:whitespace="preserve">whether there is an item at the given position.</doc>
25092           <type name="gboolean" c:type="gboolean"/>
25093         </return-value>
25094         <parameters>
25095           <parameter name="drag_x" transfer-ownership="none">
25096             <doc xml:whitespace="preserve">the position to determine the destination item for</doc>
25097             <type name="gint" c:type="gint"/>
25098           </parameter>
25099           <parameter name="drag_y" transfer-ownership="none">
25100             <doc xml:whitespace="preserve">the position to determine the destination item for</doc>
25101             <type name="gint" c:type="gint"/>
25102           </parameter>
25103           <parameter name="path" transfer-ownership="none" allow-none="1">
25104             <doc xml:whitespace="preserve">Return location for the path of the item, or %NULL.</doc>
25105             <type name="TreePath" c:type="GtkTreePath**"/>
25106           </parameter>
25107           <parameter name="pos" transfer-ownership="none" allow-none="1">
25108             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
25109             <type name="IconViewDropPosition"
25110                   c:type="GtkIconViewDropPosition*"/>
25111           </parameter>
25112         </parameters>
25113       </method>
25114       <method name="get_drag_dest_item"
25115               c:identifier="gtk_icon_view_get_drag_dest_item"
25116               version="2.8">
25117         <doc xml:whitespace="preserve">Gets information about the item that is highlighted for feedback.</doc>
25118         <return-value transfer-ownership="none">
25119           <type name="none" c:type="void"/>
25120         </return-value>
25121         <parameters>
25122           <parameter name="path" transfer-ownership="none" allow-none="1">
25123             <doc xml:whitespace="preserve">Return location for the path of the highlighted item, or %NULL.</doc>
25124             <type name="TreePath" c:type="GtkTreePath**"/>
25125           </parameter>
25126           <parameter name="pos" transfer-ownership="none" allow-none="1">
25127             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
25128             <type name="IconViewDropPosition"
25129                   c:type="GtkIconViewDropPosition*"/>
25130           </parameter>
25131         </parameters>
25132       </method>
25133       <method name="get_item_at_pos"
25134               c:identifier="gtk_icon_view_get_item_at_pos"
25135               version="2.8">
25136         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates.
25137 In contrast to gtk_icon_view_get_path_at_pos(), this function also 
25138 obtains the cell at the specified position. The returned path should
25139 be freed with gtk_tree_path_free().
25140 See gtk_icon_view_convert_widget_to_bin_window_coords() for converting
25141 widget coordinates to bin_window coordinates.</doc>
25142         <return-value transfer-ownership="none">
25143           <doc xml:whitespace="preserve">%TRUE if an item exists at the specified position</doc>
25144           <type name="gboolean" c:type="gboolean"/>
25145         </return-value>
25146         <parameters>
25147           <parameter name="x" transfer-ownership="none">
25148             <doc xml:whitespace="preserve">The x position to be identified</doc>
25149             <type name="gint" c:type="gint"/>
25150           </parameter>
25151           <parameter name="y" transfer-ownership="none">
25152             <doc xml:whitespace="preserve">The y position to be identified</doc>
25153             <type name="gint" c:type="gint"/>
25154           </parameter>
25155           <parameter name="path" transfer-ownership="none" allow-none="1">
25156             <doc xml:whitespace="preserve">Return location for the path, or %NULL</doc>
25157             <type name="TreePath" c:type="GtkTreePath**"/>
25158           </parameter>
25159           <parameter name="cell" transfer-ownership="none">
25160             <doc xml:whitespace="preserve">Return location for the renderer responsible for the cell at (@x, @y), or %NULL</doc>
25161             <type name="CellRenderer" c:type="GtkCellRenderer**"/>
25162           </parameter>
25163         </parameters>
25164       </method>
25165       <method name="get_item_column"
25166               c:identifier="gtk_icon_view_get_item_column"
25167               version="2.22">
25168         <doc xml:whitespace="preserve">Gets the column in which the item @path is currently
25169 displayed. Column numbers start at 0.</doc>
25170         <return-value transfer-ownership="none">
25171           <doc xml:whitespace="preserve">The column in which the item is displayed</doc>
25172           <type name="gint" c:type="gint"/>
25173         </return-value>
25174         <parameters>
25175           <parameter name="path" transfer-ownership="none">
25176             <doc xml:whitespace="preserve">the #GtkTreePath of the item</doc>
25177             <type name="TreePath" c:type="GtkTreePath*"/>
25178           </parameter>
25179         </parameters>
25180       </method>
25181       <method name="get_item_orientation"
25182               c:identifier="gtk_icon_view_get_item_orientation"
25183               version="2.6">
25184         <doc xml:whitespace="preserve">Returns the value of the ::item-orientation property which determines 
25185 whether the labels are drawn beside the icons instead of below.</doc>
25186         <return-value transfer-ownership="none">
25187           <doc xml:whitespace="preserve">the relative position of texts and icons</doc>
25188           <type name="Orientation" c:type="GtkOrientation"/>
25189         </return-value>
25190       </method>
25191       <method name="get_item_padding"
25192               c:identifier="gtk_icon_view_get_item_padding"
25193               version="2.18">
25194         <doc xml:whitespace="preserve">Returns the value of the ::item-padding property.</doc>
25195         <return-value transfer-ownership="none">
25196           <doc xml:whitespace="preserve">the padding around items</doc>
25197           <type name="gint" c:type="gint"/>
25198         </return-value>
25199       </method>
25200       <method name="get_item_row"
25201               c:identifier="gtk_icon_view_get_item_row"
25202               version="2.22">
25203         <doc xml:whitespace="preserve">Gets the row in which the item @path is currently
25204 displayed. Row numbers start at 0.</doc>
25205         <return-value transfer-ownership="none">
25206           <doc xml:whitespace="preserve">The row in which the item is displayed</doc>
25207           <type name="gint" c:type="gint"/>
25208         </return-value>
25209         <parameters>
25210           <parameter name="path" transfer-ownership="none">
25211             <doc xml:whitespace="preserve">the #GtkTreePath of the item</doc>
25212             <type name="TreePath" c:type="GtkTreePath*"/>
25213           </parameter>
25214         </parameters>
25215       </method>
25216       <method name="get_item_width"
25217               c:identifier="gtk_icon_view_get_item_width"
25218               version="2.6">
25219         <doc xml:whitespace="preserve">Returns the value of the ::item-width property.</doc>
25220         <return-value transfer-ownership="none">
25221           <doc xml:whitespace="preserve">the width of a single item, or -1</doc>
25222           <type name="gint" c:type="gint"/>
25223         </return-value>
25224       </method>
25225       <method name="get_margin"
25226               c:identifier="gtk_icon_view_get_margin"
25227               version="2.6">
25228         <doc xml:whitespace="preserve">Returns the value of the ::margin property.</doc>
25229         <return-value transfer-ownership="none">
25230           <doc xml:whitespace="preserve">the space at the borders</doc>
25231           <type name="gint" c:type="gint"/>
25232         </return-value>
25233       </method>
25234       <method name="get_markup_column"
25235               c:identifier="gtk_icon_view_get_markup_column"
25236               version="2.6">
25237         <doc xml:whitespace="preserve">Returns the column with markup text for @icon_view.</doc>
25238         <return-value transfer-ownership="none">
25239           <doc xml:whitespace="preserve">the markup column, or -1 if it's unset.</doc>
25240           <type name="gint" c:type="gint"/>
25241         </return-value>
25242       </method>
25243       <method name="get_model"
25244               c:identifier="gtk_icon_view_get_model"
25245               version="2.6 ">
25246         <doc xml:whitespace="preserve">Returns the model the #GtkIconView is based on.  Returns %NULL if the
25247 model is unset.
25248 currently being used.</doc>
25249         <return-value transfer-ownership="none">
25250           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none is</doc>
25251           <type name="TreeModel" c:type="GtkTreeModel*"/>
25252         </return-value>
25253       </method>
25254       <method name="get_path_at_pos"
25255               c:identifier="gtk_icon_view_get_path_at_pos"
25256               version="2.6 ">
25257         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates.
25258 See gtk_icon_view_get_item_at_pos(), if you are also interested in
25259 the cell at the specified position. 
25260 See gtk_icon_view_convert_widget_to_bin_window_coords() for converting
25261 widget coordinates to bin_window coordinates.
25262 if no icon exists at that position.</doc>
25263         <return-value transfer-ownership="full">
25264           <doc xml:whitespace="preserve">The #GtkTreePath corresponding to the icon or %NULL</doc>
25265           <type name="TreePath" c:type="GtkTreePath*"/>
25266         </return-value>
25267         <parameters>
25268           <parameter name="x" transfer-ownership="none">
25269             <doc xml:whitespace="preserve">The x position to be identified</doc>
25270             <type name="gint" c:type="gint"/>
25271           </parameter>
25272           <parameter name="y" transfer-ownership="none">
25273             <doc xml:whitespace="preserve">The y position to be identified</doc>
25274             <type name="gint" c:type="gint"/>
25275           </parameter>
25276         </parameters>
25277       </method>
25278       <method name="get_pixbuf_column"
25279               c:identifier="gtk_icon_view_get_pixbuf_column"
25280               version="2.6">
25281         <doc xml:whitespace="preserve">Returns the column with pixbufs for @icon_view.</doc>
25282         <return-value transfer-ownership="none">
25283           <doc xml:whitespace="preserve">the pixbuf column, or -1 if it's unset.</doc>
25284           <type name="gint" c:type="gint"/>
25285         </return-value>
25286       </method>
25287       <method name="get_reorderable"
25288               c:identifier="gtk_icon_view_get_reorderable"
25289               version="2.8">
25290         <doc xml:whitespace="preserve">Retrieves whether the user can reorder the list via drag-and-drop. 
25291 See gtk_icon_view_set_reorderable().</doc>
25292         <return-value transfer-ownership="none">
25293           <doc xml:whitespace="preserve">%TRUE if the list can be reordered.</doc>
25294           <type name="gboolean" c:type="gboolean"/>
25295         </return-value>
25296       </method>
25297       <method name="get_row_spacing"
25298               c:identifier="gtk_icon_view_get_row_spacing"
25299               version="2.6">
25300         <doc xml:whitespace="preserve">Returns the value of the ::row-spacing property.</doc>
25301         <return-value transfer-ownership="none">
25302           <doc xml:whitespace="preserve">the space between rows</doc>
25303           <type name="gint" c:type="gint"/>
25304         </return-value>
25305       </method>
25306       <method name="get_selected_items"
25307               c:identifier="gtk_icon_view_get_selected_items"
25308               version="2.6">
25309         <doc xml:whitespace="preserve">Creates a list of paths of all selected items. Additionally, if you are
25310 planning on modifying the model after calling this function, you may
25311 want to convert the returned list into a list of #GtkTreeRowReference&lt;!-- --&gt;s.
25312 To do this, you can use gtk_tree_row_reference_new().
25313 To free the return value, use:
25314 |[
25315 g_list_foreach (list, (GFunc)gtk_tree_path_free, NULL);
25316 g_list_free (list);
25317 ]|</doc>
25318         <return-value transfer-ownership="full">
25319           <doc xml:whitespace="preserve">A #GList containing a #GtkTreePath for each selected row.</doc>
25320           <type name="GLib.List" c:type="GList*">
25321             <type name="TreePath"/>
25322           </type>
25323         </return-value>
25324       </method>
25325       <method name="get_selection_mode"
25326               c:identifier="gtk_icon_view_get_selection_mode"
25327               version="2.6 ">
25328         <doc xml:whitespace="preserve">Gets the selection mode of the @icon_view.</doc>
25329         <return-value transfer-ownership="none">
25330           <doc xml:whitespace="preserve">the current selection mode</doc>
25331           <type name="SelectionMode" c:type="GtkSelectionMode"/>
25332         </return-value>
25333       </method>
25334       <method name="get_spacing"
25335               c:identifier="gtk_icon_view_get_spacing"
25336               version="2.6">
25337         <doc xml:whitespace="preserve">Returns the value of the ::spacing property.</doc>
25338         <return-value transfer-ownership="none">
25339           <doc xml:whitespace="preserve">the space between cells</doc>
25340           <type name="gint" c:type="gint"/>
25341         </return-value>
25342       </method>
25343       <method name="get_text_column"
25344               c:identifier="gtk_icon_view_get_text_column"
25345               version="2.6">
25346         <doc xml:whitespace="preserve">Returns the column with text for @icon_view.</doc>
25347         <return-value transfer-ownership="none">
25348           <doc xml:whitespace="preserve">the text column, or -1 if it's unset.</doc>
25349           <type name="gint" c:type="gint"/>
25350         </return-value>
25351       </method>
25352       <method name="get_tooltip_column"
25353               c:identifier="gtk_icon_view_get_tooltip_column">
25354         <return-value transfer-ownership="none">
25355           <type name="gint" c:type="gint"/>
25356         </return-value>
25357       </method>
25358       <method name="get_tooltip_context"
25359               c:identifier="gtk_icon_view_get_tooltip_context"
25360               version="2.12">
25361         <doc xml:whitespace="preserve">This function is supposed to be used in a #GtkWidget::query-tooltip
25362 signal handler for #GtkIconView.  The @x, @y and @keyboard_tip values
25363 which are received in the signal handler, should be passed to this
25364 function without modification.
25365 The return value indicates whether there is an icon view item at the given
25366 coordinates (%TRUE) or not (%FALSE) for mouse tooltips. For keyboard
25367 tooltips the item returned will be the cursor item. When %TRUE, then any of
25368 that row and the corresponding model. @x and @y will always be converted
25369 to be relative to @icon_view's bin_window if @keyboard_tooltip is %FALSE.</doc>
25370         <return-value transfer-ownership="none">
25371           <doc xml:whitespace="preserve">whether or not the given tooltip context points to a item</doc>
25372           <type name="gboolean" c:type="gboolean"/>
25373         </return-value>
25374         <parameters>
25375           <parameter name="x" transfer-ownership="none">
25376             <doc xml:whitespace="preserve">the x coordinate (relative to widget coordinates)</doc>
25377             <type name="gint" c:type="gint*"/>
25378           </parameter>
25379           <parameter name="y" transfer-ownership="none">
25380             <doc xml:whitespace="preserve">the y coordinate (relative to widget coordinates)</doc>
25381             <type name="gint" c:type="gint*"/>
25382           </parameter>
25383           <parameter name="keyboard_tip" transfer-ownership="none">
25384             <doc xml:whitespace="preserve">whether this is a keyboard tooltip or not</doc>
25385             <type name="gboolean" c:type="gboolean"/>
25386           </parameter>
25387           <parameter name="model"
25388                      direction="out"
25389                      caller-allocates="0"
25390                      transfer-ownership="full"
25391                      allow-none="1">
25392             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeModel or %NULL</doc>
25393             <type name="TreeModel" c:type="GtkTreeModel**"/>
25394           </parameter>
25395           <parameter name="path"
25396                      direction="out"
25397                      caller-allocates="0"
25398                      transfer-ownership="full"
25399                      allow-none="1">
25400             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreePath or %NULL</doc>
25401             <type name="TreePath" c:type="GtkTreePath**"/>
25402           </parameter>
25403           <parameter name="iter"
25404                      direction="out"
25405                      caller-allocates="1"
25406                      transfer-ownership="none"
25407                      allow-none="1">
25408             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeIter or %NULL</doc>
25409             <type name="TreeIter" c:type="GtkTreeIter*"/>
25410           </parameter>
25411         </parameters>
25412       </method>
25413       <method name="get_visible_range"
25414               c:identifier="gtk_icon_view_get_visible_range"
25415               version="2.8">
25416         <doc xml:whitespace="preserve">Sets @start_path and @end_path to be the first and last visible path. 
25417 Note that there may be invisible paths in between.
25418 Both paths should be freed with gtk_tree_path_free() after use.</doc>
25419         <return-value transfer-ownership="none">
25420           <doc xml:whitespace="preserve">%TRUE, if valid paths were placed in @start_path and @end_path</doc>
25421           <type name="gboolean" c:type="gboolean"/>
25422         </return-value>
25423         <parameters>
25424           <parameter name="start_path"
25425                      transfer-ownership="none"
25426                      allow-none="1">
25427             <doc xml:whitespace="preserve">Return location for start of region, or %NULL</doc>
25428             <type name="TreePath" c:type="GtkTreePath**"/>
25429           </parameter>
25430           <parameter name="end_path" transfer-ownership="none" allow-none="1">
25431             <doc xml:whitespace="preserve">Return location for end of region, or %NULL</doc>
25432             <type name="TreePath" c:type="GtkTreePath**"/>
25433           </parameter>
25434         </parameters>
25435       </method>
25436       <method name="item_activated"
25437               c:identifier="gtk_icon_view_item_activated"
25438               version="2.6">
25439         <doc xml:whitespace="preserve">Activates the item determined by @path.</doc>
25440         <return-value transfer-ownership="none">
25441           <type name="none" c:type="void"/>
25442         </return-value>
25443         <parameters>
25444           <parameter name="path" transfer-ownership="none">
25445             <doc xml:whitespace="preserve">The #GtkTreePath to be activated</doc>
25446             <type name="TreePath" c:type="GtkTreePath*"/>
25447           </parameter>
25448         </parameters>
25449       </method>
25450       <method name="path_is_selected"
25451               c:identifier="gtk_icon_view_path_is_selected"
25452               version="2.6">
25453         <doc xml:whitespace="preserve">Returns %TRUE if the icon pointed to by @path is currently
25454 selected. If @path does not point to a valid location, %FALSE is returned.</doc>
25455         <return-value transfer-ownership="none">
25456           <doc xml:whitespace="preserve">%TRUE if @path is selected.</doc>
25457           <type name="gboolean" c:type="gboolean"/>
25458         </return-value>
25459         <parameters>
25460           <parameter name="path" transfer-ownership="none">
25461             <doc xml:whitespace="preserve">A #GtkTreePath to check selection on.</doc>
25462             <type name="TreePath" c:type="GtkTreePath*"/>
25463           </parameter>
25464         </parameters>
25465       </method>
25466       <method name="scroll_to_path"
25467               c:identifier="gtk_icon_view_scroll_to_path"
25468               version="2.8">
25469         <doc xml:whitespace="preserve">Moves the alignments of @icon_view to the position specified by @path.  
25470 where @column is placed.  Both are expected to be between 0.0 and 1.0. 
25471 0.0 means left/top alignment, 1.0 means right/bottom alignment, 0.5 means 
25472 center.
25473 If @use_align is %FALSE, then the alignment arguments are ignored, and the
25474 tree does the minimum amount of work to scroll the item onto the screen.
25475 This means that the item will be scrolled to the edge closest to its current
25476 position.  If the item is currently visible on the screen, nothing is done.
25477 This function only works if the model is set, and @path is a valid row on 
25478 the model. If the model changes before the @icon_view is realized, the 
25479 centered path will be modified to reflect this change.</doc>
25480         <return-value transfer-ownership="none">
25481           <type name="none" c:type="void"/>
25482         </return-value>
25483         <parameters>
25484           <parameter name="path" transfer-ownership="none">
25485             <doc xml:whitespace="preserve">The path of the item to move to.</doc>
25486             <type name="TreePath" c:type="GtkTreePath*"/>
25487           </parameter>
25488           <parameter name="use_align" transfer-ownership="none">
25489             <doc xml:whitespace="preserve">whether to use alignment arguments, or %FALSE.</doc>
25490             <type name="gboolean" c:type="gboolean"/>
25491           </parameter>
25492           <parameter name="row_align" transfer-ownership="none">
25493             <doc xml:whitespace="preserve">The vertical alignment of the item specified by @path.</doc>
25494             <type name="gfloat" c:type="gfloat"/>
25495           </parameter>
25496           <parameter name="col_align" transfer-ownership="none">
25497             <doc xml:whitespace="preserve">The horizontal alignment of the item specified by @path.</doc>
25498             <type name="gfloat" c:type="gfloat"/>
25499           </parameter>
25500         </parameters>
25501       </method>
25502       <method name="select_all"
25503               c:identifier="gtk_icon_view_select_all"
25504               version="2.6">
25505         <doc xml:whitespace="preserve">Selects all the icons. @icon_view must has its selection mode set
25506 to #GTK_SELECTION_MULTIPLE.</doc>
25507         <return-value transfer-ownership="none">
25508           <type name="none" c:type="void"/>
25509         </return-value>
25510       </method>
25511       <method name="select_path"
25512               c:identifier="gtk_icon_view_select_path"
25513               version="2.6">
25514         <doc xml:whitespace="preserve">Selects the row at @path.</doc>
25515         <return-value transfer-ownership="none">
25516           <type name="none" c:type="void"/>
25517         </return-value>
25518         <parameters>
25519           <parameter name="path" transfer-ownership="none">
25520             <doc xml:whitespace="preserve">The #GtkTreePath to be selected.</doc>
25521             <type name="TreePath" c:type="GtkTreePath*"/>
25522           </parameter>
25523         </parameters>
25524       </method>
25525       <method name="selected_foreach"
25526               c:identifier="gtk_icon_view_selected_foreach"
25527               version="2.6 ">
25528         <doc xml:whitespace="preserve">Calls a function for each selected icon. Note that the model or
25529 selection cannot be modified from within this function.</doc>
25530         <return-value transfer-ownership="none">
25531           <type name="none" c:type="void"/>
25532         </return-value>
25533         <parameters>
25534           <parameter name="func"
25535                      transfer-ownership="none"
25536                      scope="call"
25537                      closure="1">
25538             <doc xml:whitespace="preserve">The function to call for each selected icon.</doc>
25539             <type name="IconViewForeachFunc" c:type="GtkIconViewForeachFunc"/>
25540           </parameter>
25541           <parameter name="data" transfer-ownership="none">
25542             <doc xml:whitespace="preserve">User data to pass to the function.</doc>
25543             <type name="gpointer" c:type="gpointer"/>
25544           </parameter>
25545         </parameters>
25546       </method>
25547       <method name="set_column_spacing"
25548               c:identifier="gtk_icon_view_set_column_spacing"
25549               version="2.6">
25550         <doc xml:whitespace="preserve">Sets the ::column-spacing property which specifies the space 
25551 which is inserted between the columns of the icon view.</doc>
25552         <return-value transfer-ownership="none">
25553           <type name="none" c:type="void"/>
25554         </return-value>
25555         <parameters>
25556           <parameter name="column_spacing" transfer-ownership="none">
25557             <doc xml:whitespace="preserve">the column spacing</doc>
25558             <type name="gint" c:type="gint"/>
25559           </parameter>
25560         </parameters>
25561       </method>
25562       <method name="set_columns"
25563               c:identifier="gtk_icon_view_set_columns"
25564               version="2.6">
25565         <doc xml:whitespace="preserve">Sets the ::columns property which determines in how
25566 many columns the icons are arranged. If @columns is
25567 -1, the number of columns will be chosen automatically 
25568 to fill the available area.</doc>
25569         <return-value transfer-ownership="none">
25570           <type name="none" c:type="void"/>
25571         </return-value>
25572         <parameters>
25573           <parameter name="columns" transfer-ownership="none">
25574             <doc xml:whitespace="preserve">the number of columns</doc>
25575             <type name="gint" c:type="gint"/>
25576           </parameter>
25577         </parameters>
25578       </method>
25579       <method name="set_cursor"
25580               c:identifier="gtk_icon_view_set_cursor"
25581               version="2.8">
25582         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
25583 useful when you want to focus the user's attention on a particular item.
25584 If @cell is not %NULL, then focus is given to the cell specified by 
25585 it. Additionally, if @start_editing is %TRUE, then editing should be 
25586 started in the specified cell.  
25587 This function is often followed by &lt;literal&gt;gtk_widget_grab_focus 
25588 (icon_view)&lt;/literal&gt; in order to give keyboard focus to the widget.  
25589 Please note that editing can only happen when the widget is realized.</doc>
25590         <return-value transfer-ownership="none">
25591           <type name="none" c:type="void"/>
25592         </return-value>
25593         <parameters>
25594           <parameter name="path" transfer-ownership="none">
25595             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
25596             <type name="TreePath" c:type="GtkTreePath*"/>
25597           </parameter>
25598           <parameter name="cell" transfer-ownership="none" allow-none="1">
25599             <doc xml:whitespace="preserve">One of the cell renderers of @icon_view, or %NULL</doc>
25600             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
25601           </parameter>
25602           <parameter name="start_editing" transfer-ownership="none">
25603             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
25604             <type name="gboolean" c:type="gboolean"/>
25605           </parameter>
25606         </parameters>
25607       </method>
25608       <method name="set_drag_dest_item"
25609               c:identifier="gtk_icon_view_set_drag_dest_item"
25610               version="2.8">
25611         <doc xml:whitespace="preserve">Sets the item that is highlighted for feedback.</doc>
25612         <return-value transfer-ownership="none">
25613           <type name="none" c:type="void"/>
25614         </return-value>
25615         <parameters>
25616           <parameter name="path" transfer-ownership="none" allow-none="1">
25617             <doc xml:whitespace="preserve">The path of the item to highlight, or %NULL.</doc>
25618             <type name="TreePath" c:type="GtkTreePath*"/>
25619           </parameter>
25620           <parameter name="pos" transfer-ownership="none">
25621             <doc xml:whitespace="preserve">Specifies where to drop, relative to the item</doc>
25622             <type name="IconViewDropPosition"
25623                   c:type="GtkIconViewDropPosition"/>
25624           </parameter>
25625         </parameters>
25626       </method>
25627       <method name="set_item_orientation"
25628               c:identifier="gtk_icon_view_set_item_orientation"
25629               version="2.6">
25630         <doc xml:whitespace="preserve">Sets the ::item-orientation property which determines whether the labels 
25631 are drawn beside the icons instead of below.</doc>
25632         <return-value transfer-ownership="none">
25633           <type name="none" c:type="void"/>
25634         </return-value>
25635         <parameters>
25636           <parameter name="orientation" transfer-ownership="none">
25637             <doc xml:whitespace="preserve">the relative position of texts and icons</doc>
25638             <type name="Orientation" c:type="GtkOrientation"/>
25639           </parameter>
25640         </parameters>
25641       </method>
25642       <method name="set_item_padding"
25643               c:identifier="gtk_icon_view_set_item_padding"
25644               version="2.18">
25645         <doc xml:whitespace="preserve">Sets the #GtkIconView:item-padding property which specifies the padding
25646 around each of the icon view's items.</doc>
25647         <return-value transfer-ownership="none">
25648           <type name="none" c:type="void"/>
25649         </return-value>
25650         <parameters>
25651           <parameter name="item_padding" transfer-ownership="none">
25652             <doc xml:whitespace="preserve">the item padding</doc>
25653             <type name="gint" c:type="gint"/>
25654           </parameter>
25655         </parameters>
25656       </method>
25657       <method name="set_item_width"
25658               c:identifier="gtk_icon_view_set_item_width"
25659               version="2.6">
25660         <doc xml:whitespace="preserve">Sets the ::item-width property which specifies the width 
25661 to use for each item. If it is set to -1, the icon view will 
25662 automatically determine a suitable item size.</doc>
25663         <return-value transfer-ownership="none">
25664           <type name="none" c:type="void"/>
25665         </return-value>
25666         <parameters>
25667           <parameter name="item_width" transfer-ownership="none">
25668             <doc xml:whitespace="preserve">the width for each item</doc>
25669             <type name="gint" c:type="gint"/>
25670           </parameter>
25671         </parameters>
25672       </method>
25673       <method name="set_margin"
25674               c:identifier="gtk_icon_view_set_margin"
25675               version="2.6">
25676         <doc xml:whitespace="preserve">Sets the ::margin property which specifies the space 
25677 which is inserted at the top, bottom, left and right 
25678 of the icon view.</doc>
25679         <return-value transfer-ownership="none">
25680           <type name="none" c:type="void"/>
25681         </return-value>
25682         <parameters>
25683           <parameter name="margin" transfer-ownership="none">
25684             <doc xml:whitespace="preserve">the margin</doc>
25685             <type name="gint" c:type="gint"/>
25686           </parameter>
25687         </parameters>
25688       </method>
25689       <method name="set_markup_column"
25690               c:identifier="gtk_icon_view_set_markup_column"
25691               version="2.6">
25692         <doc xml:whitespace="preserve">Sets the column with markup information for @icon_view to be
25693 If the markup column is set to something, it overrides
25694 the text column set by gtk_icon_view_set_text_column().</doc>
25695         <return-value transfer-ownership="none">
25696           <type name="none" c:type="void"/>
25697         </return-value>
25698         <parameters>
25699           <parameter name="column" transfer-ownership="none">
25700             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to display no text</doc>
25701             <type name="gint" c:type="gint"/>
25702           </parameter>
25703         </parameters>
25704       </method>
25705       <method name="set_model"
25706               c:identifier="gtk_icon_view_set_model"
25707               version="2.6 ">
25708         <doc xml:whitespace="preserve">Sets the model for a #GtkIconView.
25709 If the @icon_view already has a model set, it will remove
25710 it before setting the new model.  If @model is %NULL, then
25711 it will unset the old model.</doc>
25712         <return-value transfer-ownership="none">
25713           <type name="none" c:type="void"/>
25714         </return-value>
25715         <parameters>
25716           <parameter name="model" transfer-ownership="none" allow-none="1">
25717             <doc xml:whitespace="preserve">The model.</doc>
25718             <type name="TreeModel" c:type="GtkTreeModel*"/>
25719           </parameter>
25720         </parameters>
25721       </method>
25722       <method name="set_pixbuf_column"
25723               c:identifier="gtk_icon_view_set_pixbuf_column"
25724               version="2.6 ">
25725         <doc xml:whitespace="preserve">Sets the column with pixbufs for @icon_view to be @column. The pixbuf
25726 column must be of type #GDK_TYPE_PIXBUF</doc>
25727         <return-value transfer-ownership="none">
25728           <type name="none" c:type="void"/>
25729         </return-value>
25730         <parameters>
25731           <parameter name="column" transfer-ownership="none">
25732             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to disable</doc>
25733             <type name="gint" c:type="gint"/>
25734           </parameter>
25735         </parameters>
25736       </method>
25737       <method name="set_reorderable"
25738               c:identifier="gtk_icon_view_set_reorderable"
25739               version="2.8">
25740         <doc xml:whitespace="preserve">This function is a convenience function to allow you to reorder models that
25741 support the #GtkTreeDragSourceIface and the #GtkTreeDragDestIface.  Both
25742 #GtkTreeStore and #GtkListStore support these.  If @reorderable is %TRUE, then
25743 the user can reorder the model by dragging and dropping rows.  The
25744 developer can listen to these changes by connecting to the model's
25745 row_inserted and row_deleted signals. The reordering is implemented by setting up
25746 the icon view as a drag source and destination. Therefore, drag and
25747 drop can not be used in a reorderable view for any other purpose.
25748 This function does not give you any degree of control over the order -- any
25749 reordering is allowed.  If more control is needed, you should probably
25750 handle drag and drop manually.</doc>
25751         <return-value transfer-ownership="none">
25752           <type name="none" c:type="void"/>
25753         </return-value>
25754         <parameters>
25755           <parameter name="reorderable" transfer-ownership="none">
25756             <doc xml:whitespace="preserve">%TRUE, if the list of items can be reordered.</doc>
25757             <type name="gboolean" c:type="gboolean"/>
25758           </parameter>
25759         </parameters>
25760       </method>
25761       <method name="set_row_spacing"
25762               c:identifier="gtk_icon_view_set_row_spacing"
25763               version="2.6">
25764         <doc xml:whitespace="preserve">Sets the ::row-spacing property which specifies the space 
25765 which is inserted between the rows of the icon view.</doc>
25766         <return-value transfer-ownership="none">
25767           <type name="none" c:type="void"/>
25768         </return-value>
25769         <parameters>
25770           <parameter name="row_spacing" transfer-ownership="none">
25771             <doc xml:whitespace="preserve">the row spacing</doc>
25772             <type name="gint" c:type="gint"/>
25773           </parameter>
25774         </parameters>
25775       </method>
25776       <method name="set_selection_mode"
25777               c:identifier="gtk_icon_view_set_selection_mode"
25778               version="2.6 ">
25779         <doc xml:whitespace="preserve">Sets the selection mode of the @icon_view.</doc>
25780         <return-value transfer-ownership="none">
25781           <type name="none" c:type="void"/>
25782         </return-value>
25783         <parameters>
25784           <parameter name="mode" transfer-ownership="none">
25785             <doc xml:whitespace="preserve">The selection mode</doc>
25786             <type name="SelectionMode" c:type="GtkSelectionMode"/>
25787           </parameter>
25788         </parameters>
25789       </method>
25790       <method name="set_spacing"
25791               c:identifier="gtk_icon_view_set_spacing"
25792               version="2.6">
25793         <doc xml:whitespace="preserve">Sets the ::spacing property which specifies the space 
25794 which is inserted between the cells (i.e. the icon and 
25795 the text) of an item.</doc>
25796         <return-value transfer-ownership="none">
25797           <type name="none" c:type="void"/>
25798         </return-value>
25799         <parameters>
25800           <parameter name="spacing" transfer-ownership="none">
25801             <doc xml:whitespace="preserve">the spacing</doc>
25802             <type name="gint" c:type="gint"/>
25803           </parameter>
25804         </parameters>
25805       </method>
25806       <method name="set_text_column"
25807               c:identifier="gtk_icon_view_set_text_column"
25808               version="2.6 ">
25809         <doc xml:whitespace="preserve">Sets the column with text for @icon_view to be @column. The text
25810 column must be of type #G_TYPE_STRING.</doc>
25811         <return-value transfer-ownership="none">
25812           <type name="none" c:type="void"/>
25813         </return-value>
25814         <parameters>
25815           <parameter name="column" transfer-ownership="none">
25816             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to display no text</doc>
25817             <type name="gint" c:type="gint"/>
25818           </parameter>
25819         </parameters>
25820       </method>
25821       <method name="set_tooltip_cell"
25822               c:identifier="gtk_icon_view_set_tooltip_cell"
25823               version="2.12">
25824         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to the area which @cell occupies in
25825 the item pointed to by @path. See also gtk_tooltip_set_tip_area().
25826 See also gtk_icon_view_set_tooltip_column() for a simpler alternative.</doc>
25827         <return-value transfer-ownership="none">
25828           <type name="none" c:type="void"/>
25829         </return-value>
25830         <parameters>
25831           <parameter name="tooltip" transfer-ownership="none">
25832             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
25833             <type name="Tooltip" c:type="GtkTooltip*"/>
25834           </parameter>
25835           <parameter name="path" transfer-ownership="none">
25836             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
25837             <type name="TreePath" c:type="GtkTreePath*"/>
25838           </parameter>
25839           <parameter name="cell" transfer-ownership="none" allow-none="1">
25840             <doc xml:whitespace="preserve">a #GtkCellRenderer or %NULL</doc>
25841             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
25842           </parameter>
25843         </parameters>
25844       </method>
25845       <method name="set_tooltip_column"
25846               c:identifier="gtk_icon_view_set_tooltip_column"
25847               version="2.12">
25848         <doc xml:whitespace="preserve">If you only plan to have simple (text-only) tooltips on full items, you
25849 can use this function to have #GtkIconView handle these automatically
25850 for you. @column should be set to the column in @icon_view's model
25851 containing the tooltip texts, or -1 to disable this feature.
25852 When enabled, #GtkWidget::has-tooltip will be set to %TRUE and</doc>
25853         <return-value transfer-ownership="none">
25854           <type name="none" c:type="void"/>
25855         </return-value>
25856         <parameters>
25857           <parameter name="column" transfer-ownership="none">
25858             <doc xml:whitespace="preserve">an integer, which is a valid column number for @icon_view's model</doc>
25859             <type name="gint" c:type="gint"/>
25860           </parameter>
25861         </parameters>
25862       </method>
25863       <method name="set_tooltip_item"
25864               c:identifier="gtk_icon_view_set_tooltip_item"
25865               version="2.12">
25866         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to be the area covered by the item at @path.
25867 See also gtk_icon_view_set_tooltip_column() for a simpler alternative.
25868 See also gtk_tooltip_set_tip_area().</doc>
25869         <return-value transfer-ownership="none">
25870           <type name="none" c:type="void"/>
25871         </return-value>
25872         <parameters>
25873           <parameter name="tooltip" transfer-ownership="none">
25874             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
25875             <type name="Tooltip" c:type="GtkTooltip*"/>
25876           </parameter>
25877           <parameter name="path" transfer-ownership="none">
25878             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
25879             <type name="TreePath" c:type="GtkTreePath*"/>
25880           </parameter>
25881         </parameters>
25882       </method>
25883       <method name="unselect_all"
25884               c:identifier="gtk_icon_view_unselect_all"
25885               version="2.6">
25886         <doc xml:whitespace="preserve">Unselects all the icons.</doc>
25887         <return-value transfer-ownership="none">
25888           <type name="none" c:type="void"/>
25889         </return-value>
25890       </method>
25891       <method name="unselect_path"
25892               c:identifier="gtk_icon_view_unselect_path"
25893               version="2.6">
25894         <doc xml:whitespace="preserve">Unselects the row at @path.</doc>
25895         <return-value transfer-ownership="none">
25896           <type name="none" c:type="void"/>
25897         </return-value>
25898         <parameters>
25899           <parameter name="path" transfer-ownership="none">
25900             <doc xml:whitespace="preserve">The #GtkTreePath to be unselected.</doc>
25901             <type name="TreePath" c:type="GtkTreePath*"/>
25902           </parameter>
25903         </parameters>
25904       </method>
25905       <method name="unset_model_drag_dest"
25906               c:identifier="gtk_icon_view_unset_model_drag_dest"
25907               version="2.8">
25908         <doc xml:whitespace="preserve">Undoes the effect of gtk_icon_view_enable_model_drag_dest(). Calling this
25909 method sets #GtkIconView:reorderable to %FALSE.</doc>
25910         <return-value transfer-ownership="none">
25911           <type name="none" c:type="void"/>
25912         </return-value>
25913       </method>
25914       <method name="unset_model_drag_source"
25915               c:identifier="gtk_icon_view_unset_model_drag_source"
25916               version="2.8">
25917         <doc xml:whitespace="preserve">Undoes the effect of gtk_icon_view_enable_model_drag_source(). Calling this
25918 method sets #GtkIconView:reorderable to %FALSE.</doc>
25919         <return-value transfer-ownership="none">
25920           <type name="none" c:type="void"/>
25921         </return-value>
25922       </method>
25923       <property name="column-spacing"
25924                 version="2.6"
25925                 writable="1"
25926                 transfer-ownership="none">
25927         <doc xml:whitespace="preserve">The column-spacing property specifies the space which is inserted between
25928 the columns of the icon view.</doc>
25929         <type name="gint"/>
25930       </property>
25931       <property name="columns"
25932                 version="2.6"
25933                 writable="1"
25934                 transfer-ownership="none">
25935         <doc xml:whitespace="preserve">The columns property contains the number of the columns in which the
25936 items should be displayed. If it is -1, the number of columns will
25937 be chosen automatically to fill the available area.</doc>
25938         <type name="gint"/>
25939       </property>
25940       <property name="item-orientation"
25941                 version="2.6"
25942                 writable="1"
25943                 transfer-ownership="none">
25944         <doc xml:whitespace="preserve">The item-orientation property specifies how the cells (i.e. the icon and
25945 the text) of the item are positioned relative to each other.</doc>
25946         <type name="Orientation"/>
25947       </property>
25948       <property name="item-padding"
25949                 version="2.18"
25950                 writable="1"
25951                 transfer-ownership="none">
25952         <doc xml:whitespace="preserve">The item-padding property specifies the padding around each
25953 of the icon view's item.</doc>
25954         <type name="gint"/>
25955       </property>
25956       <property name="item-width"
25957                 version="2.6"
25958                 writable="1"
25959                 transfer-ownership="none">
25960         <doc xml:whitespace="preserve">The item-width property specifies the width to use for each item. 
25961 If it is set to -1, the icon view will automatically determine a 
25962 suitable item size.</doc>
25963         <type name="gint"/>
25964       </property>
25965       <property name="margin"
25966                 version="2.6"
25967                 writable="1"
25968                 transfer-ownership="none">
25969         <doc xml:whitespace="preserve">The margin property specifies the space which is inserted 
25970 at the edges of the icon view.</doc>
25971         <type name="gint"/>
25972       </property>
25973       <property name="markup-column"
25974                 version="2.6"
25975                 writable="1"
25976                 transfer-ownership="none">
25977         <doc xml:whitespace="preserve">The ::markup-column property contains the number of the model column
25978 containing markup information to be displayed. The markup column must be 
25979 of type #G_TYPE_STRING. If this property and the :text-column property 
25980 are both set to column numbers, it overrides the text column.
25981 If both are set to -1, no texts are displayed.</doc>
25982         <type name="gint"/>
25983       </property>
25984       <property name="model" writable="1" transfer-ownership="none">
25985         <type name="TreeModel"/>
25986       </property>
25987       <property name="pixbuf-column"
25988                 version="2.6"
25989                 writable="1"
25990                 transfer-ownership="none">
25991         <doc xml:whitespace="preserve">The ::pixbuf-column property contains the number of the model column
25992 containing the pixbufs which are displayed. The pixbuf column must be 
25993 of type #GDK_TYPE_PIXBUF. Setting this property to -1 turns off the
25994 display of pixbufs.</doc>
25995         <type name="gint"/>
25996       </property>
25997       <property name="reorderable"
25998                 version="2.8"
25999                 writable="1"
26000                 transfer-ownership="none">
26001         <doc xml:whitespace="preserve">The reorderable property specifies if the items can be reordered
26002 by DND.</doc>
26003         <type name="gboolean"/>
26004       </property>
26005       <property name="row-spacing"
26006                 version="2.6"
26007                 writable="1"
26008                 transfer-ownership="none">
26009         <doc xml:whitespace="preserve">The row-spacing property specifies the space which is inserted between
26010 the rows of the icon view.</doc>
26011         <type name="gint"/>
26012       </property>
26013       <property name="selection-mode"
26014                 version="2.6"
26015                 writable="1"
26016                 transfer-ownership="none">
26017         <doc xml:whitespace="preserve">The ::selection-mode property specifies the selection mode of
26018 icon view. If the mode is #GTK_SELECTION_MULTIPLE, rubberband selection
26019 is enabled, for the other modes, only keyboard selection is possible.</doc>
26020         <type name="SelectionMode"/>
26021       </property>
26022       <property name="spacing"
26023                 version="2.6"
26024                 writable="1"
26025                 transfer-ownership="none">
26026         <doc xml:whitespace="preserve">The spacing property specifies the space which is inserted between
26027 the cells (i.e. the icon and the text) of an item.</doc>
26028         <type name="gint"/>
26029       </property>
26030       <property name="text-column"
26031                 version="2.6"
26032                 writable="1"
26033                 transfer-ownership="none">
26034         <doc xml:whitespace="preserve">The ::text-column property contains the number of the model column
26035 containing the texts which are displayed. The text column must be 
26036 of type #G_TYPE_STRING. If this property and the :markup-column 
26037 property are both set to -1, no texts are displayed.</doc>
26038         <type name="gint"/>
26039       </property>
26040       <property name="tooltip-column" writable="1" transfer-ownership="none">
26041         <type name="gint"/>
26042       </property>
26043       <field name="parent">
26044         <type name="Container" c:type="GtkContainer"/>
26045       </field>
26046       <field name="priv" readable="0" private="1">
26047         <type name="IconViewPrivate" c:type="GtkIconViewPrivate*"/>
26048       </field>
26049       <glib:signal name="activate-cursor-item">
26050         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26051 which gets emitted when the user activates the currently 
26052 focused item. 
26053 Applications should not connect to it, but may emit it with
26054 g_signal_emit_by_name() if they need to control activation
26055 programmatically.
26056 The default bindings for this signal are Space, Return and Enter.</doc>
26057         <return-value transfer-ownership="none">
26058           <type name="gboolean"/>
26059         </return-value>
26060       </glib:signal>
26061       <glib:signal name="item-activated">
26062         <doc xml:whitespace="preserve">The ::item-activated signal is emitted when the method
26063 gtk_icon_view_item_activated() is called or the user double 
26064 clicks an item. It is also emitted when a non-editable item
26065 pressed.</doc>
26066         <return-value transfer-ownership="none">
26067           <type name="none"/>
26068         </return-value>
26069         <parameters>
26070           <parameter name="object" transfer-ownership="none">
26071             <doc xml:whitespace="preserve">the #GtkTreePath for the activated item</doc>
26072             <type name="TreePath"/>
26073           </parameter>
26074         </parameters>
26075       </glib:signal>
26076       <glib:signal name="move-cursor">
26077         <doc xml:whitespace="preserve">The ::move-cursor signal is a
26078 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26079 which gets emitted when the user initiates a cursor movement.
26080 Applications should not connect to it, but may emit it with
26081 g_signal_emit_by_name() if they need to control the cursor
26082 programmatically.
26083 The default bindings for this signal include
26084 &lt;itemizedlist&gt;
26085 &lt;listitem&gt;Arrow keys which move by individual steps&lt;/listitem&gt;
26086 &lt;listitem&gt;Home/End keys which move to the first/last item&lt;/listitem&gt;
26087 &lt;listitem&gt;PageUp/PageDown which move by "pages"&lt;/listitem&gt;
26088 &lt;/itemizedlist&gt;
26089 All of these will extend the selection when combined with
26090 the Shift modifier.</doc>
26091         <return-value transfer-ownership="none">
26092           <type name="gboolean"/>
26093         </return-value>
26094         <parameters>
26095           <parameter name="object" transfer-ownership="none">
26096             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
26097             <type name="MovementStep"/>
26098           </parameter>
26099           <parameter name="p0" transfer-ownership="none">
26100             <doc xml:whitespace="preserve">the number of @step units to move</doc>
26101             <type name="gint"/>
26102           </parameter>
26103         </parameters>
26104       </glib:signal>
26105       <glib:signal name="select-all">
26106         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26107 which gets emitted when the user selects all items.
26108 Applications should not connect to it, but may emit it with
26109 g_signal_emit_by_name() if they need to control selection
26110 programmatically.
26111 The default binding for this signal is Ctrl-a.</doc>
26112         <return-value transfer-ownership="none">
26113           <type name="none"/>
26114         </return-value>
26115       </glib:signal>
26116       <glib:signal name="select-cursor-item">
26117         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26118 which gets emitted when the user selects the item that is currently
26119 focused.
26120 Applications should not connect to it, but may emit it with
26121 g_signal_emit_by_name() if they need to control selection
26122 programmatically.
26123 There is no default binding for this signal.</doc>
26124         <return-value transfer-ownership="none">
26125           <type name="none"/>
26126         </return-value>
26127       </glib:signal>
26128       <glib:signal name="selection-changed">
26129         <doc xml:whitespace="preserve">The ::selection-changed signal is emitted when the selection
26130 (i.e. the set of selected items) changes.</doc>
26131         <return-value transfer-ownership="none">
26132           <type name="none"/>
26133         </return-value>
26134       </glib:signal>
26135       <glib:signal name="set-scroll-adjustments">
26136         <return-value transfer-ownership="none">
26137           <type name="none"/>
26138         </return-value>
26139         <parameters>
26140           <parameter name="object" transfer-ownership="none">
26141             <type name="Adjustment"/>
26142           </parameter>
26143           <parameter name="p0" transfer-ownership="none">
26144             <type name="Adjustment"/>
26145           </parameter>
26146         </parameters>
26147       </glib:signal>
26148       <glib:signal name="toggle-cursor-item">
26149         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26150 which gets emitted when the user toggles whether the currently
26151 focused item is selected or not. The exact effect of this 
26152 depend on the selection mode.
26153 Applications should not connect to it, but may emit it with
26154 g_signal_emit_by_name() if they need to control selection
26155 programmatically.
26156 There is no default binding for this signal is Ctrl-Space.</doc>
26157         <return-value transfer-ownership="none">
26158           <type name="none"/>
26159         </return-value>
26160       </glib:signal>
26161       <glib:signal name="unselect-all">
26162         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
26163 which gets emitted when the user unselects all items.
26164 Applications should not connect to it, but may emit it with
26165 g_signal_emit_by_name() if they need to control selection
26166 programmatically.
26167 The default binding for this signal is Ctrl-Shift-a.</doc>
26168         <return-value transfer-ownership="none">
26169           <type name="none"/>
26170         </return-value>
26171       </glib:signal>
26172     </class>
26173     <record name="IconViewClass"
26174             c:type="GtkIconViewClass"
26175             glib:is-gtype-struct-for="IconView">
26176       <field name="parent_class">
26177         <type name="ContainerClass" c:type="GtkContainerClass"/>
26178       </field>
26179       <field name="set_scroll_adjustments">
26180         <callback name="set_scroll_adjustments">
26181           <return-value transfer-ownership="none">
26182             <type name="none" c:type="void"/>
26183           </return-value>
26184           <parameters>
26185             <parameter name="icon_view" transfer-ownership="none">
26186               <type name="IconView" c:type="GtkIconView*"/>
26187             </parameter>
26188             <parameter name="hadjustment" transfer-ownership="none">
26189               <type name="Adjustment" c:type="GtkAdjustment*"/>
26190             </parameter>
26191             <parameter name="vadjustment" transfer-ownership="none">
26192               <type name="Adjustment" c:type="GtkAdjustment*"/>
26193             </parameter>
26194           </parameters>
26195         </callback>
26196       </field>
26197       <field name="item_activated">
26198         <callback name="item_activated">
26199           <return-value transfer-ownership="none">
26200             <type name="none" c:type="void"/>
26201           </return-value>
26202           <parameters>
26203             <parameter name="icon_view" transfer-ownership="none">
26204               <type name="IconView" c:type="GtkIconView*"/>
26205             </parameter>
26206             <parameter name="path" transfer-ownership="none">
26207               <type name="TreePath" c:type="GtkTreePath*"/>
26208             </parameter>
26209           </parameters>
26210         </callback>
26211       </field>
26212       <field name="selection_changed">
26213         <callback name="selection_changed">
26214           <return-value transfer-ownership="none">
26215             <type name="none" c:type="void"/>
26216           </return-value>
26217           <parameters>
26218             <parameter name="icon_view" transfer-ownership="none">
26219               <type name="IconView" c:type="GtkIconView*"/>
26220             </parameter>
26221           </parameters>
26222         </callback>
26223       </field>
26224       <field name="select_all">
26225         <callback name="select_all">
26226           <return-value transfer-ownership="none">
26227             <type name="none" c:type="void"/>
26228           </return-value>
26229           <parameters>
26230             <parameter name="icon_view" transfer-ownership="none">
26231               <type name="IconView" c:type="GtkIconView*"/>
26232             </parameter>
26233           </parameters>
26234         </callback>
26235       </field>
26236       <field name="unselect_all">
26237         <callback name="unselect_all">
26238           <return-value transfer-ownership="none">
26239             <type name="none" c:type="void"/>
26240           </return-value>
26241           <parameters>
26242             <parameter name="icon_view" transfer-ownership="none">
26243               <type name="IconView" c:type="GtkIconView*"/>
26244             </parameter>
26245           </parameters>
26246         </callback>
26247       </field>
26248       <field name="select_cursor_item">
26249         <callback name="select_cursor_item">
26250           <return-value transfer-ownership="none">
26251             <type name="none" c:type="void"/>
26252           </return-value>
26253           <parameters>
26254             <parameter name="icon_view" transfer-ownership="none">
26255               <type name="IconView" c:type="GtkIconView*"/>
26256             </parameter>
26257           </parameters>
26258         </callback>
26259       </field>
26260       <field name="toggle_cursor_item">
26261         <callback name="toggle_cursor_item">
26262           <return-value transfer-ownership="none">
26263             <type name="none" c:type="void"/>
26264           </return-value>
26265           <parameters>
26266             <parameter name="icon_view" transfer-ownership="none">
26267               <type name="IconView" c:type="GtkIconView*"/>
26268             </parameter>
26269           </parameters>
26270         </callback>
26271       </field>
26272       <field name="move_cursor">
26273         <callback name="move_cursor">
26274           <return-value transfer-ownership="none">
26275             <type name="gboolean" c:type="gboolean"/>
26276           </return-value>
26277           <parameters>
26278             <parameter name="icon_view" transfer-ownership="none">
26279               <type name="IconView" c:type="GtkIconView*"/>
26280             </parameter>
26281             <parameter name="step" transfer-ownership="none">
26282               <type name="MovementStep" c:type="GtkMovementStep"/>
26283             </parameter>
26284             <parameter name="count" transfer-ownership="none">
26285               <type name="gint" c:type="gint"/>
26286             </parameter>
26287           </parameters>
26288         </callback>
26289       </field>
26290       <field name="activate_cursor_item">
26291         <callback name="activate_cursor_item">
26292           <return-value transfer-ownership="none">
26293             <type name="gboolean" c:type="gboolean"/>
26294           </return-value>
26295           <parameters>
26296             <parameter name="icon_view" transfer-ownership="none">
26297               <type name="IconView" c:type="GtkIconView*"/>
26298             </parameter>
26299           </parameters>
26300         </callback>
26301       </field>
26302     </record>
26303     <enumeration name="IconViewDropPosition"
26304                  glib:type-name="GtkIconViewDropPosition"
26305                  glib:get-type="gtk_icon_view_drop_position_get_type"
26306                  c:type="GtkIconViewDropPosition">
26307       <doc xml:whitespace="preserve">An enum for determining where a dropped item goes.</doc>
26308       <member name="no_drop"
26309               value="0"
26310               c:identifier="GTK_ICON_VIEW_NO_DROP"
26311               glib:nick="no-drop"/>
26312       <member name="drop_into"
26313               value="1"
26314               c:identifier="GTK_ICON_VIEW_DROP_INTO"
26315               glib:nick="drop-into"/>
26316       <member name="drop_left"
26317               value="2"
26318               c:identifier="GTK_ICON_VIEW_DROP_LEFT"
26319               glib:nick="drop-left"/>
26320       <member name="drop_right"
26321               value="3"
26322               c:identifier="GTK_ICON_VIEW_DROP_RIGHT"
26323               glib:nick="drop-right"/>
26324       <member name="drop_above"
26325               value="4"
26326               c:identifier="GTK_ICON_VIEW_DROP_ABOVE"
26327               glib:nick="drop-above"/>
26328       <member name="drop_below"
26329               value="5"
26330               c:identifier="GTK_ICON_VIEW_DROP_BELOW"
26331               glib:nick="drop-below"/>
26332     </enumeration>
26333     <callback name="IconViewForeachFunc" c:type="GtkIconViewForeachFunc">
26334       <doc xml:whitespace="preserve">A function used by gtk_icon_view_selected_foreach() to map all
26335 selected rows.  It will be called on every selected row in the view.</doc>
26336       <return-value transfer-ownership="none">
26337         <type name="none" c:type="void"/>
26338       </return-value>
26339       <parameters>
26340         <parameter name="icon_view" transfer-ownership="none">
26341           <doc xml:whitespace="preserve">a #GtkIconView</doc>
26342           <type name="IconView" c:type="GtkIconView*"/>
26343         </parameter>
26344         <parameter name="path" transfer-ownership="none">
26345           <doc xml:whitespace="preserve">The #GtkTreePath of a selected row</doc>
26346           <type name="TreePath" c:type="GtkTreePath*"/>
26347         </parameter>
26348         <parameter name="data" transfer-ownership="none">
26349           <doc xml:whitespace="preserve">user data</doc>
26350           <type name="gpointer" c:type="gpointer"/>
26351         </parameter>
26352       </parameters>
26353     </callback>
26354     <record name="IconViewPrivate" c:type="GtkIconViewPrivate" disguised="1">
26355     </record>
26356     <class name="Image"
26357            c:symbol-prefix="image"
26358            c:type="GtkImage"
26359            parent="Misc"
26360            glib:type-name="GtkImage"
26361            glib:get-type="gtk_image_get_type"
26362            glib:type-struct="ImageClass">
26363       <doc xml:whitespace="preserve">This struct contain private data only and should be accessed by the functions
26364 below.</doc>
26365       <implements name="Atk.ImplementorIface"/>
26366       <implements name="Buildable"/>
26367       <implements name="SizeRequest"/>
26368       <constructor name="new" c:identifier="gtk_image_new">
26369         <doc xml:whitespace="preserve">Creates a new empty #GtkImage widget.</doc>
26370         <return-value transfer-ownership="none">
26371           <doc xml:whitespace="preserve">a newly created #GtkImage widget.</doc>
26372           <type name="Widget" c:type="GtkWidget*"/>
26373         </return-value>
26374       </constructor>
26375       <constructor name="new_from_animation"
26376                    c:identifier="gtk_image_new_from_animation">
26377         <doc xml:whitespace="preserve">Creates a #GtkImage displaying the given animation.
26378 The #GtkImage does not assume a reference to the
26379 animation; you still need to unref it if you own references.
26380 #GtkImage will add its own reference rather than adopting yours.
26381 Note that the animation frames are shown using a timeout with
26382 #G_PRIORITY_DEFAULT. When using animations to indicate busyness,
26383 keep in mind that the animation will only be shown if the main loop
26384 is not busy with something that has a higher priority.</doc>
26385         <return-value transfer-ownership="none">
26386           <doc xml:whitespace="preserve">a new #GtkImage widget</doc>
26387           <type name="Widget" c:type="GtkWidget*"/>
26388         </return-value>
26389         <parameters>
26390           <parameter name="animation" transfer-ownership="none">
26391             <doc xml:whitespace="preserve">an animation</doc>
26392             <type name="GdkPixbuf.PixbufAnimation"
26393                   c:type="GdkPixbufAnimation*"/>
26394           </parameter>
26395         </parameters>
26396       </constructor>
26397       <constructor name="new_from_file" c:identifier="gtk_image_new_from_file">
26398         <doc xml:whitespace="preserve">Creates a new #GtkImage displaying the file @filename. If the file
26399 isn't found or can't be loaded, the resulting #GtkImage will
26400 display a "broken image" icon. This function never returns %NULL,
26401 it always returns a valid #GtkImage widget.
26402 If the file contains an animation, the image will contain an
26403 animation.
26404 If you need to detect failures to load the file, use
26405 gdk_pixbuf_new_from_file() to load the file yourself, then create
26406 the #GtkImage from the pixbuf. (Or for animations, use
26407 gdk_pixbuf_animation_new_from_file()).
26408 The storage type (gtk_image_get_storage_type()) of the returned
26409 image is not defined, it will be whatever is appropriate for
26410 displaying the file.</doc>
26411         <return-value transfer-ownership="none">
26412           <doc xml:whitespace="preserve">a new #GtkImage</doc>
26413           <type name="Widget" c:type="GtkWidget*"/>
26414         </return-value>
26415         <parameters>
26416           <parameter name="filename" transfer-ownership="none">
26417             <doc xml:whitespace="preserve">a filename</doc>
26418             <type name="utf8" c:type="gchar*"/>
26419           </parameter>
26420         </parameters>
26421       </constructor>
26422       <constructor name="new_from_gicon"
26423                    c:identifier="gtk_image_new_from_gicon"
26424                    version="2.14">
26425         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon from the current icon theme.
26426 If the icon name isn't known, a "broken image" icon will be
26427 displayed instead.  If the current icon theme is changed, the icon
26428 will be updated appropriately.</doc>
26429         <return-value transfer-ownership="none">
26430           <doc xml:whitespace="preserve">a new #GtkImage displaying the themed icon</doc>
26431           <type name="Widget" c:type="GtkWidget*"/>
26432         </return-value>
26433         <parameters>
26434           <parameter name="icon" transfer-ownership="none">
26435             <doc xml:whitespace="preserve">an icon</doc>
26436             <type name="Gio.Icon" c:type="GIcon*"/>
26437           </parameter>
26438           <parameter name="size" transfer-ownership="none">
26439             <doc xml:whitespace="preserve">a stock icon size</doc>
26440             <type name="gint"/>
26441           </parameter>
26442         </parameters>
26443       </constructor>
26444       <constructor name="new_from_icon_name"
26445                    c:identifier="gtk_image_new_from_icon_name"
26446                    version="2.6">
26447         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon from the current icon theme.
26448 If the icon name isn't known, a "broken image" icon will be
26449 displayed instead.  If the current icon theme is changed, the icon
26450 will be updated appropriately.</doc>
26451         <return-value transfer-ownership="none">
26452           <doc xml:whitespace="preserve">a new #GtkImage displaying the themed icon</doc>
26453           <type name="Widget" c:type="GtkWidget*"/>
26454         </return-value>
26455         <parameters>
26456           <parameter name="icon_name" transfer-ownership="none">
26457             <doc xml:whitespace="preserve">an icon name</doc>
26458             <type name="utf8" c:type="gchar*"/>
26459           </parameter>
26460           <parameter name="size" transfer-ownership="none">
26461             <doc xml:whitespace="preserve">a stock icon size</doc>
26462             <type name="gint"/>
26463           </parameter>
26464         </parameters>
26465       </constructor>
26466       <constructor name="new_from_icon_set"
26467                    c:identifier="gtk_image_new_from_icon_set">
26468         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon set. Sample stock sizes are
26469 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_SMALL_TOOLBAR. Instead of using
26470 this function, usually it's better to create a #GtkIconFactory, put
26471 your icon sets in the icon factory, add the icon factory to the
26472 list of default factories with gtk_icon_factory_add_default(), and
26473 then use gtk_image_new_from_stock(). This will allow themes to
26474 override the icon you ship with your application.
26475 The #GtkImage does not assume a reference to the
26476 icon set; you still need to unref it if you own references.
26477 #GtkImage will add its own reference rather than adopting yours.</doc>
26478         <return-value transfer-ownership="none">
26479           <doc xml:whitespace="preserve">a new #GtkImage</doc>
26480           <type name="Widget" c:type="GtkWidget*"/>
26481         </return-value>
26482         <parameters>
26483           <parameter name="icon_set" transfer-ownership="none">
26484             <doc xml:whitespace="preserve">a #GtkIconSet</doc>
26485             <type name="IconSet" c:type="GtkIconSet*"/>
26486           </parameter>
26487           <parameter name="size" transfer-ownership="none">
26488             <doc xml:whitespace="preserve">a stock icon size</doc>
26489             <type name="gint"/>
26490           </parameter>
26491         </parameters>
26492       </constructor>
26493       <constructor name="new_from_pixbuf"
26494                    c:identifier="gtk_image_new_from_pixbuf">
26495         <doc xml:whitespace="preserve">Creates a new #GtkImage displaying @pixbuf.
26496 The #GtkImage does not assume a reference to the
26497 pixbuf; you still need to unref it if you own references.
26498 #GtkImage will add its own reference rather than adopting yours.
26499 Note that this function just creates an #GtkImage from the pixbuf. The
26500 #GtkImage created will not react to state changes. Should you want that, 
26501 you should use gtk_image_new_from_icon_set().</doc>
26502         <return-value transfer-ownership="none">
26503           <doc xml:whitespace="preserve">a new #GtkImage</doc>
26504           <type name="Widget" c:type="GtkWidget*"/>
26505         </return-value>
26506         <parameters>
26507           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
26508             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
26509             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
26510           </parameter>
26511         </parameters>
26512       </constructor>
26513       <constructor name="new_from_pixmap"
26514                    c:identifier="gtk_image_new_from_pixmap">
26515         <doc xml:whitespace="preserve">Creates a #GtkImage widget displaying @pixmap with a @mask.
26516 A #GdkPixmap is a server-side image buffer in the pixel format of the
26517 current display. The #GtkImage does not assume a reference to the
26518 pixmap or mask; you still need to unref them if you own references.
26519 #GtkImage will add its own reference rather than adopting yours.</doc>
26520         <return-value transfer-ownership="none">
26521           <doc xml:whitespace="preserve">a new #GtkImage</doc>
26522           <type name="Widget" c:type="GtkWidget*"/>
26523         </return-value>
26524         <parameters>
26525           <parameter name="pixmap" transfer-ownership="none" allow-none="1">
26526             <doc xml:whitespace="preserve">a #GdkPixmap, or %NULL</doc>
26527             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
26528           </parameter>
26529           <parameter name="mask" transfer-ownership="none" allow-none="1">
26530             <doc xml:whitespace="preserve">a #GdkBitmap, or %NULL</doc>
26531             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
26532           </parameter>
26533         </parameters>
26534       </constructor>
26535       <constructor name="new_from_stock"
26536                    c:identifier="gtk_image_new_from_stock">
26537         <doc xml:whitespace="preserve">Creates a #GtkImage displaying a stock icon. Sample stock icon
26538 names are #GTK_STOCK_OPEN, #GTK_STOCK_QUIT. Sample stock sizes
26539 are #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_SMALL_TOOLBAR. If the stock
26540 icon name isn't known, the image will be empty.
26541 You can register your own stock icon names, see
26542 gtk_icon_factory_add_default() and gtk_icon_factory_add().</doc>
26543         <return-value transfer-ownership="none">
26544           <doc xml:whitespace="preserve">a new #GtkImage displaying the stock icon</doc>
26545           <type name="Widget" c:type="GtkWidget*"/>
26546         </return-value>
26547         <parameters>
26548           <parameter name="stock_id" transfer-ownership="none">
26549             <doc xml:whitespace="preserve">a stock icon name</doc>
26550             <type name="utf8" c:type="gchar*"/>
26551           </parameter>
26552           <parameter name="size" transfer-ownership="none">
26553             <doc xml:whitespace="preserve">a stock icon size</doc>
26554             <type name="gint"/>
26555           </parameter>
26556         </parameters>
26557       </constructor>
26558       <method name="clear" c:identifier="gtk_image_clear" version="2.8">
26559         <doc xml:whitespace="preserve">Resets the image to be empty.</doc>
26560         <return-value transfer-ownership="none">
26561           <type name="none" c:type="void"/>
26562         </return-value>
26563       </method>
26564       <method name="get_animation" c:identifier="gtk_image_get_animation">
26565         <doc xml:whitespace="preserve">Gets the #GdkPixbufAnimation being displayed by the #GtkImage.
26566 The storage type of the image must be %GTK_IMAGE_EMPTY or
26567 %GTK_IMAGE_ANIMATION (see gtk_image_get_storage_type()).
26568 The caller of this function does not own a reference to the
26569 returned animation.
26570 the image is empty</doc>
26571         <return-value transfer-ownership="none">
26572           <doc xml:whitespace="preserve">the displayed animation, or %NULL if</doc>
26573           <type name="GdkPixbuf.PixbufAnimation" c:type="GdkPixbufAnimation*"/>
26574         </return-value>
26575       </method>
26576       <method name="get_gicon"
26577               c:identifier="gtk_image_get_gicon"
26578               version="2.14">
26579         <doc xml:whitespace="preserve">Gets the #GIcon and size being displayed by the #GtkImage.
26580 The storage type of the image must be %GTK_IMAGE_EMPTY or
26581 %GTK_IMAGE_GICON (see gtk_image_get_storage_type()).
26582 The caller of this function does not own a reference to the
26583 returned #GIcon.</doc>
26584         <return-value transfer-ownership="none">
26585           <type name="none" c:type="void"/>
26586         </return-value>
26587         <parameters>
26588           <parameter name="gicon"
26589                      direction="out"
26590                      caller-allocates="0"
26591                      transfer-ownership="none"
26592                      allow-none="1">
26593             <doc xml:whitespace="preserve">place to store a #GIcon, or %NULL</doc>
26594             <type name="Gio.Icon" c:type="GIcon**"/>
26595           </parameter>
26596           <parameter name="size"
26597                      direction="out"
26598                      caller-allocates="0"
26599                      transfer-ownership="full"
26600                      allow-none="1">
26601             <doc xml:whitespace="preserve">place to store an icon size, or %NULL</doc>
26602             <type name="gint"/>
26603           </parameter>
26604         </parameters>
26605       </method>
26606       <method name="get_icon_name"
26607               c:identifier="gtk_image_get_icon_name"
26608               version="2.6">
26609         <doc xml:whitespace="preserve">Gets the icon name and size being displayed by the #GtkImage.
26610 The storage type of the image must be %GTK_IMAGE_EMPTY or
26611 %GTK_IMAGE_ICON_NAME (see gtk_image_get_storage_type()).
26612 The returned string is owned by the #GtkImage and should not
26613 be freed.</doc>
26614         <return-value transfer-ownership="none">
26615           <type name="none" c:type="void"/>
26616         </return-value>
26617         <parameters>
26618           <parameter name="icon_name"
26619                      direction="out"
26620                      caller-allocates="0"
26621                      transfer-ownership="none"
26622                      allow-none="1">
26623             <doc xml:whitespace="preserve">place to store an icon name, or %NULL</doc>
26624             <type name="utf8" c:type="gchar**"/>
26625           </parameter>
26626           <parameter name="size"
26627                      direction="out"
26628                      caller-allocates="0"
26629                      transfer-ownership="full"
26630                      allow-none="1">
26631             <doc xml:whitespace="preserve">place to store an icon size, or %NULL</doc>
26632             <type name="gint"/>
26633           </parameter>
26634         </parameters>
26635       </method>
26636       <method name="get_icon_set" c:identifier="gtk_image_get_icon_set">
26637         <doc xml:whitespace="preserve">Gets the icon set and size being displayed by the #GtkImage.
26638 The storage type of the image must be %GTK_IMAGE_EMPTY or
26639 %GTK_IMAGE_ICON_SET (see gtk_image_get_storage_type()).</doc>
26640         <return-value transfer-ownership="none">
26641           <type name="none" c:type="void"/>
26642         </return-value>
26643         <parameters>
26644           <parameter name="icon_set"
26645                      direction="out"
26646                      caller-allocates="0"
26647                      transfer-ownership="none"
26648                      allow-none="1">
26649             <doc xml:whitespace="preserve">location to store a #GtkIconSet, or %NULL</doc>
26650             <type name="IconSet" c:type="GtkIconSet**"/>
26651           </parameter>
26652           <parameter name="size"
26653                      direction="out"
26654                      caller-allocates="0"
26655                      transfer-ownership="full"
26656                      allow-none="1">
26657             <doc xml:whitespace="preserve">location to store a stock icon size, or %NULL</doc>
26658             <type name="gint"/>
26659           </parameter>
26660         </parameters>
26661       </method>
26662       <method name="get_pixbuf" c:identifier="gtk_image_get_pixbuf">
26663         <doc xml:whitespace="preserve">Gets the #GdkPixbuf being displayed by the #GtkImage.
26664 The storage type of the image must be %GTK_IMAGE_EMPTY or
26665 %GTK_IMAGE_PIXBUF (see gtk_image_get_storage_type()).
26666 The caller of this function does not own a reference to the
26667 returned pixbuf.
26668 the image is empty</doc>
26669         <return-value transfer-ownership="none">
26670           <doc xml:whitespace="preserve">the displayed pixbuf, or %NULL if</doc>
26671           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
26672         </return-value>
26673       </method>
26674       <method name="get_pixel_size"
26675               c:identifier="gtk_image_get_pixel_size"
26676               version="2.6">
26677         <doc xml:whitespace="preserve">Gets the pixel size used for named icons.</doc>
26678         <return-value transfer-ownership="none">
26679           <doc xml:whitespace="preserve">the pixel size used for named icons.</doc>
26680           <type name="gint" c:type="gint"/>
26681         </return-value>
26682       </method>
26683       <method name="get_pixmap" c:identifier="gtk_image_get_pixmap">
26684         <doc xml:whitespace="preserve">Gets the pixmap and mask being displayed by the #GtkImage.
26685 The storage type of the image must be %GTK_IMAGE_EMPTY or
26686 %GTK_IMAGE_PIXMAP (see gtk_image_get_storage_type()).
26687 The caller of this function does not own a reference to the
26688 returned pixmap and mask.</doc>
26689         <return-value transfer-ownership="none">
26690           <type name="none" c:type="void"/>
26691         </return-value>
26692         <parameters>
26693           <parameter name="pixmap"
26694                      direction="out"
26695                      caller-allocates="0"
26696                      transfer-ownership="none"
26697                      allow-none="1">
26698             <doc xml:whitespace="preserve">location to store the pixmap, or %NULL</doc>
26699             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
26700           </parameter>
26701           <parameter name="mask"
26702                      direction="out"
26703                      caller-allocates="0"
26704                      transfer-ownership="none"
26705                      allow-none="1">
26706             <doc xml:whitespace="preserve">location to store the mask, or %NULL</doc>
26707             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
26708           </parameter>
26709         </parameters>
26710       </method>
26711       <method name="get_stock" c:identifier="gtk_image_get_stock">
26712         <doc xml:whitespace="preserve">Gets the stock icon name and size being displayed by the #GtkImage.
26713 The storage type of the image must be %GTK_IMAGE_EMPTY or
26714 %GTK_IMAGE_STOCK (see gtk_image_get_storage_type()).
26715 The returned string is owned by the #GtkImage and should not
26716 be freed.</doc>
26717         <return-value transfer-ownership="none">
26718           <type name="none" c:type="void"/>
26719         </return-value>
26720         <parameters>
26721           <parameter name="stock_id"
26722                      direction="out"
26723                      caller-allocates="0"
26724                      transfer-ownership="none"
26725                      allow-none="1">
26726             <doc xml:whitespace="preserve">place to store a stock icon name, or %NULL</doc>
26727             <type name="utf8" c:type="gchar**"/>
26728           </parameter>
26729           <parameter name="size"
26730                      direction="out"
26731                      caller-allocates="0"
26732                      transfer-ownership="full"
26733                      allow-none="1">
26734             <doc xml:whitespace="preserve">place to store a stock icon size, or %NULL</doc>
26735             <type name="gint"/>
26736           </parameter>
26737         </parameters>
26738       </method>
26739       <method name="get_storage_type"
26740               c:identifier="gtk_image_get_storage_type">
26741         <doc xml:whitespace="preserve">Gets the type of representation being used by the #GtkImage
26742 to store image data. If the #GtkImage has no image data,
26743 the return value will be %GTK_IMAGE_EMPTY.</doc>
26744         <return-value transfer-ownership="none">
26745           <doc xml:whitespace="preserve">image representation being used</doc>
26746           <type name="ImageType" c:type="GtkImageType"/>
26747         </return-value>
26748       </method>
26749       <method name="set_from_animation"
26750               c:identifier="gtk_image_set_from_animation">
26751         <doc xml:whitespace="preserve">Causes the #GtkImage to display the given animation (or display
26752 nothing, if you set the animation to %NULL).</doc>
26753         <return-value transfer-ownership="none">
26754           <type name="none" c:type="void"/>
26755         </return-value>
26756         <parameters>
26757           <parameter name="animation" transfer-ownership="none">
26758             <doc xml:whitespace="preserve">the #GdkPixbufAnimation</doc>
26759             <type name="GdkPixbuf.PixbufAnimation"
26760                   c:type="GdkPixbufAnimation*"/>
26761           </parameter>
26762         </parameters>
26763       </method>
26764       <method name="set_from_file" c:identifier="gtk_image_set_from_file">
26765         <doc xml:whitespace="preserve">See gtk_image_new_from_file() for details.</doc>
26766         <return-value transfer-ownership="none">
26767           <type name="none" c:type="void"/>
26768         </return-value>
26769         <parameters>
26770           <parameter name="filename" transfer-ownership="none" allow-none="1">
26771             <doc xml:whitespace="preserve">a filename or %NULL</doc>
26772             <type name="utf8" c:type="gchar*"/>
26773           </parameter>
26774         </parameters>
26775       </method>
26776       <method name="set_from_gicon"
26777               c:identifier="gtk_image_set_from_gicon"
26778               version="2.14">
26779         <doc xml:whitespace="preserve">See gtk_image_new_from_gicon() for details.</doc>
26780         <return-value transfer-ownership="none">
26781           <type name="none" c:type="void"/>
26782         </return-value>
26783         <parameters>
26784           <parameter name="icon" transfer-ownership="none">
26785             <doc xml:whitespace="preserve">an icon</doc>
26786             <type name="Gio.Icon" c:type="GIcon*"/>
26787           </parameter>
26788           <parameter name="size" transfer-ownership="none">
26789             <doc xml:whitespace="preserve">an icon size</doc>
26790             <type name="gint"/>
26791           </parameter>
26792         </parameters>
26793       </method>
26794       <method name="set_from_icon_name"
26795               c:identifier="gtk_image_set_from_icon_name"
26796               version="2.6">
26797         <doc xml:whitespace="preserve">See gtk_image_new_from_icon_name() for details.</doc>
26798         <return-value transfer-ownership="none">
26799           <type name="none" c:type="void"/>
26800         </return-value>
26801         <parameters>
26802           <parameter name="icon_name" transfer-ownership="none">
26803             <doc xml:whitespace="preserve">an icon name</doc>
26804             <type name="utf8" c:type="gchar*"/>
26805           </parameter>
26806           <parameter name="size" transfer-ownership="none">
26807             <doc xml:whitespace="preserve">an icon size</doc>
26808             <type name="gint"/>
26809           </parameter>
26810         </parameters>
26811       </method>
26812       <method name="set_from_icon_set"
26813               c:identifier="gtk_image_set_from_icon_set">
26814         <doc xml:whitespace="preserve">See gtk_image_new_from_icon_set() for details.</doc>
26815         <return-value transfer-ownership="none">
26816           <type name="none" c:type="void"/>
26817         </return-value>
26818         <parameters>
26819           <parameter name="icon_set" transfer-ownership="none">
26820             <doc xml:whitespace="preserve">a #GtkIconSet</doc>
26821             <type name="IconSet" c:type="GtkIconSet*"/>
26822           </parameter>
26823           <parameter name="size" transfer-ownership="none">
26824             <doc xml:whitespace="preserve">a stock icon size</doc>
26825             <type name="gint"/>
26826           </parameter>
26827         </parameters>
26828       </method>
26829       <method name="set_from_pixbuf" c:identifier="gtk_image_set_from_pixbuf">
26830         <doc xml:whitespace="preserve">See gtk_image_new_from_pixbuf() for details.</doc>
26831         <return-value transfer-ownership="none">
26832           <type name="none" c:type="void"/>
26833         </return-value>
26834         <parameters>
26835           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
26836             <doc xml:whitespace="preserve">a #GdkPixbuf or %NULL</doc>
26837             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
26838           </parameter>
26839         </parameters>
26840       </method>
26841       <method name="set_from_pixmap" c:identifier="gtk_image_set_from_pixmap">
26842         <doc xml:whitespace="preserve">See gtk_image_new_from_pixmap() for details.</doc>
26843         <return-value transfer-ownership="none">
26844           <type name="none" c:type="void"/>
26845         </return-value>
26846         <parameters>
26847           <parameter name="pixmap" transfer-ownership="none" allow-none="1">
26848             <doc xml:whitespace="preserve">a #GdkPixmap or %NULL</doc>
26849             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
26850           </parameter>
26851           <parameter name="mask" transfer-ownership="none" allow-none="1">
26852             <doc xml:whitespace="preserve">a #GdkBitmap or %NULL</doc>
26853             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
26854           </parameter>
26855         </parameters>
26856       </method>
26857       <method name="set_from_stock" c:identifier="gtk_image_set_from_stock">
26858         <doc xml:whitespace="preserve">See gtk_image_new_from_stock() for details.</doc>
26859         <return-value transfer-ownership="none">
26860           <type name="none" c:type="void"/>
26861         </return-value>
26862         <parameters>
26863           <parameter name="stock_id" transfer-ownership="none">
26864             <doc xml:whitespace="preserve">a stock icon name</doc>
26865             <type name="utf8" c:type="gchar*"/>
26866           </parameter>
26867           <parameter name="size" transfer-ownership="none">
26868             <doc xml:whitespace="preserve">a stock icon size</doc>
26869             <type name="gint"/>
26870           </parameter>
26871         </parameters>
26872       </method>
26873       <method name="set_pixel_size"
26874               c:identifier="gtk_image_set_pixel_size"
26875               version="2.6">
26876         <doc xml:whitespace="preserve">Sets the pixel size to use for named icons. If the pixel size is set
26877 to a value != -1, it is used instead of the icon size set by
26878 gtk_image_set_from_icon_name().</doc>
26879         <return-value transfer-ownership="none">
26880           <type name="none" c:type="void"/>
26881         </return-value>
26882         <parameters>
26883           <parameter name="pixel_size" transfer-ownership="none">
26884             <doc xml:whitespace="preserve">the new pixel size</doc>
26885             <type name="gint" c:type="gint"/>
26886           </parameter>
26887         </parameters>
26888       </method>
26889       <property name="file" writable="1" transfer-ownership="none">
26890         <type name="utf8"/>
26891       </property>
26892       <property name="gicon"
26893                 version="2.14"
26894                 writable="1"
26895                 transfer-ownership="none">
26896         <doc xml:whitespace="preserve">The GIcon displayed in the GtkImage. For themed icons,
26897 If the icon theme is changed, the image will be updated
26898 automatically.</doc>
26899         <type name="Gio.Icon"/>
26900       </property>
26901       <property name="icon-name"
26902                 version="2.6"
26903                 writable="1"
26904                 transfer-ownership="none">
26905         <doc xml:whitespace="preserve">The name of the icon in the icon theme. If the icon theme is
26906 changed, the image will be updated automatically.</doc>
26907         <type name="utf8"/>
26908       </property>
26909       <property name="icon-set" writable="1" transfer-ownership="none">
26910         <type name="IconSet"/>
26911       </property>
26912       <property name="icon-size" writable="1" transfer-ownership="none">
26913         <type name="gint"/>
26914       </property>
26915       <property name="mask" writable="1" transfer-ownership="none">
26916         <type name="Gdk.Pixmap"/>
26917       </property>
26918       <property name="pixbuf" writable="1" transfer-ownership="none">
26919         <type name="GdkPixbuf.Pixbuf"/>
26920       </property>
26921       <property name="pixbuf-animation" writable="1" transfer-ownership="none">
26922         <type name="GdkPixbuf.PixbufAnimation"/>
26923       </property>
26924       <property name="pixel-size"
26925                 version="2.6"
26926                 writable="1"
26927                 transfer-ownership="none">
26928         <doc xml:whitespace="preserve">The "pixel-size" property can be used to specify a fixed size
26929 overriding the #GtkImage:icon-size property for images of type 
26930 %GTK_IMAGE_ICON_NAME.</doc>
26931         <type name="gint"/>
26932       </property>
26933       <property name="pixmap" writable="1" transfer-ownership="none">
26934         <type name="Gdk.Pixmap"/>
26935       </property>
26936       <property name="stock" writable="1" transfer-ownership="none">
26937         <type name="utf8"/>
26938       </property>
26939       <property name="storage-type" transfer-ownership="none">
26940         <type name="ImageType"/>
26941       </property>
26942       <field name="misc">
26943         <type name="Misc" c:type="GtkMisc"/>
26944       </field>
26945       <field name="priv" readable="0" private="1">
26946         <type name="ImagePrivate" c:type="GtkImagePrivate*"/>
26947       </field>
26948     </class>
26949     <record name="ImageAnimationData" c:type="GtkImageAnimationData">
26950       <field name="anim" writable="1">
26951         <type name="GdkPixbuf.PixbufAnimation" c:type="GdkPixbufAnimation*"/>
26952       </field>
26953       <field name="iter" writable="1">
26954         <type name="GdkPixbuf.PixbufAnimationIter"
26955               c:type="GdkPixbufAnimationIter*"/>
26956       </field>
26957       <field name="frame_timeout" writable="1">
26958         <type name="guint" c:type="guint"/>
26959       </field>
26960     </record>
26961     <record name="ImageClass"
26962             c:type="GtkImageClass"
26963             glib:is-gtype-struct-for="Image">
26964       <field name="parent_class">
26965         <type name="MiscClass" c:type="GtkMiscClass"/>
26966       </field>
26967       <field name="_gtk_reserved1" introspectable="0">
26968         <callback name="_gtk_reserved1">
26969           <return-value transfer-ownership="none">
26970             <type name="none" c:type="void"/>
26971           </return-value>
26972         </callback>
26973       </field>
26974       <field name="_gtk_reserved2" introspectable="0">
26975         <callback name="_gtk_reserved2">
26976           <return-value transfer-ownership="none">
26977             <type name="none" c:type="void"/>
26978           </return-value>
26979         </callback>
26980       </field>
26981       <field name="_gtk_reserved3" introspectable="0">
26982         <callback name="_gtk_reserved3">
26983           <return-value transfer-ownership="none">
26984             <type name="none" c:type="void"/>
26985           </return-value>
26986         </callback>
26987       </field>
26988       <field name="_gtk_reserved4" introspectable="0">
26989         <callback name="_gtk_reserved4">
26990           <return-value transfer-ownership="none">
26991             <type name="none" c:type="void"/>
26992           </return-value>
26993         </callback>
26994       </field>
26995     </record>
26996     <record name="ImageGIconData" c:type="GtkImageGIconData">
26997       <field name="icon" writable="1">
26998         <type name="Gio.Icon" c:type="GIcon*"/>
26999       </field>
27000       <field name="pixbuf" writable="1">
27001         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
27002       </field>
27003       <field name="theme_change_id" writable="1">
27004         <type name="guint" c:type="guint"/>
27005       </field>
27006     </record>
27007     <record name="ImageIconNameData" c:type="GtkImageIconNameData">
27008       <field name="icon_name" writable="1">
27009         <type name="utf8" c:type="gchar*"/>
27010       </field>
27011       <field name="pixbuf" writable="1">
27012         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
27013       </field>
27014       <field name="theme_change_id" writable="1">
27015         <type name="guint" c:type="guint"/>
27016       </field>
27017     </record>
27018     <record name="ImageIconSetData" c:type="GtkImageIconSetData">
27019       <field name="icon_set" writable="1">
27020         <type name="IconSet" c:type="GtkIconSet*"/>
27021       </field>
27022     </record>
27023     <record name="ImageImageData" c:type="GtkImageImageData" disguised="1">
27024     </record>
27025     <class name="ImageMenuItem"
27026            c:symbol-prefix="image_menu_item"
27027            c:type="GtkImageMenuItem"
27028            parent="MenuItem"
27029            glib:type-name="GtkImageMenuItem"
27030            glib:get-type="gtk_image_menu_item_get_type"
27031            glib:type-struct="ImageMenuItemClass">
27032       <implements name="Atk.ImplementorIface"/>
27033       <implements name="Activatable"/>
27034       <implements name="Buildable"/>
27035       <implements name="SizeRequest"/>
27036       <constructor name="new" c:identifier="gtk_image_menu_item_new">
27037         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem with an empty label.</doc>
27038         <return-value transfer-ownership="none">
27039           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
27040           <type name="Widget" c:type="GtkWidget*"/>
27041         </return-value>
27042       </constructor>
27043       <constructor name="new_from_stock"
27044                    c:identifier="gtk_image_menu_item_new_from_stock">
27045         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing the image and text from a 
27046 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK 
27047 and #GTK_STOCK_APPLY.
27048 If you want this menu item to have changeable accelerators, then pass in
27049 %NULL for accel_group. Next call gtk_menu_item_set_accel_path() with an
27050 appropriate path for the menu item, use gtk_stock_lookup() to look up the
27051 standard accelerator for the stock item, and if one is found, call
27052 gtk_accel_map_add_entry() to register it.</doc>
27053         <return-value transfer-ownership="none">
27054           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
27055           <type name="Widget" c:type="GtkWidget*"/>
27056         </return-value>
27057         <parameters>
27058           <parameter name="stock_id" transfer-ownership="none">
27059             <doc xml:whitespace="preserve">the name of the stock item.</doc>
27060             <type name="utf8" c:type="gchar*"/>
27061           </parameter>
27062           <parameter name="accel_group"
27063                      transfer-ownership="none"
27064                      allow-none="1">
27065             <doc xml:whitespace="preserve">the #GtkAccelGroup to add the menu items accelerator to, or %NULL.</doc>
27066             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
27067           </parameter>
27068         </parameters>
27069       </constructor>
27070       <constructor name="new_with_label"
27071                    c:identifier="gtk_image_menu_item_new_with_label">
27072         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing a label.</doc>
27073         <return-value transfer-ownership="none">
27074           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
27075           <type name="Widget" c:type="GtkWidget*"/>
27076         </return-value>
27077         <parameters>
27078           <parameter name="label" transfer-ownership="none">
27079             <doc xml:whitespace="preserve">the text of the menu item.</doc>
27080             <type name="utf8" c:type="gchar*"/>
27081           </parameter>
27082         </parameters>
27083       </constructor>
27084       <constructor name="new_with_mnemonic"
27085                    c:identifier="gtk_image_menu_item_new_with_mnemonic">
27086         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing a label. The label
27087 will be created using gtk_label_new_with_mnemonic(), so underscores
27088 in @label indicate the mnemonic for the menu item.</doc>
27089         <return-value transfer-ownership="none">
27090           <doc xml:whitespace="preserve">a new #GtkImageMenuItem</doc>
27091           <type name="Widget" c:type="GtkWidget*"/>
27092         </return-value>
27093         <parameters>
27094           <parameter name="label" transfer-ownership="none">
27095             <doc xml:whitespace="preserve">the text of the menu item, with an underscore in front of the mnemonic character</doc>
27096             <type name="utf8" c:type="gchar*"/>
27097           </parameter>
27098         </parameters>
27099       </constructor>
27100       <method name="get_always_show_image"
27101               c:identifier="gtk_image_menu_item_get_always_show_image"
27102               version="2.16">
27103         <doc xml:whitespace="preserve">Returns whether the menu item will ignore the #GtkSettings:gtk-menu-images
27104 setting and always show the image, if available.</doc>
27105         <return-value transfer-ownership="none">
27106           <doc xml:whitespace="preserve">%TRUE if the menu item will always show the image</doc>
27107           <type name="gboolean" c:type="gboolean"/>
27108         </return-value>
27109       </method>
27110       <method name="get_image" c:identifier="gtk_image_menu_item_get_image">
27111         <doc xml:whitespace="preserve">Gets the widget that is currently set as the image of @image_menu_item.
27112 See gtk_image_menu_item_set_image().</doc>
27113         <return-value transfer-ownership="none">
27114           <doc xml:whitespace="preserve">the widget set as image of @image_menu_item</doc>
27115           <type name="Widget" c:type="GtkWidget*"/>
27116         </return-value>
27117       </method>
27118       <method name="get_use_stock"
27119               c:identifier="gtk_image_menu_item_get_use_stock"
27120               version="2.16">
27121         <doc xml:whitespace="preserve">Checks whether the label set in the menuitem is used as a
27122 stock id to select the stock item for the item.
27123 stock id to select the stock item for the item</doc>
27124         <return-value transfer-ownership="none">
27125           <doc xml:whitespace="preserve">%TRUE if the label set in the menuitem is used as a</doc>
27126           <type name="gboolean" c:type="gboolean"/>
27127         </return-value>
27128       </method>
27129       <method name="set_accel_group"
27130               c:identifier="gtk_image_menu_item_set_accel_group"
27131               version="2.16">
27132         <doc xml:whitespace="preserve">Specifies an @accel_group to add the menu items accelerator to
27133 (this only applies to stock items so a stock item must already
27134 be set, make sure to call gtk_image_menu_item_set_use_stock()
27135 and gtk_menu_item_set_label() with a valid stock item first).
27136 If you want this menu item to have changeable accelerators then
27137 you shouldnt need this (see gtk_image_menu_item_new_from_stock()).</doc>
27138         <return-value transfer-ownership="none">
27139           <type name="none" c:type="void"/>
27140         </return-value>
27141         <parameters>
27142           <parameter name="accel_group" transfer-ownership="none">
27143             <doc xml:whitespace="preserve">the #GtkAccelGroup</doc>
27144             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
27145           </parameter>
27146         </parameters>
27147       </method>
27148       <method name="set_always_show_image"
27149               c:identifier="gtk_image_menu_item_set_always_show_image"
27150               version="2.16">
27151         <doc xml:whitespace="preserve">If %TRUE, the menu item will ignore the #GtkSettings:gtk-menu-images 
27152 setting and always show the image, if available.
27153 Use this property if the menuitem would be useless or hard to use
27154 without the image.</doc>
27155         <return-value transfer-ownership="none">
27156           <type name="none" c:type="void"/>
27157         </return-value>
27158         <parameters>
27159           <parameter name="always_show" transfer-ownership="none">
27160             <doc xml:whitespace="preserve">%TRUE if the menuitem should always show the image</doc>
27161             <type name="gboolean" c:type="gboolean"/>
27162           </parameter>
27163         </parameters>
27164       </method>
27165       <method name="set_image" c:identifier="gtk_image_menu_item_set_image">
27166         <return-value transfer-ownership="none">
27167           <type name="none" c:type="void"/>
27168         </return-value>
27169         <parameters>
27170           <parameter name="image" transfer-ownership="none">
27171             <type name="Widget" c:type="GtkWidget*"/>
27172           </parameter>
27173         </parameters>
27174       </method>
27175       <method name="set_use_stock"
27176               c:identifier="gtk_image_menu_item_set_use_stock"
27177               version="2.16">
27178         <doc xml:whitespace="preserve">If %TRUE, the label set in the menuitem is used as a
27179 stock id to select the stock item for the item.</doc>
27180         <return-value transfer-ownership="none">
27181           <type name="none" c:type="void"/>
27182         </return-value>
27183         <parameters>
27184           <parameter name="use_stock" transfer-ownership="none">
27185             <doc xml:whitespace="preserve">%TRUE if the menuitem should use a stock item</doc>
27186             <type name="gboolean" c:type="gboolean"/>
27187           </parameter>
27188         </parameters>
27189       </method>
27190       <property name="accel-group"
27191                 version="2.16"
27192                 readable="0"
27193                 writable="1"
27194                 transfer-ownership="none">
27195         <doc xml:whitespace="preserve">The Accel Group to use for stock accelerator keys</doc>
27196         <type name="AccelGroup"/>
27197       </property>
27198       <property name="always-show-image"
27199                 version="2.16"
27200                 writable="1"
27201                 construct="1"
27202                 transfer-ownership="none">
27203         <doc xml:whitespace="preserve">If %TRUE, the menu item will ignore the #GtkSettings:gtk-menu-images 
27204 setting and always show the image, if available.
27205 Use this property if the menuitem would be useless or hard to use
27206 without the image.</doc>
27207         <type name="gboolean"/>
27208       </property>
27209       <property name="image" writable="1" transfer-ownership="none">
27210         <type name="Widget"/>
27211       </property>
27212       <property name="use-stock"
27213                 version="2.16"
27214                 writable="1"
27215                 construct="1"
27216                 transfer-ownership="none">
27217         <doc xml:whitespace="preserve">If %TRUE, the label set in the menuitem is used as a
27218 stock id to select the stock item for the item.</doc>
27219         <type name="gboolean"/>
27220       </property>
27221       <field name="menu_item">
27222         <type name="MenuItem" c:type="GtkMenuItem"/>
27223       </field>
27224       <field name="priv">
27225         <type name="ImageMenuItemPrivate" c:type="GtkImageMenuItemPrivate*"/>
27226       </field>
27227     </class>
27228     <record name="ImageMenuItemClass"
27229             c:type="GtkImageMenuItemClass"
27230             glib:is-gtype-struct-for="ImageMenuItem">
27231       <field name="parent_class">
27232         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
27233       </field>
27234     </record>
27235     <record name="ImageMenuItemPrivate"
27236             c:type="GtkImageMenuItemPrivate"
27237             disguised="1">
27238     </record>
27239     <record name="ImagePixbufData" c:type="GtkImagePixbufData">
27240       <field name="pixbuf" writable="1">
27241         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
27242       </field>
27243     </record>
27244     <record name="ImagePixmapData" c:type="GtkImagePixmapData">
27245       <field name="pixmap" writable="1">
27246         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
27247       </field>
27248     </record>
27249     <record name="ImagePrivate" c:type="GtkImagePrivate" disguised="1">
27250     </record>
27251     <record name="ImageStockData" c:type="GtkImageStockData">
27252       <field name="stock_id" writable="1">
27253         <type name="utf8" c:type="gchar*"/>
27254       </field>
27255     </record>
27256     <enumeration name="ImageType"
27257                  glib:type-name="GtkImageType"
27258                  glib:get-type="gtk_image_type_get_type"
27259                  c:type="GtkImageType">
27260       <doc xml:whitespace="preserve">Describes the image data representation used by a #GtkImage. If you
27261 want to get the image from the widget, you can only get the
27262 currently-stored representation. e.g.  if the
27263 gtk_image_get_storage_type() returns #GTK_IMAGE_PIXBUF, then you can
27264 call gtk_image_get_pixbuf() but not gtk_image_get_stock().  For empty
27265 images, you can request any storage type (call any of the "get"
27266 functions), but they will all return %NULL values.</doc>
27267       <member name="empty"
27268               value="0"
27269               c:identifier="GTK_IMAGE_EMPTY"
27270               glib:nick="empty"/>
27271       <member name="pixmap"
27272               value="1"
27273               c:identifier="GTK_IMAGE_PIXMAP"
27274               glib:nick="pixmap"/>
27275       <member name="pixbuf"
27276               value="2"
27277               c:identifier="GTK_IMAGE_PIXBUF"
27278               glib:nick="pixbuf"/>
27279       <member name="stock"
27280               value="3"
27281               c:identifier="GTK_IMAGE_STOCK"
27282               glib:nick="stock"/>
27283       <member name="icon_set"
27284               value="4"
27285               c:identifier="GTK_IMAGE_ICON_SET"
27286               glib:nick="icon-set"/>
27287       <member name="animation"
27288               value="5"
27289               c:identifier="GTK_IMAGE_ANIMATION"
27290               glib:nick="animation"/>
27291       <member name="icon_name"
27292               value="6"
27293               c:identifier="GTK_IMAGE_ICON_NAME"
27294               glib:nick="icon-name"/>
27295       <member name="gicon"
27296               value="7"
27297               c:identifier="GTK_IMAGE_GICON"
27298               glib:nick="gicon"/>
27299     </enumeration>
27300     <class name="InfoBar"
27301            c:symbol-prefix="info_bar"
27302            c:type="GtkInfoBar"
27303            parent="HBox"
27304            glib:type-name="GtkInfoBar"
27305            glib:get-type="gtk_info_bar_get_type"
27306            glib:type-struct="InfoBarClass">
27307       <implements name="Atk.ImplementorIface"/>
27308       <implements name="Buildable"/>
27309       <implements name="Orientable"/>
27310       <implements name="SizeRequest"/>
27311       <constructor name="new" c:identifier="gtk_info_bar_new" version="2.18">
27312         <doc xml:whitespace="preserve">Creates a new #GtkInfoBar object.</doc>
27313         <return-value transfer-ownership="none">
27314           <doc xml:whitespace="preserve">a new #GtkInfoBar object</doc>
27315           <type name="Widget" c:type="GtkWidget*"/>
27316         </return-value>
27317       </constructor>
27318       <constructor name="new_with_buttons"
27319                    c:identifier="gtk_info_bar_new_with_buttons"
27320                    introspectable="0">
27321         <doc xml:whitespace="preserve">Creates a new #GtkInfoBar with buttons. Button text/response ID
27322 pairs should be listed, with a %NULL pointer ending the list.
27323 Button text can be either a stock ID such as %GTK_STOCK_OK, or
27324 some arbitrary text. A response ID can be any positive number,
27325 or one of the values in the #GtkResponseType enumeration. If the
27326 user clicks one of these dialog buttons, GtkInfoBar will emit
27327 the "response" signal with the corresponding response ID.</doc>
27328         <return-value transfer-ownership="none">
27329           <doc xml:whitespace="preserve">a new #GtkInfoBar</doc>
27330           <type name="Widget" c:type="GtkWidget*"/>
27331         </return-value>
27332         <parameters>
27333           <parameter name="first_button_text"
27334                      transfer-ownership="none"
27335                      allow-none="1">
27336             <doc xml:whitespace="preserve">stock ID or text to go in first button, or %NULL</doc>
27337             <type name="utf8" c:type="gchar*"/>
27338           </parameter>
27339           <parameter transfer-ownership="none">
27340             <varargs>
27341             </varargs>
27342           </parameter>
27343         </parameters>
27344       </constructor>
27345       <method name="add_action_widget"
27346               c:identifier="gtk_info_bar_add_action_widget"
27347               version="2.18">
27348         <doc xml:whitespace="preserve">Add an activatable widget to the action area of a #GtkInfoBar,
27349 connecting a signal handler that will emit the #GtkInfoBar::response
27350 signal on the message area when the widget is activated. The widget
27351 is appended to the end of the message areas action area.</doc>
27352         <return-value transfer-ownership="none">
27353           <type name="none" c:type="void"/>
27354         </return-value>
27355         <parameters>
27356           <parameter name="child" transfer-ownership="none">
27357             <doc xml:whitespace="preserve">an activatable widget</doc>
27358             <type name="Widget" c:type="GtkWidget*"/>
27359           </parameter>
27360           <parameter name="response_id" transfer-ownership="none">
27361             <doc xml:whitespace="preserve">response ID for @child</doc>
27362             <type name="gint" c:type="gint"/>
27363           </parameter>
27364         </parameters>
27365       </method>
27366       <method name="add_button"
27367               c:identifier="gtk_info_bar_add_button"
27368               version="2.18">
27369         <doc xml:whitespace="preserve">Adds a button with the given text (or a stock button, if button_text
27370 is a stock ID) and sets things up so that clicking the button will emit
27371 the "response" signal with the given response_id. The button is appended
27372 to the end of the info bars's action area. The button widget is
27373 returned, but usually you don't need it.</doc>
27374         <return-value transfer-ownership="none">
27375           <doc xml:whitespace="preserve">the button widget that was added</doc>
27376           <type name="Widget" c:type="GtkWidget*"/>
27377         </return-value>
27378         <parameters>
27379           <parameter name="button_text" transfer-ownership="none">
27380             <doc xml:whitespace="preserve">text of button, or stock ID</doc>
27381             <type name="utf8" c:type="gchar*"/>
27382           </parameter>
27383           <parameter name="response_id" transfer-ownership="none">
27384             <doc xml:whitespace="preserve">response ID for the button</doc>
27385             <type name="gint" c:type="gint"/>
27386           </parameter>
27387         </parameters>
27388       </method>
27389       <method name="add_buttons"
27390               c:identifier="gtk_info_bar_add_buttons"
27391               version="2.18"
27392               introspectable="0">
27393         <doc xml:whitespace="preserve">Adds more buttons, same as calling gtk_info_bar_add_button()
27394 repeatedly. The variable argument list should be %NULL-terminated
27395 as with gtk_info_bar_new_with_buttons(). Each button must have both
27396 text and response ID.</doc>
27397         <return-value transfer-ownership="none">
27398           <type name="none" c:type="void"/>
27399         </return-value>
27400         <parameters>
27401           <parameter name="first_button_text" transfer-ownership="none">
27402             <doc xml:whitespace="preserve">button text or stock ID</doc>
27403             <type name="utf8" c:type="gchar*"/>
27404           </parameter>
27405           <parameter transfer-ownership="none">
27406             <varargs>
27407             </varargs>
27408           </parameter>
27409         </parameters>
27410       </method>
27411       <method name="get_action_area"
27412               c:identifier="gtk_info_bar_get_action_area"
27413               version="2.18">
27414         <doc xml:whitespace="preserve">Returns the action area of @info_bar.</doc>
27415         <return-value transfer-ownership="none">
27416           <doc xml:whitespace="preserve">the action area</doc>
27417           <type name="Widget" c:type="GtkWidget*"/>
27418         </return-value>
27419       </method>
27420       <method name="get_content_area"
27421               c:identifier="gtk_info_bar_get_content_area"
27422               version="2.18">
27423         <doc xml:whitespace="preserve">Returns the content area of @info_bar.</doc>
27424         <return-value transfer-ownership="none">
27425           <doc xml:whitespace="preserve">the content area</doc>
27426           <type name="Widget" c:type="GtkWidget*"/>
27427         </return-value>
27428       </method>
27429       <method name="get_message_type"
27430               c:identifier="gtk_info_bar_get_message_type"
27431               version="2.18">
27432         <doc xml:whitespace="preserve">Returns the message type of the message area.</doc>
27433         <return-value transfer-ownership="none">
27434           <doc xml:whitespace="preserve">the message type of the message area.</doc>
27435           <type name="MessageType" c:type="GtkMessageType"/>
27436         </return-value>
27437       </method>
27438       <method name="response"
27439               c:identifier="gtk_info_bar_response"
27440               version="2.18">
27441         <doc xml:whitespace="preserve">Emits the 'response' signal with the given @response_id.</doc>
27442         <return-value transfer-ownership="none">
27443           <type name="none" c:type="void"/>
27444         </return-value>
27445         <parameters>
27446           <parameter name="response_id" transfer-ownership="none">
27447             <doc xml:whitespace="preserve">a response ID</doc>
27448             <type name="gint" c:type="gint"/>
27449           </parameter>
27450         </parameters>
27451       </method>
27452       <method name="set_default_response"
27453               c:identifier="gtk_info_bar_set_default_response"
27454               version="2.18">
27455         <doc xml:whitespace="preserve">Sets the last widget in the info bar's action area with
27456 the given response_id as the default widget for the dialog.
27457 Pressing "Enter" normally activates the default widget.
27458 Note that this function currently requires @info_bar to
27459 be added to a widget hierarchy.</doc>
27460         <return-value transfer-ownership="none">
27461           <type name="none" c:type="void"/>
27462         </return-value>
27463         <parameters>
27464           <parameter name="response_id" transfer-ownership="none">
27465             <doc xml:whitespace="preserve">a response ID</doc>
27466             <type name="gint" c:type="gint"/>
27467           </parameter>
27468         </parameters>
27469       </method>
27470       <method name="set_message_type"
27471               c:identifier="gtk_info_bar_set_message_type"
27472               version="2.18">
27473         <doc xml:whitespace="preserve">Sets the message type of the message area.
27474 GTK+ uses this type to determine what color to use
27475 when drawing the message area.</doc>
27476         <return-value transfer-ownership="none">
27477           <type name="none" c:type="void"/>
27478         </return-value>
27479         <parameters>
27480           <parameter name="message_type" transfer-ownership="none">
27481             <doc xml:whitespace="preserve">a #GtkMessageType</doc>
27482             <type name="MessageType" c:type="GtkMessageType"/>
27483           </parameter>
27484         </parameters>
27485       </method>
27486       <method name="set_response_sensitive"
27487               c:identifier="gtk_info_bar_set_response_sensitive"
27488               version="2.18">
27489         <doc xml:whitespace="preserve">Calls gtk_widget_set_sensitive (widget, setting) for each
27490 widget in the info bars's action area with the given response_id.
27491 A convenient way to sensitize/desensitize dialog buttons.</doc>
27492         <return-value transfer-ownership="none">
27493           <type name="none" c:type="void"/>
27494         </return-value>
27495         <parameters>
27496           <parameter name="response_id" transfer-ownership="none">
27497             <doc xml:whitespace="preserve">a response ID</doc>
27498             <type name="gint" c:type="gint"/>
27499           </parameter>
27500           <parameter name="setting" transfer-ownership="none">
27501             <doc xml:whitespace="preserve">TRUE for sensitive</doc>
27502             <type name="gboolean" c:type="gboolean"/>
27503           </parameter>
27504         </parameters>
27505       </method>
27506       <property name="message-type"
27507                 version="2.18"
27508                 writable="1"
27509                 construct="1"
27510                 transfer-ownership="none">
27511         <doc xml:whitespace="preserve">The type of the message.
27512 The type is used to determine the colors to use in the info bar.
27513 The following symbolic color names can by used to customize
27514 these colors:
27515 "info_fg_color", "info_bg_color",
27516 "warning_fg_color", "warning_bg_color",
27517 "question_fg_color", "question_bg_color",
27518 "error_fg_color", "error_bg_color".
27519 "other_fg_color", "other_bg_color".
27520 If the type is #GTK_MESSAGE_OTHER, no info bar is painted but the
27521 colors are still set.</doc>
27522         <type name="MessageType"/>
27523       </property>
27524       <field name="parent">
27525         <type name="HBox" c:type="GtkHBox"/>
27526       </field>
27527       <field name="priv" readable="0" private="1">
27528         <type name="InfoBarPrivate" c:type="GtkInfoBarPrivate*"/>
27529       </field>
27530       <glib:signal name="close" version="2.18">
27531         <doc xml:whitespace="preserve">The ::close signal is a
27532 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
27533 which gets emitted when the user uses a keybinding to dismiss
27534 the info bar.
27535 The default binding for this signal is the Escape key.</doc>
27536         <return-value transfer-ownership="none">
27537           <type name="none"/>
27538         </return-value>
27539       </glib:signal>
27540       <glib:signal name="response" version="2.18">
27541         <doc xml:whitespace="preserve">Emitted when an action widget is clicked or the application programmer
27542 calls gtk_dialog_response(). The @response_id depends on which action
27543 widget was clicked.</doc>
27544         <return-value transfer-ownership="none">
27545           <type name="none"/>
27546         </return-value>
27547         <parameters>
27548           <parameter name="object" transfer-ownership="none">
27549             <doc xml:whitespace="preserve">the response ID</doc>
27550             <type name="gint"/>
27551           </parameter>
27552         </parameters>
27553       </glib:signal>
27554     </class>
27555     <record name="InfoBarClass"
27556             c:type="GtkInfoBarClass"
27557             glib:is-gtype-struct-for="InfoBar">
27558       <field name="parent_class">
27559         <type name="HBoxClass" c:type="GtkHBoxClass"/>
27560       </field>
27561       <field name="response">
27562         <callback name="response">
27563           <return-value transfer-ownership="none">
27564             <type name="none" c:type="void"/>
27565           </return-value>
27566           <parameters>
27567             <parameter name="info_bar" transfer-ownership="none">
27568               <type name="InfoBar" c:type="GtkInfoBar*"/>
27569             </parameter>
27570             <parameter name="response_id" transfer-ownership="none">
27571               <type name="gint" c:type="gint"/>
27572             </parameter>
27573           </parameters>
27574         </callback>
27575       </field>
27576       <field name="close">
27577         <callback name="close">
27578           <return-value transfer-ownership="none">
27579             <type name="none" c:type="void"/>
27580           </return-value>
27581           <parameters>
27582             <parameter name="info_bar" transfer-ownership="none">
27583               <type name="InfoBar" c:type="GtkInfoBar*"/>
27584             </parameter>
27585           </parameters>
27586         </callback>
27587       </field>
27588       <field name="_gtk_reserved1" introspectable="0">
27589         <callback name="_gtk_reserved1">
27590           <return-value transfer-ownership="none">
27591             <type name="none" c:type="void"/>
27592           </return-value>
27593         </callback>
27594       </field>
27595       <field name="_gtk_reserved2" introspectable="0">
27596         <callback name="_gtk_reserved2">
27597           <return-value transfer-ownership="none">
27598             <type name="none" c:type="void"/>
27599           </return-value>
27600         </callback>
27601       </field>
27602       <field name="_gtk_reserved3" introspectable="0">
27603         <callback name="_gtk_reserved3">
27604           <return-value transfer-ownership="none">
27605             <type name="none" c:type="void"/>
27606           </return-value>
27607         </callback>
27608       </field>
27609       <field name="_gtk_reserved4" introspectable="0">
27610         <callback name="_gtk_reserved4">
27611           <return-value transfer-ownership="none">
27612             <type name="none" c:type="void"/>
27613           </return-value>
27614         </callback>
27615       </field>
27616       <field name="_gtk_reserved5" introspectable="0">
27617         <callback name="_gtk_reserved5">
27618           <return-value transfer-ownership="none">
27619             <type name="none" c:type="void"/>
27620           </return-value>
27621         </callback>
27622       </field>
27623       <field name="_gtk_reserved6" introspectable="0">
27624         <callback name="_gtk_reserved6">
27625           <return-value transfer-ownership="none">
27626             <type name="none" c:type="void"/>
27627           </return-value>
27628         </callback>
27629       </field>
27630     </record>
27631     <record name="InfoBarPrivate" c:type="GtkInfoBarPrivate" disguised="1">
27632     </record>
27633     <class name="Invisible"
27634            c:symbol-prefix="invisible"
27635            c:type="GtkInvisible"
27636            parent="Widget"
27637            glib:type-name="GtkInvisible"
27638            glib:get-type="gtk_invisible_get_type"
27639            glib:type-struct="InvisibleClass">
27640       <implements name="Atk.ImplementorIface"/>
27641       <implements name="Buildable"/>
27642       <implements name="SizeRequest"/>
27643       <constructor name="new" c:identifier="gtk_invisible_new">
27644         <doc xml:whitespace="preserve">Creates a new #GtkInvisible.</doc>
27645         <return-value transfer-ownership="none">
27646           <doc xml:whitespace="preserve">a new #GtkInvisible.</doc>
27647           <type name="Widget" c:type="GtkWidget*"/>
27648         </return-value>
27649       </constructor>
27650       <constructor name="new_for_screen"
27651                    c:identifier="gtk_invisible_new_for_screen"
27652                    version="2.2">
27653         <doc xml:whitespace="preserve">Creates a new #GtkInvisible object for a specified screen</doc>
27654         <return-value transfer-ownership="none">
27655           <doc xml:whitespace="preserve">a newly created #GtkInvisible object</doc>
27656           <type name="Widget" c:type="GtkWidget*"/>
27657         </return-value>
27658         <parameters>
27659           <parameter name="screen" transfer-ownership="none">
27660             <doc xml:whitespace="preserve">a #GdkScreen which identifies on which the new #GtkInvisible will be created.</doc>
27661             <type name="Gdk.Screen" c:type="GdkScreen*"/>
27662           </parameter>
27663         </parameters>
27664       </constructor>
27665       <method name="get_screen"
27666               c:identifier="gtk_invisible_get_screen"
27667               version="2.2">
27668         <doc xml:whitespace="preserve">Returns the #GdkScreen object associated with @invisible</doc>
27669         <return-value transfer-ownership="none">
27670           <doc xml:whitespace="preserve">the associated #GdkScreen.</doc>
27671           <type name="Gdk.Screen" c:type="GdkScreen*"/>
27672         </return-value>
27673       </method>
27674       <method name="set_screen"
27675               c:identifier="gtk_invisible_set_screen"
27676               version="2.2">
27677         <doc xml:whitespace="preserve">Sets the #GdkScreen where the #GtkInvisible object will be displayed.</doc>
27678         <return-value transfer-ownership="none">
27679           <type name="none" c:type="void"/>
27680         </return-value>
27681         <parameters>
27682           <parameter name="screen" transfer-ownership="none">
27683             <doc xml:whitespace="preserve">a #GdkScreen.</doc>
27684             <type name="Gdk.Screen" c:type="GdkScreen*"/>
27685           </parameter>
27686         </parameters>
27687       </method>
27688       <property name="screen" writable="1" transfer-ownership="none">
27689         <type name="Gdk.Screen"/>
27690       </property>
27691       <field name="widget">
27692         <type name="Widget" c:type="GtkWidget"/>
27693       </field>
27694       <field name="priv" readable="0" private="1">
27695         <type name="InvisiblePrivate" c:type="GtkInvisiblePrivate*"/>
27696       </field>
27697     </class>
27698     <record name="InvisibleClass"
27699             c:type="GtkInvisibleClass"
27700             glib:is-gtype-struct-for="Invisible">
27701       <field name="parent_class">
27702         <type name="WidgetClass" c:type="GtkWidgetClass"/>
27703       </field>
27704       <field name="_gtk_reserved1" introspectable="0">
27705         <callback name="_gtk_reserved1">
27706           <return-value transfer-ownership="none">
27707             <type name="none" c:type="void"/>
27708           </return-value>
27709         </callback>
27710       </field>
27711       <field name="_gtk_reserved2" introspectable="0">
27712         <callback name="_gtk_reserved2">
27713           <return-value transfer-ownership="none">
27714             <type name="none" c:type="void"/>
27715           </return-value>
27716         </callback>
27717       </field>
27718       <field name="_gtk_reserved3" introspectable="0">
27719         <callback name="_gtk_reserved3">
27720           <return-value transfer-ownership="none">
27721             <type name="none" c:type="void"/>
27722           </return-value>
27723         </callback>
27724       </field>
27725       <field name="_gtk_reserved4" introspectable="0">
27726         <callback name="_gtk_reserved4">
27727           <return-value transfer-ownership="none">
27728             <type name="none" c:type="void"/>
27729           </return-value>
27730         </callback>
27731       </field>
27732     </record>
27733     <record name="InvisiblePrivate" c:type="GtkInvisiblePrivate" disguised="1">
27734     </record>
27735     <enumeration name="Justification"
27736                  glib:type-name="GtkJustification"
27737                  glib:get-type="gtk_justification_get_type"
27738                  c:type="GtkJustification">
27739       <member name="left"
27740               value="0"
27741               c:identifier="GTK_JUSTIFY_LEFT"
27742               glib:nick="left"/>
27743       <member name="right"
27744               value="1"
27745               c:identifier="GTK_JUSTIFY_RIGHT"
27746               glib:nick="right"/>
27747       <member name="center"
27748               value="2"
27749               c:identifier="GTK_JUSTIFY_CENTER"
27750               glib:nick="center"/>
27751       <member name="fill"
27752               value="3"
27753               c:identifier="GTK_JUSTIFY_FILL"
27754               glib:nick="fill"/>
27755     </enumeration>
27756     <callback name="KeySnoopFunc" c:type="GtkKeySnoopFunc">
27757       <return-value transfer-ownership="none">
27758         <type name="gint" c:type="gint"/>
27759       </return-value>
27760       <parameters>
27761         <parameter name="grab_widget" transfer-ownership="none">
27762           <type name="Widget" c:type="GtkWidget*"/>
27763         </parameter>
27764         <parameter name="event" transfer-ownership="none">
27765           <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
27766         </parameter>
27767         <parameter name="func_data" transfer-ownership="none">
27768           <type name="gpointer" c:type="gpointer"/>
27769         </parameter>
27770       </parameters>
27771     </callback>
27772     <class name="Label"
27773            c:symbol-prefix="label"
27774            c:type="GtkLabel"
27775            parent="Misc"
27776            glib:type-name="GtkLabel"
27777            glib:get-type="gtk_label_get_type"
27778            glib:type-struct="LabelClass">
27779       <implements name="Atk.ImplementorIface"/>
27780       <implements name="Buildable"/>
27781       <implements name="SizeRequest"/>
27782       <constructor name="new" c:identifier="gtk_label_new">
27783         <doc xml:whitespace="preserve">Creates a new label with the given text inside it. You can
27784 pass %NULL to get an empty label widget.</doc>
27785         <return-value transfer-ownership="none">
27786           <doc xml:whitespace="preserve">the new #GtkLabel</doc>
27787           <type name="Widget" c:type="GtkWidget*"/>
27788         </return-value>
27789         <parameters>
27790           <parameter name="str" transfer-ownership="none">
27791             <doc xml:whitespace="preserve">The text of the label</doc>
27792             <type name="utf8" c:type="gchar*"/>
27793           </parameter>
27794         </parameters>
27795       </constructor>
27796       <constructor name="new_with_mnemonic"
27797                    c:identifier="gtk_label_new_with_mnemonic">
27798         <doc xml:whitespace="preserve">Creates a new #GtkLabel, containing the text in @str.
27799 If characters in @str are preceded by an underscore, they are
27800 underlined. If you need a literal underscore character in a label, use
27801 '__' (two underscores). The first underlined character represents a 
27802 keyboard accelerator called a mnemonic. The mnemonic key can be used 
27803 to activate another widget, chosen automatically, or explicitly using
27804 gtk_label_set_mnemonic_widget().
27805 If gtk_label_set_mnemonic_widget() is not called, then the first 
27806 activatable ancestor of the #GtkLabel will be chosen as the mnemonic 
27807 widget. For instance, if the label is inside a button or menu item, 
27808 the button or menu item will automatically become the mnemonic widget 
27809 and be activated by the mnemonic.</doc>
27810         <return-value transfer-ownership="none">
27811           <doc xml:whitespace="preserve">the new #GtkLabel</doc>
27812           <type name="Widget" c:type="GtkWidget*"/>
27813         </return-value>
27814         <parameters>
27815           <parameter name="str" transfer-ownership="none">
27816             <doc xml:whitespace="preserve">The text of the label, with an underscore in front of the mnemonic character</doc>
27817             <type name="utf8" c:type="gchar*"/>
27818           </parameter>
27819         </parameters>
27820       </constructor>
27821       <method name="get_angle"
27822               c:identifier="gtk_label_get_angle"
27823               version="2.6">
27824         <doc xml:whitespace="preserve">Gets the angle of rotation for the label. See
27825 gtk_label_set_angle().</doc>
27826         <return-value transfer-ownership="none">
27827           <doc xml:whitespace="preserve">the angle of rotation for the label</doc>
27828           <type name="gdouble" c:type="gdouble"/>
27829         </return-value>
27830       </method>
27831       <method name="get_attributes" c:identifier="gtk_label_get_attributes">
27832         <doc xml:whitespace="preserve">Gets the attribute list that was set on the label using
27833 gtk_label_set_attributes(), if any. This function does
27834 not reflect attributes that come from the labels markup
27835 (see gtk_label_set_markup()). If you want to get the
27836 effective attributes for the label, use
27837 pango_layout_get_attribute (gtk_label_get_layout (label)).</doc>
27838         <return-value transfer-ownership="full">
27839           <doc xml:whitespace="preserve">the attribute list, or %NULL if none was set.</doc>
27840           <type name="Pango.AttrList" c:type="PangoAttrList*"/>
27841         </return-value>
27842       </method>
27843       <method name="get_current_uri"
27844               c:identifier="gtk_label_get_current_uri"
27845               version="2.18">
27846         <doc xml:whitespace="preserve">Returns the URI for the currently active link in the label.
27847 The active link is the one under the mouse pointer or, in a
27848 selectable label, the link in which the text cursor is currently
27849 positioned.
27850 This function is intended for use in a #GtkLabel::activate-link handler
27851 or for use in a #GtkWidget::query-tooltip handler.
27852 not be freed or modified.</doc>
27853         <return-value transfer-ownership="none">
27854           <doc xml:whitespace="preserve">the currently active URI. The string is owned by GTK+ and must</doc>
27855           <type name="utf8" c:type="gchar*"/>
27856         </return-value>
27857       </method>
27858       <method name="get_ellipsize"
27859               c:identifier="gtk_label_get_ellipsize"
27860               version="2.6">
27861         <doc xml:whitespace="preserve">Returns the ellipsizing position of the label. See gtk_label_set_ellipsize().</doc>
27862         <return-value transfer-ownership="none">
27863           <doc xml:whitespace="preserve">#PangoEllipsizeMode</doc>
27864           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
27865         </return-value>
27866       </method>
27867       <method name="get_justify" c:identifier="gtk_label_get_justify">
27868         <doc xml:whitespace="preserve">Returns the justification of the label. See gtk_label_set_justify().</doc>
27869         <return-value transfer-ownership="none">
27870           <doc xml:whitespace="preserve">#GtkJustification</doc>
27871           <type name="Justification" c:type="GtkJustification"/>
27872         </return-value>
27873       </method>
27874       <method name="get_label" c:identifier="gtk_label_get_label">
27875         <doc xml:whitespace="preserve">Fetches the text from a label widget including any embedded
27876 underlines indicating mnemonics and Pango markup. (See
27877 gtk_label_get_text()).
27878 owned by the widget and must not be modified or freed.</doc>
27879         <return-value transfer-ownership="none">
27880           <doc xml:whitespace="preserve">the text of the label widget. This string is</doc>
27881           <type name="utf8" c:type="gchar*"/>
27882         </return-value>
27883       </method>
27884       <method name="get_layout" c:identifier="gtk_label_get_layout">
27885         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the label.
27886 The layout is useful to e.g. convert text positions to
27887 pixel positions, in combination with gtk_label_get_layout_offsets().
27888 The returned layout is owned by the label so need not be
27889 freed by the caller.</doc>
27890         <return-value transfer-ownership="none">
27891           <doc xml:whitespace="preserve">the #PangoLayout for this label</doc>
27892           <type name="Pango.Layout" c:type="PangoLayout*"/>
27893         </return-value>
27894       </method>
27895       <method name="get_layout_offsets"
27896               c:identifier="gtk_label_get_layout_offsets">
27897         <doc xml:whitespace="preserve">Obtains the coordinates where the label will draw the #PangoLayout
27898 representing the text in the label; useful to convert mouse events
27899 into coordinates inside the #PangoLayout, e.g. to take some action
27900 if some part of the label is clicked. Of course you will need to
27901 create a #GtkEventBox to receive the events, and pack the label
27902 inside it, since labels are a #GTK_NO_WINDOW widget. Remember
27903 when using the #PangoLayout functions you need to convert to
27904 and from pixels using PANGO_PIXELS() or #PANGO_SCALE.</doc>
27905         <return-value transfer-ownership="none">
27906           <type name="none" c:type="void"/>
27907         </return-value>
27908         <parameters>
27909           <parameter name="x" transfer-ownership="none" allow-none="1">
27910             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
27911             <type name="gint" c:type="gint*"/>
27912           </parameter>
27913           <parameter name="y" transfer-ownership="none" allow-none="1">
27914             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
27915             <type name="gint" c:type="gint*"/>
27916           </parameter>
27917         </parameters>
27918       </method>
27919       <method name="get_line_wrap" c:identifier="gtk_label_get_line_wrap">
27920         <doc xml:whitespace="preserve">Returns whether lines in the label are automatically wrapped. 
27921 See gtk_label_set_line_wrap().</doc>
27922         <return-value transfer-ownership="none">
27923           <doc xml:whitespace="preserve">%TRUE if the lines of the label are automatically wrapped.</doc>
27924           <type name="gboolean" c:type="gboolean"/>
27925         </return-value>
27926       </method>
27927       <method name="get_line_wrap_mode"
27928               c:identifier="gtk_label_get_line_wrap_mode"
27929               version="2.10">
27930         <doc xml:whitespace="preserve">Returns line wrap mode used by the label. See gtk_label_set_line_wrap_mode().</doc>
27931         <return-value transfer-ownership="none">
27932           <doc xml:whitespace="preserve">%TRUE if the lines of the label are automatically wrapped.</doc>
27933           <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
27934         </return-value>
27935       </method>
27936       <method name="get_max_width_chars"
27937               c:identifier="gtk_label_get_max_width_chars"
27938               version="2.6">
27939         <doc xml:whitespace="preserve">Retrieves the desired maximum width of @label, in characters. See
27940 gtk_label_set_width_chars().</doc>
27941         <return-value transfer-ownership="none">
27942           <doc xml:whitespace="preserve">the maximum width of the label in characters.</doc>
27943           <type name="gint" c:type="gint"/>
27944         </return-value>
27945       </method>
27946       <method name="get_mnemonic_keyval"
27947               c:identifier="gtk_label_get_mnemonic_keyval">
27948         <doc xml:whitespace="preserve">If the label has been set so that it has an mnemonic key this function
27949 returns the keyval used for the mnemonic accelerator. If there is no
27950 mnemonic set up it returns #GDK_VoidSymbol.</doc>
27951         <return-value transfer-ownership="none">
27952           <doc xml:whitespace="preserve">GDK keyval usable for accelerators, or #GDK_VoidSymbol</doc>
27953           <type name="guint" c:type="guint"/>
27954         </return-value>
27955       </method>
27956       <method name="get_mnemonic_widget"
27957               c:identifier="gtk_label_get_mnemonic_widget">
27958         <doc xml:whitespace="preserve">Retrieves the target of the mnemonic (keyboard shortcut) of this
27959 label. See gtk_label_set_mnemonic_widget().
27960 or %NULL if none has been set and the default algorithm will be used.</doc>
27961         <return-value transfer-ownership="none">
27962           <doc xml:whitespace="preserve">the target of the label's mnemonic,</doc>
27963           <type name="Widget" c:type="GtkWidget*"/>
27964         </return-value>
27965       </method>
27966       <method name="get_selectable" c:identifier="gtk_label_get_selectable">
27967         <doc xml:whitespace="preserve">Gets the value set by gtk_label_set_selectable().</doc>
27968         <return-value transfer-ownership="none">
27969           <doc xml:whitespace="preserve">%TRUE if the user can copy text from the label</doc>
27970           <type name="gboolean" c:type="gboolean"/>
27971         </return-value>
27972       </method>
27973       <method name="get_selection_bounds"
27974               c:identifier="gtk_label_get_selection_bounds">
27975         <doc xml:whitespace="preserve">Gets the selected range of characters in the label, returning %TRUE
27976 if there's a selection.</doc>
27977         <return-value transfer-ownership="none">
27978           <doc xml:whitespace="preserve">%TRUE if selection is non-empty</doc>
27979           <type name="gboolean" c:type="gboolean"/>
27980         </return-value>
27981         <parameters>
27982           <parameter name="start" transfer-ownership="none">
27983             <doc xml:whitespace="preserve">return location for start of selection, as a character offset</doc>
27984             <type name="gint" c:type="gint*"/>
27985           </parameter>
27986           <parameter name="end" transfer-ownership="none">
27987             <doc xml:whitespace="preserve">return location for end of selection, as a character offset</doc>
27988             <type name="gint" c:type="gint*"/>
27989           </parameter>
27990         </parameters>
27991       </method>
27992       <method name="get_single_line_mode"
27993               c:identifier="gtk_label_get_single_line_mode"
27994               version="2.6">
27995         <doc xml:whitespace="preserve">Returns whether the label is in single line mode.</doc>
27996         <return-value transfer-ownership="none">
27997           <doc xml:whitespace="preserve">%TRUE when the label is in single line mode.</doc>
27998           <type name="gboolean" c:type="gboolean"/>
27999         </return-value>
28000       </method>
28001       <method name="get_text" c:identifier="gtk_label_get_text">
28002         <doc xml:whitespace="preserve">Fetches the text from a label widget, as displayed on the
28003 screen. This does not include any embedded underlines
28004 indicating mnemonics or Pango markup. (See gtk_label_get_label())
28005 string used by the label, and must not be modified.</doc>
28006         <return-value transfer-ownership="none">
28007           <doc xml:whitespace="preserve">the text in the label widget. This is the internal</doc>
28008           <type name="utf8" c:type="gchar*"/>
28009         </return-value>
28010       </method>
28011       <method name="get_track_visited_links"
28012               c:identifier="gtk_label_get_track_visited_links"
28013               version="2.18">
28014         <doc xml:whitespace="preserve">Returns whether the label is currently keeping track
28015 of clicked links.</doc>
28016         <return-value transfer-ownership="none">
28017           <doc xml:whitespace="preserve">%TRUE if clicked links are remembered</doc>
28018           <type name="gboolean" c:type="gboolean"/>
28019         </return-value>
28020       </method>
28021       <method name="get_use_markup" c:identifier="gtk_label_get_use_markup">
28022         <doc xml:whitespace="preserve">Returns whether the label's text is interpreted as marked up with
28023 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
28024 language&lt;/link&gt;. See gtk_label_set_use_markup ().</doc>
28025         <return-value transfer-ownership="none">
28026           <doc xml:whitespace="preserve">%TRUE if the label's text will be parsed for markup.</doc>
28027           <type name="gboolean" c:type="gboolean"/>
28028         </return-value>
28029       </method>
28030       <method name="get_use_underline"
28031               c:identifier="gtk_label_get_use_underline">
28032         <doc xml:whitespace="preserve">Returns whether an embedded underline in the label indicates a
28033 mnemonic. See gtk_label_set_use_underline().
28034 the mnemonic accelerator keys.</doc>
28035         <return-value transfer-ownership="none">
28036           <doc xml:whitespace="preserve">%TRUE whether an embedded underline in the label indicates</doc>
28037           <type name="gboolean" c:type="gboolean"/>
28038         </return-value>
28039       </method>
28040       <method name="get_width_chars"
28041               c:identifier="gtk_label_get_width_chars"
28042               version="2.6">
28043         <doc xml:whitespace="preserve">Retrieves the desired width of @label, in characters. See
28044 gtk_label_set_width_chars().</doc>
28045         <return-value transfer-ownership="none">
28046           <doc xml:whitespace="preserve">the width of the label in characters.</doc>
28047           <type name="gint" c:type="gint"/>
28048         </return-value>
28049       </method>
28050       <method name="select_region" c:identifier="gtk_label_select_region">
28051         <doc xml:whitespace="preserve">Selects a range of characters in the label, if the label is selectable.
28052 See gtk_label_set_selectable(). If the label is not selectable,
28053 this function has no effect. If @start_offset or</doc>
28054         <return-value transfer-ownership="none">
28055           <type name="none" c:type="void"/>
28056         </return-value>
28057         <parameters>
28058           <parameter name="start_offset" transfer-ownership="none">
28059             <doc xml:whitespace="preserve">start offset (in characters not bytes)</doc>
28060             <type name="gint" c:type="gint"/>
28061           </parameter>
28062           <parameter name="end_offset" transfer-ownership="none">
28063             <doc xml:whitespace="preserve">end offset (in characters not bytes)</doc>
28064             <type name="gint" c:type="gint"/>
28065           </parameter>
28066         </parameters>
28067       </method>
28068       <method name="set_angle"
28069               c:identifier="gtk_label_set_angle"
28070               version="2.6">
28071         <doc xml:whitespace="preserve">Sets the angle of rotation for the label. An angle of 90 reads from
28072 from bottom to top, an angle of 270, from top to bottom. The angle
28073 setting for the label is ignored if the label is selectable,
28074 wrapped, or ellipsized.</doc>
28075         <return-value transfer-ownership="none">
28076           <type name="none" c:type="void"/>
28077         </return-value>
28078         <parameters>
28079           <parameter name="angle" transfer-ownership="none">
28080             <doc xml:whitespace="preserve">the angle that the baseline of the label makes with the horizontal, in degrees, measured counterclockwise</doc>
28081             <type name="gdouble" c:type="gdouble"/>
28082           </parameter>
28083         </parameters>
28084       </method>
28085       <method name="set_attributes" c:identifier="gtk_label_set_attributes">
28086         <doc xml:whitespace="preserve">Sets a #PangoAttrList; the attributes in the list are applied to the
28087 label text. 
28088 &lt;note&gt;&lt;para&gt;The attributes set with this function will be applied
28089 and merged with any other attributes previously effected by way
28090 of the #GtkLabel:use-underline or #GtkLabel:use-markup properties.
28091 While it is not recommended to mix markup strings with manually set
28092 attributes, if you must; know that the attributes will be applied
28093 to the label after the markup string is parsed.&lt;/para&gt;&lt;/note&gt;</doc>
28094         <return-value transfer-ownership="none">
28095           <type name="none" c:type="void"/>
28096         </return-value>
28097         <parameters>
28098           <parameter name="attrs" transfer-ownership="none">
28099             <doc xml:whitespace="preserve">a #PangoAttrList</doc>
28100             <type name="Pango.AttrList" c:type="PangoAttrList*"/>
28101           </parameter>
28102         </parameters>
28103       </method>
28104       <method name="set_ellipsize"
28105               c:identifier="gtk_label_set_ellipsize"
28106               version="2.6">
28107         <doc xml:whitespace="preserve">if there is not enough space to render the entire string.</doc>
28108         <return-value transfer-ownership="none">
28109           <type name="none" c:type="void"/>
28110         </return-value>
28111         <parameters>
28112           <parameter name="mode" transfer-ownership="none">
28113             <doc xml:whitespace="preserve">a #PangoEllipsizeMode</doc>
28114             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
28115           </parameter>
28116         </parameters>
28117       </method>
28118       <method name="set_justify" c:identifier="gtk_label_set_justify">
28119         <doc xml:whitespace="preserve">Sets the alignment of the lines in the text of the label relative to
28120 each other. %GTK_JUSTIFY_LEFT is the default value when the
28121 widget is first created with gtk_label_new(). If you instead want
28122 to set the alignment of the label as a whole, use
28123 gtk_misc_set_alignment() instead. gtk_label_set_justify() has no
28124 effect on labels containing only a single line.</doc>
28125         <return-value transfer-ownership="none">
28126           <type name="none" c:type="void"/>
28127         </return-value>
28128         <parameters>
28129           <parameter name="jtype" transfer-ownership="none">
28130             <doc xml:whitespace="preserve">a #GtkJustification</doc>
28131             <type name="Justification" c:type="GtkJustification"/>
28132           </parameter>
28133         </parameters>
28134       </method>
28135       <method name="set_label" c:identifier="gtk_label_set_label">
28136         <doc xml:whitespace="preserve">Sets the text of the label. The label is interpreted as
28137 including embedded underlines and/or Pango markup depending
28138 on the values of the #GtkLabel:use-underline" and
28139 #GtkLabel:use-markup properties.</doc>
28140         <return-value transfer-ownership="none">
28141           <type name="none" c:type="void"/>
28142         </return-value>
28143         <parameters>
28144           <parameter name="str" transfer-ownership="none">
28145             <doc xml:whitespace="preserve">the new text to set for the label</doc>
28146             <type name="utf8" c:type="gchar*"/>
28147           </parameter>
28148         </parameters>
28149       </method>
28150       <method name="set_line_wrap" c:identifier="gtk_label_set_line_wrap">
28151         <doc xml:whitespace="preserve">Toggles line wrapping within the #GtkLabel widget. %TRUE makes it break
28152 lines if text exceeds the widget's size. %FALSE lets the text get cut off
28153 by the edge of the widget if it exceeds the widget size.
28154 Note that setting line wrapping to %TRUE does not make the label
28155 wrap at its parent container's width, because GTK+ widgets
28156 conceptually can't make their requisition depend on the parent
28157 container's size. For a label that wraps at a specific position,
28158 set the label's width using gtk_widget_set_size_request().</doc>
28159         <return-value transfer-ownership="none">
28160           <type name="none" c:type="void"/>
28161         </return-value>
28162         <parameters>
28163           <parameter name="wrap" transfer-ownership="none">
28164             <doc xml:whitespace="preserve">the setting</doc>
28165             <type name="gboolean" c:type="gboolean"/>
28166           </parameter>
28167         </parameters>
28168       </method>
28169       <method name="set_line_wrap_mode"
28170               c:identifier="gtk_label_set_line_wrap_mode"
28171               version="2.10">
28172         <doc xml:whitespace="preserve">If line wrapping is on (see gtk_label_set_line_wrap()) this controls how
28173 the line wrapping is done. The default is %PANGO_WRAP_WORD which means
28174 wrap on word boundaries.</doc>
28175         <return-value transfer-ownership="none">
28176           <type name="none" c:type="void"/>
28177         </return-value>
28178         <parameters>
28179           <parameter name="wrap_mode" transfer-ownership="none">
28180             <doc xml:whitespace="preserve">the line wrapping mode</doc>
28181             <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
28182           </parameter>
28183         </parameters>
28184       </method>
28185       <method name="set_markup" c:identifier="gtk_label_set_markup">
28186         <doc xml:whitespace="preserve">Parses @str which is marked up with the &lt;link
28187 linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;, setting the
28188 label's text and attribute list based on the parse results. If the @str is
28189 external data, you may need to escape it with g_markup_escape_text() or
28190 g_markup_printf_escaped()&lt;!-- --&gt;:
28191 |[
28192 char *markup;
28193 markup = g_markup_printf_escaped ("&amp;lt;span style=\"italic\"&amp;gt;&amp;percnt;s&amp;lt;/span&amp;gt;", str);
28194 gtk_label_set_markup (GTK_LABEL (label), markup);
28195 g_free (markup);
28196 ]|</doc>
28197         <return-value transfer-ownership="none">
28198           <type name="none" c:type="void"/>
28199         </return-value>
28200         <parameters>
28201           <parameter name="str" transfer-ownership="none">
28202             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
28203             <type name="utf8" c:type="gchar*"/>
28204           </parameter>
28205         </parameters>
28206       </method>
28207       <method name="set_markup_with_mnemonic"
28208               c:identifier="gtk_label_set_markup_with_mnemonic">
28209         <doc xml:whitespace="preserve">Parses @str which is marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;,
28210 setting the label's text and attribute list based on the parse results.
28211 If characters in @str are preceded by an underscore, they are underlined
28212 indicating that they represent a keyboard accelerator called a mnemonic.
28213 The mnemonic key can be used to activate another widget, chosen 
28214 automatically, or explicitly using gtk_label_set_mnemonic_widget().</doc>
28215         <return-value transfer-ownership="none">
28216           <type name="none" c:type="void"/>
28217         </return-value>
28218         <parameters>
28219           <parameter name="str" transfer-ownership="none">
28220             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
28221             <type name="utf8" c:type="gchar*"/>
28222           </parameter>
28223         </parameters>
28224       </method>
28225       <method name="set_max_width_chars"
28226               c:identifier="gtk_label_set_max_width_chars"
28227               version="2.6">
28228         <doc xml:whitespace="preserve">Sets the desired maximum width in characters of @label to @n_chars.</doc>
28229         <return-value transfer-ownership="none">
28230           <type name="none" c:type="void"/>
28231         </return-value>
28232         <parameters>
28233           <parameter name="n_chars" transfer-ownership="none">
28234             <doc xml:whitespace="preserve">the new desired maximum width, in characters.</doc>
28235             <type name="gint" c:type="gint"/>
28236           </parameter>
28237         </parameters>
28238       </method>
28239       <method name="set_mnemonic_widget"
28240               c:identifier="gtk_label_set_mnemonic_widget">
28241         <doc xml:whitespace="preserve">If the label has been set so that it has an mnemonic key (using
28242 i.e. gtk_label_set_markup_with_mnemonic(),
28243 gtk_label_set_text_with_mnemonic(), gtk_label_new_with_mnemonic()
28244 or the "use_underline" property) the label can be associated with a
28245 widget that is the target of the mnemonic. When the label is inside
28246 a widget (like a #GtkButton or a #GtkNotebook tab) it is
28247 automatically associated with the correct widget, but sometimes
28248 (i.e. when the target is a #GtkEntry next to the label) you need to
28249 set it explicitly using this function.
28250 The target widget will be accelerated by emitting the 
28251 GtkWidget::mnemonic-activate signal on it. The default handler for 
28252 this signal will activate the widget if there are no mnemonic collisions 
28253 and toggle focus between the colliding widgets otherwise.</doc>
28254         <return-value transfer-ownership="none">
28255           <type name="none" c:type="void"/>
28256         </return-value>
28257         <parameters>
28258           <parameter name="widget" transfer-ownership="none" allow-none="1">
28259             <doc xml:whitespace="preserve">the target #GtkWidget</doc>
28260             <type name="Widget" c:type="GtkWidget*"/>
28261           </parameter>
28262         </parameters>
28263       </method>
28264       <method name="set_pattern" c:identifier="gtk_label_set_pattern">
28265         <return-value transfer-ownership="none">
28266           <type name="none" c:type="void"/>
28267         </return-value>
28268         <parameters>
28269           <parameter name="pattern" transfer-ownership="none">
28270             <type name="utf8" c:type="gchar*"/>
28271           </parameter>
28272         </parameters>
28273       </method>
28274       <method name="set_selectable" c:identifier="gtk_label_set_selectable">
28275         <doc xml:whitespace="preserve">Selectable labels allow the user to select text from the label, for
28276 copy-and-paste.</doc>
28277         <return-value transfer-ownership="none">
28278           <type name="none" c:type="void"/>
28279         </return-value>
28280         <parameters>
28281           <parameter name="setting" transfer-ownership="none">
28282             <doc xml:whitespace="preserve">%TRUE to allow selecting text in the label</doc>
28283             <type name="gboolean" c:type="gboolean"/>
28284           </parameter>
28285         </parameters>
28286       </method>
28287       <method name="set_single_line_mode"
28288               c:identifier="gtk_label_set_single_line_mode"
28289               version="2.6">
28290         <doc xml:whitespace="preserve">Sets whether the label is in single line mode.</doc>
28291         <return-value transfer-ownership="none">
28292           <type name="none" c:type="void"/>
28293         </return-value>
28294         <parameters>
28295           <parameter name="single_line_mode" transfer-ownership="none">
28296             <doc xml:whitespace="preserve">%TRUE if the label should be in single line mode</doc>
28297             <type name="gboolean" c:type="gboolean"/>
28298           </parameter>
28299         </parameters>
28300       </method>
28301       <method name="set_text" c:identifier="gtk_label_set_text">
28302         <doc xml:whitespace="preserve">Sets the text within the #GtkLabel widget. It overwrites any text that
28303 was there before.  
28304 This will also clear any previously set mnemonic accelerators.</doc>
28305         <return-value transfer-ownership="none">
28306           <type name="none" c:type="void"/>
28307         </return-value>
28308         <parameters>
28309           <parameter name="str" transfer-ownership="none">
28310             <doc xml:whitespace="preserve">The text you want to set</doc>
28311             <type name="utf8" c:type="gchar*"/>
28312           </parameter>
28313         </parameters>
28314       </method>
28315       <method name="set_text_with_mnemonic"
28316               c:identifier="gtk_label_set_text_with_mnemonic">
28317         <doc xml:whitespace="preserve">Sets the label's text from the string @str.
28318 If characters in @str are preceded by an underscore, they are underlined
28319 indicating that they represent a keyboard accelerator called a mnemonic.
28320 The mnemonic key can be used to activate another widget, chosen 
28321 automatically, or explicitly using gtk_label_set_mnemonic_widget().</doc>
28322         <return-value transfer-ownership="none">
28323           <type name="none" c:type="void"/>
28324         </return-value>
28325         <parameters>
28326           <parameter name="str" transfer-ownership="none">
28327             <doc xml:whitespace="preserve">a string</doc>
28328             <type name="utf8" c:type="gchar*"/>
28329           </parameter>
28330         </parameters>
28331       </method>
28332       <method name="set_track_visited_links"
28333               c:identifier="gtk_label_set_track_visited_links"
28334               version="2.18">
28335         <doc xml:whitespace="preserve">Sets whether the label should keep track of clicked
28336 links (and use a different color for them).</doc>
28337         <return-value transfer-ownership="none">
28338           <type name="none" c:type="void"/>
28339         </return-value>
28340         <parameters>
28341           <parameter name="track_links" transfer-ownership="none">
28342             <doc xml:whitespace="preserve">%TRUE to track visited links</doc>
28343             <type name="gboolean" c:type="gboolean"/>
28344           </parameter>
28345         </parameters>
28346       </method>
28347       <method name="set_use_markup" c:identifier="gtk_label_set_use_markup">
28348         <doc xml:whitespace="preserve">Sets whether the text of the label contains markup in &lt;link
28349 linkend="PangoMarkupFormat"&gt;Pango's text markup
28350 language&lt;/link&gt;. See gtk_label_set_markup().</doc>
28351         <return-value transfer-ownership="none">
28352           <type name="none" c:type="void"/>
28353         </return-value>
28354         <parameters>
28355           <parameter name="setting" transfer-ownership="none">
28356             <doc xml:whitespace="preserve">%TRUE if the label's text should be parsed for markup.</doc>
28357             <type name="gboolean" c:type="gboolean"/>
28358           </parameter>
28359         </parameters>
28360       </method>
28361       <method name="set_use_underline"
28362               c:identifier="gtk_label_set_use_underline">
28363         <doc xml:whitespace="preserve">If true, an underline in the text indicates the next character should be
28364 used for the mnemonic accelerator key.</doc>
28365         <return-value transfer-ownership="none">
28366           <type name="none" c:type="void"/>
28367         </return-value>
28368         <parameters>
28369           <parameter name="setting" transfer-ownership="none">
28370             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
28371             <type name="gboolean" c:type="gboolean"/>
28372           </parameter>
28373         </parameters>
28374       </method>
28375       <method name="set_width_chars"
28376               c:identifier="gtk_label_set_width_chars"
28377               version="2.6">
28378         <doc xml:whitespace="preserve">Sets the desired width in characters of @label to @n_chars.</doc>
28379         <return-value transfer-ownership="none">
28380           <type name="none" c:type="void"/>
28381         </return-value>
28382         <parameters>
28383           <parameter name="n_chars" transfer-ownership="none">
28384             <doc xml:whitespace="preserve">the new desired width, in characters.</doc>
28385             <type name="gint" c:type="gint"/>
28386           </parameter>
28387         </parameters>
28388       </method>
28389       <property name="angle"
28390                 version="2.6"
28391                 writable="1"
28392                 transfer-ownership="none">
28393         <doc xml:whitespace="preserve">The angle that the baseline of the label makes with the horizontal,
28394 in degrees, measured counterclockwise. An angle of 90 reads from
28395 from bottom to top, an angle of 270, from top to bottom. Ignored
28396 if the label is selectable, wrapped, or ellipsized.</doc>
28397         <type name="gdouble"/>
28398       </property>
28399       <property name="attributes" writable="1" transfer-ownership="none">
28400         <type name="Pango.AttrList"/>
28401       </property>
28402       <property name="cursor-position" transfer-ownership="none">
28403         <type name="gint"/>
28404       </property>
28405       <property name="ellipsize"
28406                 version="2.6"
28407                 writable="1"
28408                 transfer-ownership="none">
28409         <doc xml:whitespace="preserve">The preferred place to ellipsize the string, if the label does 
28410 not have enough room to display the entire string, specified as a 
28411 #PangoEllisizeMode. 
28412 Note that setting this property to a value other than 
28413 %PANGO_ELLIPSIZE_NONE has the side-effect that the label requests 
28414 only enough space to display the ellipsis "...". In particular, this 
28415 means that ellipsizing labels do not work well in notebook tabs, unless 
28416 the tab's #GtkNotebook:tab-expand property is set to %TRUE. Other ways
28417 to set a label's width are gtk_widget_set_size_request() and
28418 gtk_label_set_width_chars().</doc>
28419         <type name="Pango.EllipsizeMode"/>
28420       </property>
28421       <property name="justify" writable="1" transfer-ownership="none">
28422         <type name="Justification"/>
28423       </property>
28424       <property name="label" writable="1" transfer-ownership="none">
28425         <type name="utf8"/>
28426       </property>
28427       <property name="max-width-chars"
28428                 version="2.6"
28429                 writable="1"
28430                 transfer-ownership="none">
28431         <doc xml:whitespace="preserve">The desired maximum width of the label, in characters. If this property 
28432 is set to -1, the width will be calculated automatically.
28433 See the section on &lt;link linkend="label-text-layout"&gt;text layout&lt;/link&gt;
28434 for details of how #GtkLabel:width-chars and #GtkLabel:max-width-chars
28435 determine the width of ellipsized and wrapped labels.</doc>
28436         <type name="gint"/>
28437       </property>
28438       <property name="mnemonic-keyval" transfer-ownership="none">
28439         <type name="guint"/>
28440       </property>
28441       <property name="mnemonic-widget" writable="1" transfer-ownership="none">
28442         <type name="Widget"/>
28443       </property>
28444       <property name="pattern"
28445                 readable="0"
28446                 writable="1"
28447                 transfer-ownership="none">
28448         <type name="utf8"/>
28449       </property>
28450       <property name="selectable" writable="1" transfer-ownership="none">
28451         <type name="gboolean"/>
28452       </property>
28453       <property name="selection-bound" transfer-ownership="none">
28454         <type name="gint"/>
28455       </property>
28456       <property name="single-line-mode"
28457                 version="2.6"
28458                 writable="1"
28459                 transfer-ownership="none">
28460         <doc xml:whitespace="preserve">Whether the label is in single line mode. In single line mode,
28461 the height of the label does not depend on the actual text, it
28462 is always set to ascent + descent of the font. This can be an
28463 advantage in situations where resizing the label because of text 
28464 changes would be distracting, e.g. in a statusbar.</doc>
28465         <type name="gboolean"/>
28466       </property>
28467       <property name="track-visited-links"
28468                 version="2.18"
28469                 writable="1"
28470                 transfer-ownership="none">
28471         <doc xml:whitespace="preserve">Set this property to %TRUE to make the label track which links
28472 have been clicked. It will then apply the ::visited-link-color
28473 color, instead of ::link-color.</doc>
28474         <type name="gboolean"/>
28475       </property>
28476       <property name="use-markup" writable="1" transfer-ownership="none">
28477         <type name="gboolean"/>
28478       </property>
28479       <property name="use-underline" writable="1" transfer-ownership="none">
28480         <type name="gboolean"/>
28481       </property>
28482       <property name="width-chars"
28483                 version="2.6"
28484                 writable="1"
28485                 transfer-ownership="none">
28486         <doc xml:whitespace="preserve">The desired width of the label, in characters. If this property is set to
28487 -1, the width will be calculated automatically.
28488 See the section on &lt;link linkend="label-text-layout"&gt;text layout&lt;/link&gt;
28489 for details of how #GtkLabel:width-chars and #GtkLabel:max-width-chars
28490 determine the width of ellipsized and wrapped labels.</doc>
28491         <type name="gint"/>
28492       </property>
28493       <property name="wrap" writable="1" transfer-ownership="none">
28494         <type name="gboolean"/>
28495       </property>
28496       <property name="wrap-mode"
28497                 version="2.10"
28498                 writable="1"
28499                 transfer-ownership="none">
28500         <doc xml:whitespace="preserve">If line wrapping is on (see the #GtkLabel:wrap property) this controls 
28501 how the line wrapping is done. The default is %PANGO_WRAP_WORD, which 
28502 means wrap on word boundaries.</doc>
28503         <type name="Pango.WrapMode"/>
28504       </property>
28505       <field name="misc">
28506         <type name="Misc" c:type="GtkMisc"/>
28507       </field>
28508       <field name="priv">
28509         <type name="LabelPrivate" c:type="GtkLabelPrivate*"/>
28510       </field>
28511       <glib:signal name="activate-current-link" version="2.18">
28512         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
28513 which gets emitted when the user activates a link in the label.
28514 Applications may also emit the signal with g_signal_emit_by_name()
28515 if they need to control activation of URIs programmatically.
28516 The default bindings for this signal are all forms of the Enter key.</doc>
28517         <return-value transfer-ownership="none">
28518           <type name="none"/>
28519         </return-value>
28520       </glib:signal>
28521       <glib:signal name="activate-link" version="2.18">
28522         <doc xml:whitespace="preserve">The signal which gets emitted to activate a URI.
28523 Applications may connect to it to override the default behaviour,
28524 which is to call gtk_show_uri().</doc>
28525         <return-value transfer-ownership="none">
28526           <doc xml:whitespace="preserve">%TRUE if the link has been activated</doc>
28527           <type name="gboolean"/>
28528         </return-value>
28529         <parameters>
28530           <parameter name="object" transfer-ownership="none">
28531             <doc xml:whitespace="preserve">the URI that is activated</doc>
28532             <type name="utf8"/>
28533           </parameter>
28534         </parameters>
28535       </glib:signal>
28536       <glib:signal name="copy-clipboard">
28537         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a
28538 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
28539 which gets emitted to copy the selection to the clipboard.
28540 The default binding for this signal is Ctrl-c.</doc>
28541         <return-value transfer-ownership="none">
28542           <type name="none"/>
28543         </return-value>
28544       </glib:signal>
28545       <glib:signal name="move-cursor">
28546         <doc xml:whitespace="preserve">The ::move-cursor signal is a
28547 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
28548 which gets emitted when the user initiates a cursor movement.
28549 If the cursor is not visible in @entry, this signal causes
28550 the viewport to be moved instead.
28551 Applications should not connect to it, but may emit it with
28552 g_signal_emit_by_name() if they need to control the cursor
28553 programmatically.
28554 The default bindings for this signal come in two variants,
28555 the variant with the Shift modifier extends the selection,
28556 the variant without the Shift modifer does not.
28557 There are too many key combinations to list them all here.
28558 &lt;itemizedlist&gt;
28559 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
28560 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
28561 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
28562 &lt;/itemizedlist&gt;</doc>
28563         <return-value transfer-ownership="none">
28564           <type name="none"/>
28565         </return-value>
28566         <parameters>
28567           <parameter name="object" transfer-ownership="none">
28568             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
28569             <type name="MovementStep"/>
28570           </parameter>
28571           <parameter name="p0" transfer-ownership="none">
28572             <doc xml:whitespace="preserve">the number of @step units to move</doc>
28573             <type name="gint"/>
28574           </parameter>
28575           <parameter name="p1" transfer-ownership="none">
28576             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
28577             <type name="gboolean"/>
28578           </parameter>
28579         </parameters>
28580       </glib:signal>
28581       <glib:signal name="populate-popup">
28582         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the
28583 context menu of the label. Note that only selectable labels
28584 have context menus.
28585 If you need to add items to the context menu, connect
28586 to this signal and append your menuitems to the @menu.</doc>
28587         <return-value transfer-ownership="none">
28588           <type name="none"/>
28589         </return-value>
28590         <parameters>
28591           <parameter name="object" transfer-ownership="none">
28592             <doc xml:whitespace="preserve">the menu that is being populated</doc>
28593             <type name="Menu"/>
28594           </parameter>
28595         </parameters>
28596       </glib:signal>
28597     </class>
28598     <record name="LabelClass"
28599             c:type="GtkLabelClass"
28600             glib:is-gtype-struct-for="Label">
28601       <field name="parent_class">
28602         <type name="MiscClass" c:type="GtkMiscClass"/>
28603       </field>
28604       <field name="move_cursor">
28605         <callback name="move_cursor">
28606           <return-value transfer-ownership="none">
28607             <type name="none" c:type="void"/>
28608           </return-value>
28609           <parameters>
28610             <parameter name="label" transfer-ownership="none">
28611               <type name="Label" c:type="GtkLabel*"/>
28612             </parameter>
28613             <parameter name="step" transfer-ownership="none">
28614               <type name="MovementStep" c:type="GtkMovementStep"/>
28615             </parameter>
28616             <parameter name="count" transfer-ownership="none">
28617               <type name="gint" c:type="gint"/>
28618             </parameter>
28619             <parameter name="extend_selection" transfer-ownership="none">
28620               <type name="gboolean" c:type="gboolean"/>
28621             </parameter>
28622           </parameters>
28623         </callback>
28624       </field>
28625       <field name="copy_clipboard">
28626         <callback name="copy_clipboard">
28627           <return-value transfer-ownership="none">
28628             <type name="none" c:type="void"/>
28629           </return-value>
28630           <parameters>
28631             <parameter name="label" transfer-ownership="none">
28632               <type name="Label" c:type="GtkLabel*"/>
28633             </parameter>
28634           </parameters>
28635         </callback>
28636       </field>
28637       <field name="populate_popup">
28638         <callback name="populate_popup">
28639           <return-value transfer-ownership="none">
28640             <type name="none" c:type="void"/>
28641           </return-value>
28642           <parameters>
28643             <parameter name="label" transfer-ownership="none">
28644               <type name="Label" c:type="GtkLabel*"/>
28645             </parameter>
28646             <parameter name="menu" transfer-ownership="none">
28647               <type name="Menu" c:type="GtkMenu*"/>
28648             </parameter>
28649           </parameters>
28650         </callback>
28651       </field>
28652       <field name="activate_link">
28653         <callback name="activate_link">
28654           <return-value transfer-ownership="none">
28655             <type name="gboolean" c:type="gboolean"/>
28656           </return-value>
28657           <parameters>
28658             <parameter name="label" transfer-ownership="none">
28659               <type name="Label" c:type="GtkLabel*"/>
28660             </parameter>
28661             <parameter name="uri" transfer-ownership="none">
28662               <type name="utf8" c:type="gchar*"/>
28663             </parameter>
28664           </parameters>
28665         </callback>
28666       </field>
28667       <field name="_gtk_reserved1" introspectable="0">
28668         <callback name="_gtk_reserved1">
28669           <return-value transfer-ownership="none">
28670             <type name="none" c:type="void"/>
28671           </return-value>
28672         </callback>
28673       </field>
28674       <field name="_gtk_reserved2" introspectable="0">
28675         <callback name="_gtk_reserved2">
28676           <return-value transfer-ownership="none">
28677             <type name="none" c:type="void"/>
28678           </return-value>
28679         </callback>
28680       </field>
28681       <field name="_gtk_reserved3" introspectable="0">
28682         <callback name="_gtk_reserved3">
28683           <return-value transfer-ownership="none">
28684             <type name="none" c:type="void"/>
28685           </return-value>
28686         </callback>
28687       </field>
28688     </record>
28689     <record name="LabelPrivate" c:type="GtkLabelPrivate" disguised="1">
28690     </record>
28691     <record name="LabelSelectionInfo"
28692             c:type="GtkLabelSelectionInfo"
28693             disguised="1">
28694     </record>
28695     <class name="Layout"
28696            c:symbol-prefix="layout"
28697            c:type="GtkLayout"
28698            parent="Container"
28699            glib:type-name="GtkLayout"
28700            glib:get-type="gtk_layout_get_type"
28701            glib:type-struct="LayoutClass">
28702       <implements name="Atk.ImplementorIface"/>
28703       <implements name="Buildable"/>
28704       <implements name="SizeRequest"/>
28705       <constructor name="new" c:identifier="gtk_layout_new">
28706         <doc xml:whitespace="preserve">Creates a new #GtkLayout. Unless you have a specific adjustment
28707 you'd like the layout to use for scrolling, pass %NULL for</doc>
28708         <return-value transfer-ownership="none">
28709           <doc xml:whitespace="preserve">a new #GtkLayout</doc>
28710           <type name="Widget" c:type="GtkWidget*"/>
28711         </return-value>
28712         <parameters>
28713           <parameter name="hadjustment"
28714                      transfer-ownership="none"
28715                      allow-none="1">
28716             <doc xml:whitespace="preserve">horizontal scroll adjustment, or %NULL</doc>
28717             <type name="Adjustment" c:type="GtkAdjustment*"/>
28718           </parameter>
28719           <parameter name="vadjustment"
28720                      transfer-ownership="none"
28721                      allow-none="1">
28722             <doc xml:whitespace="preserve">vertical scroll adjustment, or %NULL</doc>
28723             <type name="Adjustment" c:type="GtkAdjustment*"/>
28724           </parameter>
28725         </parameters>
28726       </constructor>
28727       <method name="get_bin_window"
28728               c:identifier="gtk_layout_get_bin_window"
28729               version="2.14">
28730         <doc xml:whitespace="preserve">Retrieve the bin window of the layout used for drawing operations.</doc>
28731         <return-value transfer-ownership="none">
28732           <doc xml:whitespace="preserve">a #GdkWindow</doc>
28733           <type name="Gdk.Window" c:type="GdkWindow*"/>
28734         </return-value>
28735       </method>
28736       <method name="get_hadjustment" c:identifier="gtk_layout_get_hadjustment">
28737         <doc xml:whitespace="preserve">This function should only be called after the layout has been
28738 placed in a #GtkScrolledWindow or otherwise configured for
28739 scrolling. It returns the #GtkAdjustment used for communication
28740 between the horizontal scrollbar and @layout.
28741 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
28742         <return-value transfer-ownership="none">
28743           <doc xml:whitespace="preserve">horizontal scroll adjustment</doc>
28744           <type name="Adjustment" c:type="GtkAdjustment*"/>
28745         </return-value>
28746       </method>
28747       <method name="get_size" c:identifier="gtk_layout_get_size">
28748         <doc xml:whitespace="preserve">Gets the size that has been set on the layout, and that determines
28749 the total extents of the layout's scrollbar area. See
28750 gtk_layout_set_size ().</doc>
28751         <return-value transfer-ownership="none">
28752           <type name="none" c:type="void"/>
28753         </return-value>
28754         <parameters>
28755           <parameter name="width" transfer-ownership="none" allow-none="1">
28756             <doc xml:whitespace="preserve">location to store the width set on @layout, or %NULL</doc>
28757             <type name="guint" c:type="guint*"/>
28758           </parameter>
28759           <parameter name="height" transfer-ownership="none" allow-none="1">
28760             <doc xml:whitespace="preserve">location to store the height set on @layout, or %NULL</doc>
28761             <type name="guint" c:type="guint*"/>
28762           </parameter>
28763         </parameters>
28764       </method>
28765       <method name="get_vadjustment" c:identifier="gtk_layout_get_vadjustment">
28766         <doc xml:whitespace="preserve">This function should only be called after the layout has been
28767 placed in a #GtkScrolledWindow or otherwise configured for
28768 scrolling. It returns the #GtkAdjustment used for communication
28769 between the vertical scrollbar and @layout.
28770 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
28771         <return-value transfer-ownership="none">
28772           <doc xml:whitespace="preserve">vertical scroll adjustment</doc>
28773           <type name="Adjustment" c:type="GtkAdjustment*"/>
28774         </return-value>
28775       </method>
28776       <method name="move" c:identifier="gtk_layout_move">
28777         <doc xml:whitespace="preserve">Moves a current child of @layout to a new position.</doc>
28778         <return-value transfer-ownership="none">
28779           <type name="none" c:type="void"/>
28780         </return-value>
28781         <parameters>
28782           <parameter name="child_widget" transfer-ownership="none">
28783             <doc xml:whitespace="preserve">a current child of @layout</doc>
28784             <type name="Widget" c:type="GtkWidget*"/>
28785           </parameter>
28786           <parameter name="x" transfer-ownership="none">
28787             <doc xml:whitespace="preserve">X position to move to</doc>
28788             <type name="gint" c:type="gint"/>
28789           </parameter>
28790           <parameter name="y" transfer-ownership="none">
28791             <doc xml:whitespace="preserve">Y position to move to</doc>
28792             <type name="gint" c:type="gint"/>
28793           </parameter>
28794         </parameters>
28795       </method>
28796       <method name="put" c:identifier="gtk_layout_put">
28797         <doc xml:whitespace="preserve">Adds @child_widget to @layout, at position (@x,@y).</doc>
28798         <return-value transfer-ownership="none">
28799           <type name="none" c:type="void"/>
28800         </return-value>
28801         <parameters>
28802           <parameter name="child_widget" transfer-ownership="none">
28803             <doc xml:whitespace="preserve">child widget</doc>
28804             <type name="Widget" c:type="GtkWidget*"/>
28805           </parameter>
28806           <parameter name="x" transfer-ownership="none">
28807             <doc xml:whitespace="preserve">X position of child widget</doc>
28808             <type name="gint" c:type="gint"/>
28809           </parameter>
28810           <parameter name="y" transfer-ownership="none">
28811             <doc xml:whitespace="preserve">Y position of child widget</doc>
28812             <type name="gint" c:type="gint"/>
28813           </parameter>
28814         </parameters>
28815       </method>
28816       <method name="set_hadjustment" c:identifier="gtk_layout_set_hadjustment">
28817         <doc xml:whitespace="preserve">Sets the horizontal scroll adjustment for the layout.
28818 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
28819         <return-value transfer-ownership="none">
28820           <type name="none" c:type="void"/>
28821         </return-value>
28822         <parameters>
28823           <parameter name="adjustment"
28824                      transfer-ownership="none"
28825                      allow-none="1">
28826             <doc xml:whitespace="preserve">new scroll adjustment</doc>
28827             <type name="Adjustment" c:type="GtkAdjustment*"/>
28828           </parameter>
28829         </parameters>
28830       </method>
28831       <method name="set_size" c:identifier="gtk_layout_set_size">
28832         <doc xml:whitespace="preserve">Sets the size of the scrollable area of the layout.</doc>
28833         <return-value transfer-ownership="none">
28834           <type name="none" c:type="void"/>
28835         </return-value>
28836         <parameters>
28837           <parameter name="width" transfer-ownership="none">
28838             <doc xml:whitespace="preserve">width of entire scrollable area</doc>
28839             <type name="guint" c:type="guint"/>
28840           </parameter>
28841           <parameter name="height" transfer-ownership="none">
28842             <doc xml:whitespace="preserve">height of entire scrollable area</doc>
28843             <type name="guint" c:type="guint"/>
28844           </parameter>
28845         </parameters>
28846       </method>
28847       <method name="set_vadjustment" c:identifier="gtk_layout_set_vadjustment">
28848         <doc xml:whitespace="preserve">Sets the vertical scroll adjustment for the layout.
28849 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
28850         <return-value transfer-ownership="none">
28851           <type name="none" c:type="void"/>
28852         </return-value>
28853         <parameters>
28854           <parameter name="adjustment"
28855                      transfer-ownership="none"
28856                      allow-none="1">
28857             <doc xml:whitespace="preserve">new scroll adjustment</doc>
28858             <type name="Adjustment" c:type="GtkAdjustment*"/>
28859           </parameter>
28860         </parameters>
28861       </method>
28862       <property name="hadjustment" writable="1" transfer-ownership="none">
28863         <type name="Adjustment"/>
28864       </property>
28865       <property name="height" writable="1" transfer-ownership="none">
28866         <type name="guint"/>
28867       </property>
28868       <property name="vadjustment" writable="1" transfer-ownership="none">
28869         <type name="Adjustment"/>
28870       </property>
28871       <property name="width" writable="1" transfer-ownership="none">
28872         <type name="guint"/>
28873       </property>
28874       <field name="container">
28875         <type name="Container" c:type="GtkContainer"/>
28876       </field>
28877       <field name="priv" readable="0" private="1">
28878         <type name="LayoutPrivate" c:type="GtkLayoutPrivate*"/>
28879       </field>
28880       <glib:signal name="set-scroll-adjustments">
28881         <return-value transfer-ownership="none">
28882           <type name="none"/>
28883         </return-value>
28884         <parameters>
28885           <parameter name="object" transfer-ownership="none">
28886             <type name="Adjustment"/>
28887           </parameter>
28888           <parameter name="p0" transfer-ownership="none">
28889             <type name="Adjustment"/>
28890           </parameter>
28891         </parameters>
28892       </glib:signal>
28893     </class>
28894     <record name="LayoutClass"
28895             c:type="GtkLayoutClass"
28896             glib:is-gtype-struct-for="Layout">
28897       <field name="parent_class">
28898         <type name="ContainerClass" c:type="GtkContainerClass"/>
28899       </field>
28900       <field name="set_scroll_adjustments">
28901         <callback name="set_scroll_adjustments">
28902           <return-value transfer-ownership="none">
28903             <type name="none" c:type="void"/>
28904           </return-value>
28905           <parameters>
28906             <parameter name="layout" transfer-ownership="none">
28907               <type name="Layout" c:type="GtkLayout*"/>
28908             </parameter>
28909             <parameter name="hadjustment" transfer-ownership="none">
28910               <type name="Adjustment" c:type="GtkAdjustment*"/>
28911             </parameter>
28912             <parameter name="vadjustment" transfer-ownership="none">
28913               <type name="Adjustment" c:type="GtkAdjustment*"/>
28914             </parameter>
28915           </parameters>
28916         </callback>
28917       </field>
28918       <field name="_gtk_reserved1" introspectable="0">
28919         <callback name="_gtk_reserved1">
28920           <return-value transfer-ownership="none">
28921             <type name="none" c:type="void"/>
28922           </return-value>
28923         </callback>
28924       </field>
28925       <field name="_gtk_reserved2" introspectable="0">
28926         <callback name="_gtk_reserved2">
28927           <return-value transfer-ownership="none">
28928             <type name="none" c:type="void"/>
28929           </return-value>
28930         </callback>
28931       </field>
28932       <field name="_gtk_reserved3" introspectable="0">
28933         <callback name="_gtk_reserved3">
28934           <return-value transfer-ownership="none">
28935             <type name="none" c:type="void"/>
28936           </return-value>
28937         </callback>
28938       </field>
28939       <field name="_gtk_reserved4" introspectable="0">
28940         <callback name="_gtk_reserved4">
28941           <return-value transfer-ownership="none">
28942             <type name="none" c:type="void"/>
28943           </return-value>
28944         </callback>
28945       </field>
28946     </record>
28947     <record name="LayoutPrivate" c:type="GtkLayoutPrivate" disguised="1">
28948     </record>
28949     <enumeration name="License"
28950                  version="3.0"
28951                  glib:type-name="GtkLicense"
28952                  glib:get-type="gtk_license_get_type"
28953                  c:type="GtkLicense">
28954       <doc xml:whitespace="preserve">The type of license for an application.
28955 This enumeration can be expanded at later date.</doc>
28956       <member name="unknown"
28957               value="0"
28958               c:identifier="GTK_LICENSE_UNKNOWN"
28959               glib:nick="unknown"/>
28960       <member name="custom"
28961               value="1"
28962               c:identifier="GTK_LICENSE_CUSTOM"
28963               glib:nick="custom"/>
28964       <member name="gpl_2_0"
28965               value="2"
28966               c:identifier="GTK_LICENSE_GPL_2_0"
28967               glib:nick="gpl-2-0"/>
28968       <member name="gpl_3_0"
28969               value="3"
28970               c:identifier="GTK_LICENSE_GPL_3_0"
28971               glib:nick="gpl-3-0"/>
28972       <member name="lgpl_2_1"
28973               value="4"
28974               c:identifier="GTK_LICENSE_LGPL_2_1"
28975               glib:nick="lgpl-2-1"/>
28976       <member name="lgpl_3_0"
28977               value="5"
28978               c:identifier="GTK_LICENSE_LGPL_3_0"
28979               glib:nick="lgpl-3-0"/>
28980       <member name="bsd"
28981               value="6"
28982               c:identifier="GTK_LICENSE_BSD"
28983               glib:nick="bsd"/>
28984       <member name="mit_x11"
28985               value="7"
28986               c:identifier="GTK_LICENSE_MIT_X11"
28987               glib:nick="mit-x11"/>
28988       <member name="artistic"
28989               value="8"
28990               c:identifier="GTK_LICENSE_ARTISTIC"
28991               glib:nick="artistic"/>
28992     </enumeration>
28993     <class name="LinkButton"
28994            c:symbol-prefix="link_button"
28995            c:type="GtkLinkButton"
28996            parent="Button"
28997            glib:type-name="GtkLinkButton"
28998            glib:get-type="gtk_link_button_get_type"
28999            glib:type-struct="LinkButtonClass">
29000       <implements name="Atk.ImplementorIface"/>
29001       <implements name="Activatable"/>
29002       <implements name="Buildable"/>
29003       <implements name="SizeRequest"/>
29004       <constructor name="new"
29005                    c:identifier="gtk_link_button_new"
29006                    version="2.10">
29007         <doc xml:whitespace="preserve">Creates a new #GtkLinkButton with the URI as its text.</doc>
29008         <return-value transfer-ownership="none">
29009           <doc xml:whitespace="preserve">a new link button widget.</doc>
29010           <type name="Widget" c:type="GtkWidget*"/>
29011         </return-value>
29012         <parameters>
29013           <parameter name="uri" transfer-ownership="none">
29014             <doc xml:whitespace="preserve">a valid URI</doc>
29015             <type name="utf8" c:type="gchar*"/>
29016           </parameter>
29017         </parameters>
29018       </constructor>
29019       <constructor name="new_with_label"
29020                    c:identifier="gtk_link_button_new_with_label"
29021                    version="2.10">
29022         <doc xml:whitespace="preserve">Creates a new #GtkLinkButton containing a label.</doc>
29023         <return-value transfer-ownership="none">
29024           <doc xml:whitespace="preserve">a new link button widget.</doc>
29025           <type name="Widget" c:type="GtkWidget*"/>
29026         </return-value>
29027         <parameters>
29028           <parameter name="uri" transfer-ownership="none">
29029             <doc xml:whitespace="preserve">a valid URI</doc>
29030             <type name="utf8" c:type="gchar*"/>
29031           </parameter>
29032           <parameter name="label" transfer-ownership="none" allow-none="1">
29033             <doc xml:whitespace="preserve">the text of the button</doc>
29034             <type name="utf8" c:type="gchar*"/>
29035           </parameter>
29036         </parameters>
29037       </constructor>
29038       <method name="get_uri"
29039               c:identifier="gtk_link_button_get_uri"
29040               version="2.10">
29041         <doc xml:whitespace="preserve">Retrieves the URI set using gtk_link_button_set_uri().
29042 and should not be modified or freed.</doc>
29043         <return-value transfer-ownership="none">
29044           <doc xml:whitespace="preserve">a valid URI.  The returned string is owned by the link button</doc>
29045           <type name="utf8" c:type="gchar*"/>
29046         </return-value>
29047       </method>
29048       <method name="get_visited"
29049               c:identifier="gtk_link_button_get_visited"
29050               version="2.14">
29051         <doc xml:whitespace="preserve">Retrieves the 'visited' state of the URI where the #GtkLinkButton
29052 points. The button becomes visited when it is clicked. If the URI
29053 is changed on the button, the 'visited' state is unset again.
29054 The state may also be changed using gtk_link_button_set_visited().</doc>
29055         <return-value transfer-ownership="none">
29056           <doc xml:whitespace="preserve">%TRUE if the link has been visited, %FALSE otherwise</doc>
29057           <type name="gboolean" c:type="gboolean"/>
29058         </return-value>
29059       </method>
29060       <method name="set_uri"
29061               c:identifier="gtk_link_button_set_uri"
29062               version="2.10">
29063         <doc xml:whitespace="preserve">Sets @uri as the URI where the #GtkLinkButton points. As a side-effect
29064 this unsets the 'visited' state of the button.</doc>
29065         <return-value transfer-ownership="none">
29066           <type name="none" c:type="void"/>
29067         </return-value>
29068         <parameters>
29069           <parameter name="uri" transfer-ownership="none">
29070             <doc xml:whitespace="preserve">a valid URI</doc>
29071             <type name="utf8" c:type="gchar*"/>
29072           </parameter>
29073         </parameters>
29074       </method>
29075       <method name="set_visited"
29076               c:identifier="gtk_link_button_set_visited"
29077               version="2.14">
29078         <doc xml:whitespace="preserve">Sets the 'visited' state of the URI where the #GtkLinkButton
29079 points.  See gtk_link_button_get_visited() for more details.</doc>
29080         <return-value transfer-ownership="none">
29081           <type name="none" c:type="void"/>
29082         </return-value>
29083         <parameters>
29084           <parameter name="visited" transfer-ownership="none">
29085             <doc xml:whitespace="preserve">the new 'visited' state</doc>
29086             <type name="gboolean" c:type="gboolean"/>
29087           </parameter>
29088         </parameters>
29089       </method>
29090       <property name="uri" writable="1" transfer-ownership="none">
29091         <type name="utf8"/>
29092       </property>
29093       <property name="visited" writable="1" transfer-ownership="none">
29094         <type name="gboolean"/>
29095       </property>
29096       <field name="parent_instance">
29097         <type name="Button" c:type="GtkButton"/>
29098       </field>
29099       <field name="priv">
29100         <type name="LinkButtonPrivate" c:type="GtkLinkButtonPrivate*"/>
29101       </field>
29102     </class>
29103     <record name="LinkButtonClass"
29104             c:type="GtkLinkButtonClass"
29105             glib:is-gtype-struct-for="LinkButton">
29106       <field name="parent_class">
29107         <type name="ButtonClass" c:type="GtkButtonClass"/>
29108       </field>
29109       <field name="_gtk_padding1" introspectable="0">
29110         <callback name="_gtk_padding1">
29111           <return-value transfer-ownership="none">
29112             <type name="none" c:type="void"/>
29113           </return-value>
29114         </callback>
29115       </field>
29116       <field name="_gtk_padding2" introspectable="0">
29117         <callback name="_gtk_padding2">
29118           <return-value transfer-ownership="none">
29119             <type name="none" c:type="void"/>
29120           </return-value>
29121         </callback>
29122       </field>
29123       <field name="_gtk_padding3" introspectable="0">
29124         <callback name="_gtk_padding3">
29125           <return-value transfer-ownership="none">
29126             <type name="none" c:type="void"/>
29127           </return-value>
29128         </callback>
29129       </field>
29130       <field name="_gtk_padding4" introspectable="0">
29131         <callback name="_gtk_padding4">
29132           <return-value transfer-ownership="none">
29133             <type name="none" c:type="void"/>
29134           </return-value>
29135         </callback>
29136       </field>
29137     </record>
29138     <record name="LinkButtonPrivate"
29139             c:type="GtkLinkButtonPrivate"
29140             disguised="1">
29141     </record>
29142     <class name="ListStore"
29143            c:symbol-prefix="list_store"
29144            c:type="GtkListStore"
29145            parent="GObject.Object"
29146            glib:type-name="GtkListStore"
29147            glib:get-type="gtk_list_store_get_type"
29148            glib:type-struct="ListStoreClass">
29149       <implements name="Buildable"/>
29150       <implements name="TreeDragDest"/>
29151       <implements name="TreeDragSource"/>
29152       <implements name="TreeModel"/>
29153       <implements name="TreeSortable"/>
29154       <constructor name="new"
29155                    c:identifier="gtk_list_store_new"
29156                    introspectable="0">
29157         <doc xml:whitespace="preserve">Creates a new list store as with @n_columns columns each of the types passed
29158 in.  Note that only types derived from standard GObject fundamental types 
29159 are supported. 
29160 As an example, &lt;literal&gt;gtk_tree_store_new (3, G_TYPE_INT, G_TYPE_STRING,
29161 GDK_TYPE_PIXBUF);&lt;/literal&gt; will create a new #GtkListStore with three columns, of type
29162 int, string and #GdkPixbuf respectively.</doc>
29163         <return-value transfer-ownership="full">
29164           <doc xml:whitespace="preserve">a new #GtkListStore</doc>
29165           <type name="ListStore" c:type="GtkListStore*"/>
29166         </return-value>
29167         <parameters>
29168           <parameter name="n_columns" transfer-ownership="none">
29169             <doc xml:whitespace="preserve">number of columns in the list store</doc>
29170             <type name="gint" c:type="gint"/>
29171           </parameter>
29172           <parameter transfer-ownership="none">
29173             <varargs>
29174             </varargs>
29175           </parameter>
29176         </parameters>
29177       </constructor>
29178       <function name="newv" c:identifier="gtk_list_store_newv">
29179         <doc xml:whitespace="preserve">Non-vararg creation function.  Used primarily by language bindings.</doc>
29180         <return-value transfer-ownership="none">
29181           <doc xml:whitespace="preserve">a new #GtkListStore</doc>
29182           <type name="ListStore" c:type="GtkListStore*"/>
29183         </return-value>
29184         <parameters>
29185           <parameter name="n_columns" transfer-ownership="none">
29186             <doc xml:whitespace="preserve">number of columns in the list store</doc>
29187             <type name="gint" c:type="gint"/>
29188           </parameter>
29189           <parameter name="types" transfer-ownership="none">
29190             <doc xml:whitespace="preserve">an array of #GType types for the columns, from first to last</doc>
29191             <array length="0" c:type="GType*">
29192               <type name="GType"/>
29193             </array>
29194           </parameter>
29195         </parameters>
29196       </function>
29197       <method name="append" c:identifier="gtk_list_store_append">
29198         <doc xml:whitespace="preserve">Appends a new row to @list_store.  @iter will be changed to point to this new
29199 row.  The row will be empty after this function is called.  To fill in
29200 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
29201         <return-value transfer-ownership="none">
29202           <type name="none" c:type="void"/>
29203         </return-value>
29204         <parameters>
29205           <parameter name="iter"
29206                      direction="out"
29207                      caller-allocates="1"
29208                      transfer-ownership="none">
29209             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the appended row</doc>
29210             <type name="TreeIter" c:type="GtkTreeIter*"/>
29211           </parameter>
29212         </parameters>
29213       </method>
29214       <method name="clear" c:identifier="gtk_list_store_clear">
29215         <doc xml:whitespace="preserve">Removes all rows from the list store.</doc>
29216         <return-value transfer-ownership="none">
29217           <type name="none" c:type="void"/>
29218         </return-value>
29219       </method>
29220       <method name="insert" c:identifier="gtk_list_store_insert">
29221         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this new
29222 row.  If @position is larger than the number of rows on the list, then the
29223 new row will be appended to the list. The row will be empty after this
29224 function is called.  To fill in values, you need to call 
29225 gtk_list_store_set() or gtk_list_store_set_value().</doc>
29226         <return-value transfer-ownership="none">
29227           <type name="none" c:type="void"/>
29228         </return-value>
29229         <parameters>
29230           <parameter name="iter"
29231                      direction="out"
29232                      caller-allocates="1"
29233                      transfer-ownership="none">
29234             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
29235             <type name="TreeIter" c:type="GtkTreeIter*"/>
29236           </parameter>
29237           <parameter name="position" transfer-ownership="none">
29238             <doc xml:whitespace="preserve">position to insert the new row</doc>
29239             <type name="gint" c:type="gint"/>
29240           </parameter>
29241         </parameters>
29242       </method>
29243       <method name="insert_after" c:identifier="gtk_list_store_insert_after">
29244         <doc xml:whitespace="preserve">Inserts a new row after @sibling. If @sibling is %NULL, then the row will be
29245 prepended to the beginning of the list. @iter will be changed to point to
29246 this new row. The row will be empty after this function is called. To fill
29247 in values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
29248         <return-value transfer-ownership="none">
29249           <type name="none" c:type="void"/>
29250         </return-value>
29251         <parameters>
29252           <parameter name="iter"
29253                      direction="out"
29254                      caller-allocates="1"
29255                      transfer-ownership="none">
29256             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
29257             <type name="TreeIter" c:type="GtkTreeIter*"/>
29258           </parameter>
29259           <parameter name="sibling" transfer-ownership="none" allow-none="1">
29260             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
29261             <type name="TreeIter" c:type="GtkTreeIter*"/>
29262           </parameter>
29263         </parameters>
29264       </method>
29265       <method name="insert_before" c:identifier="gtk_list_store_insert_before">
29266         <doc xml:whitespace="preserve">Inserts a new row before @sibling. If @sibling is %NULL, then the row will 
29267 be appended to the end of the list. @iter will be changed to point to this 
29268 new row. The row will be empty after this function is called. To fill in 
29269 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
29270         <return-value transfer-ownership="none">
29271           <type name="none" c:type="void"/>
29272         </return-value>
29273         <parameters>
29274           <parameter name="iter"
29275                      direction="out"
29276                      caller-allocates="1"
29277                      transfer-ownership="none">
29278             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
29279             <type name="TreeIter" c:type="GtkTreeIter*"/>
29280           </parameter>
29281           <parameter name="sibling" transfer-ownership="none" allow-none="1">
29282             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
29283             <type name="TreeIter" c:type="GtkTreeIter*"/>
29284           </parameter>
29285         </parameters>
29286       </method>
29287       <method name="insert_with_values"
29288               c:identifier="gtk_list_store_insert_with_values"
29289               version="2.6"
29290               introspectable="0">
29291         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this new
29292 row.  If @position is larger than the number of rows on the list, then the
29293 new row will be appended to the list. The row will be filled with the 
29294 values given to this function. 
29295 Calling
29296 &lt;literal&gt;gtk_list_store_insert_with_values(list_store, iter, position...)&lt;/literal&gt; 
29297 has the same effect as calling 
29298 |[
29299 gtk_list_store_insert (list_store, iter, position);
29300 gtk_list_store_set (list_store, iter, ...);
29301 ]|
29302 with the difference that the former will only emit a row_inserted signal,
29303 while the latter will emit row_inserted, row_changed and, if the list store
29304 is sorted, rows_reordered. Since emitting the rows_reordered signal
29305 repeatedly can affect the performance of the program, 
29306 gtk_list_store_insert_with_values() should generally be preferred when
29307 inserting rows in a sorted list store.</doc>
29308         <return-value transfer-ownership="none">
29309           <type name="none" c:type="void"/>
29310         </return-value>
29311         <parameters>
29312           <parameter name="iter"
29313                      direction="out"
29314                      caller-allocates="1"
29315                      transfer-ownership="none"
29316                      allow-none="1">
29317             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row, or %NULL.</doc>
29318             <type name="TreeIter" c:type="GtkTreeIter*"/>
29319           </parameter>
29320           <parameter name="position" transfer-ownership="none">
29321             <doc xml:whitespace="preserve">position to insert the new row</doc>
29322             <type name="gint" c:type="gint"/>
29323           </parameter>
29324           <parameter transfer-ownership="none">
29325             <varargs>
29326             </varargs>
29327           </parameter>
29328         </parameters>
29329       </method>
29330       <method name="insert_with_valuesv"
29331               c:identifier="gtk_list_store_insert_with_valuesv"
29332               version="2.6">
29333         <doc xml:whitespace="preserve">A variant of gtk_list_store_insert_with_values() which
29334 takes the columns and values as two arrays, instead of
29335 varargs. This function is mainly intended for 
29336 language-bindings.</doc>
29337         <return-value transfer-ownership="none">
29338           <type name="none" c:type="void"/>
29339         </return-value>
29340         <parameters>
29341           <parameter name="iter"
29342                      direction="out"
29343                      caller-allocates="1"
29344                      transfer-ownership="none"
29345                      allow-none="1">
29346             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row, or %NULL.</doc>
29347             <type name="TreeIter" c:type="GtkTreeIter*"/>
29348           </parameter>
29349           <parameter name="position" transfer-ownership="none">
29350             <doc xml:whitespace="preserve">position to insert the new row</doc>
29351             <type name="gint" c:type="gint"/>
29352           </parameter>
29353           <parameter name="columns" transfer-ownership="none">
29354             <doc xml:whitespace="preserve">an array of column numbers</doc>
29355             <type name="gint" c:type="gint*"/>
29356           </parameter>
29357           <parameter name="values" transfer-ownership="none">
29358             <doc xml:whitespace="preserve">an array of GValues</doc>
29359             <type name="GObject.Value" c:type="GValue*"/>
29360           </parameter>
29361           <parameter name="n_values" transfer-ownership="none">
29362             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
29363             <type name="gint" c:type="gint"/>
29364           </parameter>
29365         </parameters>
29366       </method>
29367       <method name="iter_is_valid"
29368               c:identifier="gtk_list_store_iter_is_valid"
29369               version="2.2">
29370         <doc xml:whitespace="preserve">&lt;warning&gt;This function is slow. Only use it for debugging and/or testing
29371 purposes.&lt;/warning&gt;
29372 Checks if the given iter is a valid iter for this #GtkListStore.</doc>
29373         <return-value transfer-ownership="none">
29374           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
29375           <type name="gboolean" c:type="gboolean"/>
29376         </return-value>
29377         <parameters>
29378           <parameter name="iter" transfer-ownership="none">
29379             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
29380             <type name="TreeIter" c:type="GtkTreeIter*"/>
29381           </parameter>
29382         </parameters>
29383       </method>
29384       <method name="move_after"
29385               c:identifier="gtk_list_store_move_after"
29386               version="2.2">
29387         <doc xml:whitespace="preserve">Moves @iter in @store to the position after @position. Note that this
29388 function only works with unsorted stores. If @position is %NULL, @iter
29389 will be moved to the start of the list.</doc>
29390         <return-value transfer-ownership="none">
29391           <type name="none" c:type="void"/>
29392         </return-value>
29393         <parameters>
29394           <parameter name="iter" transfer-ownership="none">
29395             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
29396             <type name="TreeIter" c:type="GtkTreeIter*"/>
29397           </parameter>
29398           <parameter name="position" transfer-ownership="none" allow-none="1">
29399             <doc xml:whitespace="preserve">A #GtkTreeIter or %NULL.</doc>
29400             <type name="TreeIter" c:type="GtkTreeIter*"/>
29401           </parameter>
29402         </parameters>
29403       </method>
29404       <method name="move_before"
29405               c:identifier="gtk_list_store_move_before"
29406               version="2.2">
29407         <doc xml:whitespace="preserve">Moves @iter in @store to the position before @position. Note that this
29408 function only works with unsorted stores. If @position is %NULL, @iter
29409 will be moved to the end of the list.</doc>
29410         <return-value transfer-ownership="none">
29411           <type name="none" c:type="void"/>
29412         </return-value>
29413         <parameters>
29414           <parameter name="iter" transfer-ownership="none">
29415             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
29416             <type name="TreeIter" c:type="GtkTreeIter*"/>
29417           </parameter>
29418           <parameter name="position" transfer-ownership="none" allow-none="1">
29419             <doc xml:whitespace="preserve">A #GtkTreeIter, or %NULL.</doc>
29420             <type name="TreeIter" c:type="GtkTreeIter*"/>
29421           </parameter>
29422         </parameters>
29423       </method>
29424       <method name="prepend" c:identifier="gtk_list_store_prepend">
29425         <doc xml:whitespace="preserve">Prepends a new row to @list_store. @iter will be changed to point to this new
29426 row. The row will be empty after this function is called. To fill in
29427 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
29428         <return-value transfer-ownership="none">
29429           <type name="none" c:type="void"/>
29430         </return-value>
29431         <parameters>
29432           <parameter name="iter"
29433                      direction="out"
29434                      caller-allocates="1"
29435                      transfer-ownership="none">
29436             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the prepend row</doc>
29437             <type name="TreeIter" c:type="GtkTreeIter*"/>
29438           </parameter>
29439         </parameters>
29440       </method>
29441       <method name="remove" c:identifier="gtk_list_store_remove">
29442         <doc xml:whitespace="preserve">Removes the given row from the list store.  After being removed, 
29443 to the last row in @list_store.</doc>
29444         <return-value transfer-ownership="none">
29445           <doc xml:whitespace="preserve">%TRUE if @iter is valid, %FALSE if not.</doc>
29446           <type name="gboolean" c:type="gboolean"/>
29447         </return-value>
29448         <parameters>
29449           <parameter name="iter" transfer-ownership="none">
29450             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
29451             <type name="TreeIter" c:type="GtkTreeIter*"/>
29452           </parameter>
29453         </parameters>
29454       </method>
29455       <method name="reorder"
29456               c:identifier="gtk_list_store_reorder"
29457               version="2.2">
29458         <doc xml:whitespace="preserve">Reorders @store to follow the order indicated by @new_order. Note that
29459 this function only works with unsorted stores.</doc>
29460         <return-value transfer-ownership="none">
29461           <type name="none" c:type="void"/>
29462         </return-value>
29463         <parameters>
29464           <parameter name="new_order" transfer-ownership="none">
29465             <doc xml:whitespace="preserve">an array of integers mapping the new position of each child to its old position before the re-ordering, i.e. @new_order&lt;literal&gt;[newpos] = oldpos&lt;/literal&gt;.</doc>
29466             <type name="gint" c:type="gint*"/>
29467           </parameter>
29468         </parameters>
29469       </method>
29470       <method name="set" c:identifier="gtk_list_store_set" introspectable="0">
29471         <doc xml:whitespace="preserve">Sets the value of one or more cells in the row referenced by @iter.
29472 The variable argument list should contain integer column numbers,
29473 each column number followed by the value to be set.
29474 The list is terminated by a -1. For example, to set column 0 with type
29475 %G_TYPE_STRING to "Foo", you would write &lt;literal&gt;gtk_list_store_set (store, iter,
29476 0, "Foo", -1)&lt;/literal&gt;.
29477 The value will be referenced by the store if it is a %G_TYPE_OBJECT, and it
29478 will be copied if it is a %G_TYPE_STRING or %G_TYPE_BOXED.</doc>
29479         <return-value transfer-ownership="none">
29480           <type name="none" c:type="void"/>
29481         </return-value>
29482         <parameters>
29483           <parameter name="iter" transfer-ownership="none">
29484             <doc xml:whitespace="preserve">row iterator</doc>
29485             <type name="TreeIter" c:type="GtkTreeIter*"/>
29486           </parameter>
29487           <parameter transfer-ownership="none">
29488             <varargs>
29489             </varargs>
29490           </parameter>
29491         </parameters>
29492       </method>
29493       <method name="set_column_types"
29494               c:identifier="gtk_list_store_set_column_types">
29495         <doc xml:whitespace="preserve">This function is meant primarily for #GObjects that inherit from #GtkListStore,
29496 and should only be used when constructing a new #GtkListStore.  It will not
29497 function after a row has been added, or a method on the #GtkTreeModel
29498 interface is called.</doc>
29499         <return-value transfer-ownership="none">
29500           <type name="none" c:type="void"/>
29501         </return-value>
29502         <parameters>
29503           <parameter name="n_columns" transfer-ownership="none">
29504             <doc xml:whitespace="preserve">Number of columns for the list store</doc>
29505             <type name="gint" c:type="gint"/>
29506           </parameter>
29507           <parameter name="types" transfer-ownership="none">
29508             <doc xml:whitespace="preserve">An array length n of #GTypes</doc>
29509             <array length="0" c:type="GType*">
29510               <type name="GType"/>
29511             </array>
29512           </parameter>
29513         </parameters>
29514       </method>
29515       <method name="set_valist"
29516               c:identifier="gtk_list_store_set_valist"
29517               introspectable="0">
29518         <doc xml:whitespace="preserve">See gtk_list_store_set(); this version takes a va_list for use by language
29519 bindings.</doc>
29520         <return-value transfer-ownership="none">
29521           <type name="none" c:type="void"/>
29522         </return-value>
29523         <parameters>
29524           <parameter name="iter" transfer-ownership="none">
29525             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
29526             <type name="TreeIter" c:type="GtkTreeIter*"/>
29527           </parameter>
29528           <parameter name="var_args" transfer-ownership="none">
29529             <doc xml:whitespace="preserve">va_list of column/value pairs</doc>
29530             <type name="va_list" c:type="va_list"/>
29531           </parameter>
29532         </parameters>
29533       </method>
29534       <method name="set_value" c:identifier="gtk_list_store_set_value">
29535         <doc xml:whitespace="preserve">Sets the data in the cell specified by @iter and @column.
29536 The type of @value must be convertible to the type of the
29537 column.</doc>
29538         <return-value transfer-ownership="none">
29539           <type name="none" c:type="void"/>
29540         </return-value>
29541         <parameters>
29542           <parameter name="iter" transfer-ownership="none">
29543             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
29544             <type name="TreeIter" c:type="GtkTreeIter*"/>
29545           </parameter>
29546           <parameter name="column" transfer-ownership="none">
29547             <doc xml:whitespace="preserve">column number to modify</doc>
29548             <type name="gint" c:type="gint"/>
29549           </parameter>
29550           <parameter name="value" transfer-ownership="none">
29551             <doc xml:whitespace="preserve">new value for the cell</doc>
29552             <type name="GObject.Value" c:type="GValue*"/>
29553           </parameter>
29554         </parameters>
29555       </method>
29556       <method name="set_valuesv"
29557               c:identifier="gtk_list_store_set_valuesv"
29558               version="2.12">
29559         <doc xml:whitespace="preserve">A variant of gtk_list_store_set_valist() which
29560 takes the columns and values as two arrays, instead of
29561 varargs. This function is mainly intended for 
29562 language-bindings and in case the number of columns to
29563 change is not known until run-time.</doc>
29564         <return-value transfer-ownership="none">
29565           <type name="none" c:type="void"/>
29566         </return-value>
29567         <parameters>
29568           <parameter name="iter" transfer-ownership="none">
29569             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
29570             <type name="TreeIter" c:type="GtkTreeIter*"/>
29571           </parameter>
29572           <parameter name="columns" transfer-ownership="none">
29573             <doc xml:whitespace="preserve">an array of column numbers</doc>
29574             <array length="3" c:type="gint*">
29575               <type name="gint"/>
29576             </array>
29577           </parameter>
29578           <parameter name="values" transfer-ownership="none">
29579             <doc xml:whitespace="preserve">an array of GValues</doc>
29580             <array length="3" c:type="GValue*">
29581               <type name="GObject.Value"/>
29582             </array>
29583           </parameter>
29584           <parameter name="n_values" transfer-ownership="none">
29585             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
29586             <type name="gint" c:type="gint"/>
29587           </parameter>
29588         </parameters>
29589       </method>
29590       <method name="swap" c:identifier="gtk_list_store_swap" version="2.2">
29591         <doc xml:whitespace="preserve">Swaps @a and @b in @store. Note that this function only works with
29592 unsorted stores.</doc>
29593         <return-value transfer-ownership="none">
29594           <type name="none" c:type="void"/>
29595         </return-value>
29596         <parameters>
29597           <parameter name="a" transfer-ownership="none">
29598             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
29599             <type name="TreeIter" c:type="GtkTreeIter*"/>
29600           </parameter>
29601           <parameter name="b" transfer-ownership="none">
29602             <doc xml:whitespace="preserve">Another #GtkTreeIter.</doc>
29603             <type name="TreeIter" c:type="GtkTreeIter*"/>
29604           </parameter>
29605         </parameters>
29606       </method>
29607       <field name="parent">
29608         <type name="GObject.Object" c:type="GObject"/>
29609       </field>
29610       <field name="priv">
29611         <type name="ListStorePrivate" c:type="GtkListStorePrivate*"/>
29612       </field>
29613     </class>
29614     <record name="ListStoreClass"
29615             c:type="GtkListStoreClass"
29616             glib:is-gtype-struct-for="ListStore">
29617       <field name="parent_class">
29618         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
29619       </field>
29620       <field name="_gtk_reserved1" introspectable="0">
29621         <callback name="_gtk_reserved1">
29622           <return-value transfer-ownership="none">
29623             <type name="none" c:type="void"/>
29624           </return-value>
29625         </callback>
29626       </field>
29627       <field name="_gtk_reserved2" introspectable="0">
29628         <callback name="_gtk_reserved2">
29629           <return-value transfer-ownership="none">
29630             <type name="none" c:type="void"/>
29631           </return-value>
29632         </callback>
29633       </field>
29634       <field name="_gtk_reserved3" introspectable="0">
29635         <callback name="_gtk_reserved3">
29636           <return-value transfer-ownership="none">
29637             <type name="none" c:type="void"/>
29638           </return-value>
29639         </callback>
29640       </field>
29641       <field name="_gtk_reserved4" introspectable="0">
29642         <callback name="_gtk_reserved4">
29643           <return-value transfer-ownership="none">
29644             <type name="none" c:type="void"/>
29645           </return-value>
29646         </callback>
29647       </field>
29648     </record>
29649     <record name="ListStorePrivate" c:type="GtkListStorePrivate" disguised="1">
29650     </record>
29651     <constant name="MAJOR_VERSION" value="2">
29652       <type name="gint" c:type="gint"/>
29653     </constant>
29654     <constant name="MAX_COMPOSE_LEN" value="7">
29655       <type name="gint" c:type="gint"/>
29656     </constant>
29657     <constant name="MICRO_VERSION" value="8">
29658       <type name="gint" c:type="gint"/>
29659     </constant>
29660     <constant name="MINOR_VERSION" value="90">
29661       <type name="gint" c:type="gint"/>
29662     </constant>
29663     <class name="Menu"
29664            c:symbol-prefix="menu"
29665            c:type="GtkMenu"
29666            parent="MenuShell"
29667            glib:type-name="GtkMenu"
29668            glib:get-type="gtk_menu_get_type"
29669            glib:type-struct="MenuClass">
29670       <implements name="Atk.ImplementorIface"/>
29671       <implements name="Buildable"/>
29672       <implements name="SizeRequest"/>
29673       <constructor name="new" c:identifier="gtk_menu_new">
29674         <return-value transfer-ownership="none">
29675           <type name="Widget" c:type="GtkWidget*"/>
29676         </return-value>
29677       </constructor>
29678       <function name="get_for_attach_widget"
29679                 c:identifier="gtk_menu_get_for_attach_widget"
29680                 version="2.6">
29681         <doc xml:whitespace="preserve">Returns a list of the menus which are attached to this widget.
29682 This list is owned by GTK+ and must not be modified.</doc>
29683         <return-value transfer-ownership="none">
29684           <doc xml:whitespace="preserve">the list of menus attached to his widget.</doc>
29685           <type name="GLib.List" c:type="GList*">
29686             <type name="Widget"/>
29687           </type>
29688         </return-value>
29689         <parameters>
29690           <parameter name="widget" transfer-ownership="none">
29691             <doc xml:whitespace="preserve">a #GtkWidget</doc>
29692             <type name="Widget" c:type="GtkWidget*"/>
29693           </parameter>
29694         </parameters>
29695       </function>
29696       <method name="attach" c:identifier="gtk_menu_attach" version="2.4">
29697         <doc xml:whitespace="preserve">Adds a new #GtkMenuItem to a (table) menu. The number of 'cells' that
29698 an item will occupy is specified by @left_attach, @right_attach,
29699 rightmost, uppermost and lower column and row numbers of the table.
29700 (Columns and rows are indexed from zero).
29701 Note that this function is not related to gtk_menu_detach().</doc>
29702         <return-value transfer-ownership="none">
29703           <type name="none" c:type="void"/>
29704         </return-value>
29705         <parameters>
29706           <parameter name="child" transfer-ownership="none">
29707             <doc xml:whitespace="preserve">a #GtkMenuItem.</doc>
29708             <type name="Widget" c:type="GtkWidget*"/>
29709           </parameter>
29710           <parameter name="left_attach" transfer-ownership="none">
29711             <doc xml:whitespace="preserve">The column number to attach the left side of the item to.</doc>
29712             <type name="guint" c:type="guint"/>
29713           </parameter>
29714           <parameter name="right_attach" transfer-ownership="none">
29715             <doc xml:whitespace="preserve">The column number to attach the right side of the item to.</doc>
29716             <type name="guint" c:type="guint"/>
29717           </parameter>
29718           <parameter name="top_attach" transfer-ownership="none">
29719             <doc xml:whitespace="preserve">The row number to attach the top of the item to.</doc>
29720             <type name="guint" c:type="guint"/>
29721           </parameter>
29722           <parameter name="bottom_attach" transfer-ownership="none">
29723             <doc xml:whitespace="preserve">The row number to attach the bottom of the item to.</doc>
29724             <type name="guint" c:type="guint"/>
29725           </parameter>
29726         </parameters>
29727       </method>
29728       <method name="attach_to_widget"
29729               c:identifier="gtk_menu_attach_to_widget"
29730               introspectable="0">
29731         <return-value transfer-ownership="none">
29732           <type name="none" c:type="void"/>
29733         </return-value>
29734         <parameters>
29735           <parameter name="attach_widget" transfer-ownership="none">
29736             <type name="Widget" c:type="GtkWidget*"/>
29737           </parameter>
29738           <parameter name="detacher" transfer-ownership="none">
29739             <type name="MenuDetachFunc" c:type="GtkMenuDetachFunc"/>
29740           </parameter>
29741         </parameters>
29742       </method>
29743       <method name="detach" c:identifier="gtk_menu_detach">
29744         <return-value transfer-ownership="none">
29745           <type name="none" c:type="void"/>
29746         </return-value>
29747       </method>
29748       <method name="get_accel_group"
29749               c:identifier="gtk_menu_get_accel_group"
29750               introspectable="0">
29751         <return-value>
29752           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
29753         </return-value>
29754       </method>
29755       <method name="get_accel_path" c:identifier="gtk_menu_get_accel_path">
29756         <return-value transfer-ownership="none">
29757           <type name="utf8" c:type="gchar*"/>
29758         </return-value>
29759       </method>
29760       <method name="get_active"
29761               c:identifier="gtk_menu_get_active"
29762               introspectable="0">
29763         <return-value>
29764           <type name="Widget" c:type="GtkWidget*"/>
29765         </return-value>
29766       </method>
29767       <method name="get_attach_widget"
29768               c:identifier="gtk_menu_get_attach_widget"
29769               introspectable="0">
29770         <return-value>
29771           <type name="Widget" c:type="GtkWidget*"/>
29772         </return-value>
29773       </method>
29774       <method name="get_monitor"
29775               c:identifier="gtk_menu_get_monitor"
29776               version="2.14">
29777         <doc xml:whitespace="preserve">Retrieves the number of the monitor on which to show the menu.
29778 be popped up or -1, if no monitor has been set</doc>
29779         <return-value transfer-ownership="none">
29780           <doc xml:whitespace="preserve">the number of the monitor on which the menu should</doc>
29781           <type name="gint" c:type="gint"/>
29782         </return-value>
29783       </method>
29784       <method name="get_reserve_toggle_size"
29785               c:identifier="gtk_menu_get_reserve_toggle_size"
29786               version="2.18">
29787         <doc xml:whitespace="preserve">Returns whether the menu reserves space for toggles and
29788 icons, regardless of their actual presence.</doc>
29789         <return-value transfer-ownership="none">
29790           <doc xml:whitespace="preserve">Whether the menu reserves toggle space</doc>
29791           <type name="gboolean" c:type="gboolean"/>
29792         </return-value>
29793       </method>
29794       <method name="get_tearoff_state"
29795               c:identifier="gtk_menu_get_tearoff_state">
29796         <doc xml:whitespace="preserve">Returns whether the menu is torn off. See
29797 gtk_menu_set_tearoff_state ().</doc>
29798         <return-value transfer-ownership="none">
29799           <doc xml:whitespace="preserve">%TRUE if the menu is currently torn off.</doc>
29800           <type name="gboolean" c:type="gboolean"/>
29801         </return-value>
29802       </method>
29803       <method name="get_title" c:identifier="gtk_menu_get_title">
29804         <doc xml:whitespace="preserve">Returns the title of the menu. See gtk_menu_set_title().
29805 title set on it. This string is owned by the widget and should
29806 not be modified or freed.</doc>
29807         <return-value transfer-ownership="none">
29808           <doc xml:whitespace="preserve">the title of the menu, or %NULL if the menu has no</doc>
29809           <type name="utf8" c:type="gchar*"/>
29810         </return-value>
29811       </method>
29812       <method name="popdown" c:identifier="gtk_menu_popdown">
29813         <return-value transfer-ownership="none">
29814           <type name="none" c:type="void"/>
29815         </return-value>
29816       </method>
29817       <method name="popup" c:identifier="gtk_menu_popup" introspectable="0">
29818         <doc xml:whitespace="preserve">Displays a menu and makes it available for selection.  Applications can use
29819 this function to display context-sensitive menus, and will typically supply
29820 %NULL for the @parent_menu_shell, @parent_menu_item, @func and @data 
29821 parameters. The default menu positioning function will position the menu
29822 at the current mouse cursor position.
29823 The @button parameter should be the mouse button pressed to initiate
29824 the menu popup. If the menu popup was initiated by something other than
29825 a mouse button press, such as a mouse button release or a keypress,
29826 The @activate_time parameter is used to conflict-resolve initiation of
29827 concurrent requests for mouse/keyboard grab requests. To function
29828 properly, this needs to be the time stamp of the user event (such as
29829 a mouse click or key press) that caused the initiation of the popup.
29830 Only if no such event is available, gtk_get_current_event_time() can
29831 be used instead.</doc>
29832         <return-value transfer-ownership="none">
29833           <type name="none" c:type="void"/>
29834         </return-value>
29835         <parameters>
29836           <parameter name="parent_menu_shell"
29837                      transfer-ownership="none"
29838                      allow-none="1">
29839             <doc xml:whitespace="preserve">the menu shell containing the triggering menu item, or %NULL</doc>
29840             <type name="Widget" c:type="GtkWidget*"/>
29841           </parameter>
29842           <parameter name="parent_menu_item"
29843                      transfer-ownership="none"
29844                      allow-none="1">
29845             <doc xml:whitespace="preserve">the menu item whose activation triggered the popup, or %NULL</doc>
29846             <type name="Widget" c:type="GtkWidget*"/>
29847           </parameter>
29848           <parameter name="func"
29849                      transfer-ownership="none"
29850                      allow-none="1"
29851                      closure="3">
29852             <doc xml:whitespace="preserve">a user supplied function used to position the menu, or %NULL</doc>
29853             <type name="MenuPositionFunc" c:type="GtkMenuPositionFunc"/>
29854           </parameter>
29855           <parameter name="data" transfer-ownership="none" allow-none="1">
29856             <doc xml:whitespace="preserve">user supplied data to be passed to @func.</doc>
29857             <type name="gpointer" c:type="gpointer"/>
29858           </parameter>
29859           <parameter name="button" transfer-ownership="none">
29860             <doc xml:whitespace="preserve">the mouse button which was pressed to initiate the event.</doc>
29861             <type name="guint" c:type="guint"/>
29862           </parameter>
29863           <parameter name="activate_time" transfer-ownership="none">
29864             <doc xml:whitespace="preserve">the time at which the activation event occurred.</doc>
29865             <type name="guint32" c:type="guint32"/>
29866           </parameter>
29867         </parameters>
29868       </method>
29869       <method name="popup_for_device"
29870               c:identifier="gtk_menu_popup_for_device"
29871               version="3.0">
29872         <doc xml:whitespace="preserve">Displays a menu and makes it available for selection.
29873 Applications can use this function to display context-sensitive menus,
29874 and will typically supply %NULL for the @parent_menu_shell,
29875 menu positioning function will position the menu at the current position
29876 of @device (or its corresponding pointer).
29877 The @button parameter should be the mouse button pressed to initiate
29878 the menu popup. If the menu popup was initiated by something other than
29879 a mouse button press, such as a mouse button release or a keypress,
29880 The @activate_time parameter is used to conflict-resolve initiation of
29881 concurrent requests for mouse/keyboard grab requests. To function
29882 properly, this needs to be the time stamp of the user event (such as
29883 a mouse click or key press) that caused the initiation of the popup.
29884 Only if no such event is available, gtk_get_current_event_time() can
29885 be used instead.</doc>
29886         <return-value transfer-ownership="none">
29887           <type name="none" c:type="void"/>
29888         </return-value>
29889         <parameters>
29890           <parameter name="device" transfer-ownership="none" allow-none="1">
29891             <doc xml:whitespace="preserve">a #GdkDevice</doc>
29892             <type name="Gdk.Device" c:type="GdkDevice*"/>
29893           </parameter>
29894           <parameter name="parent_menu_shell"
29895                      transfer-ownership="none"
29896                      allow-none="1">
29897             <doc xml:whitespace="preserve">the menu shell containing the triggering menu item, or %NULL</doc>
29898             <type name="Widget" c:type="GtkWidget*"/>
29899           </parameter>
29900           <parameter name="parent_menu_item"
29901                      transfer-ownership="none"
29902                      allow-none="1">
29903             <doc xml:whitespace="preserve">the menu item whose activation triggered the popup, or %NULL</doc>
29904             <type name="Widget" c:type="GtkWidget*"/>
29905           </parameter>
29906           <parameter name="func"
29907                      transfer-ownership="none"
29908                      allow-none="1"
29909                      scope="notified"
29910                      closure="4"
29911                      destroy="5">
29912             <doc xml:whitespace="preserve">a user supplied function used to position the menu, or %NULL</doc>
29913             <type name="MenuPositionFunc" c:type="GtkMenuPositionFunc"/>
29914           </parameter>
29915           <parameter name="data" transfer-ownership="none" allow-none="1">
29916             <doc xml:whitespace="preserve">user supplied data to be passed to @func</doc>
29917             <type name="gpointer" c:type="gpointer"/>
29918           </parameter>
29919           <parameter name="destroy"
29920                      transfer-ownership="none"
29921                      allow-none="1"
29922                      scope="async">
29923             <doc xml:whitespace="preserve">destroy notify for @data</doc>
29924             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
29925           </parameter>
29926           <parameter name="button" transfer-ownership="none">
29927             <doc xml:whitespace="preserve">the mouse button which was pressed to initiate the event</doc>
29928             <type name="guint" c:type="guint"/>
29929           </parameter>
29930           <parameter name="activate_time" transfer-ownership="none">
29931             <doc xml:whitespace="preserve">the time at which the activation event occurred</doc>
29932             <type name="guint32" c:type="guint32"/>
29933           </parameter>
29934         </parameters>
29935       </method>
29936       <method name="reorder_child" c:identifier="gtk_menu_reorder_child">
29937         <return-value transfer-ownership="none">
29938           <type name="none" c:type="void"/>
29939         </return-value>
29940         <parameters>
29941           <parameter name="child" transfer-ownership="none">
29942             <type name="Widget" c:type="GtkWidget*"/>
29943           </parameter>
29944           <parameter name="position" transfer-ownership="none">
29945             <type name="gint" c:type="gint"/>
29946           </parameter>
29947         </parameters>
29948       </method>
29949       <method name="reposition" c:identifier="gtk_menu_reposition">
29950         <return-value transfer-ownership="none">
29951           <type name="none" c:type="void"/>
29952         </return-value>
29953       </method>
29954       <method name="set_accel_group" c:identifier="gtk_menu_set_accel_group">
29955         <return-value transfer-ownership="none">
29956           <type name="none" c:type="void"/>
29957         </return-value>
29958         <parameters>
29959           <parameter name="accel_group"
29960                      transfer-ownership="none"
29961                      allow-none="1">
29962             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
29963           </parameter>
29964         </parameters>
29965       </method>
29966       <method name="set_accel_path" c:identifier="gtk_menu_set_accel_path">
29967         <return-value transfer-ownership="none">
29968           <type name="none" c:type="void"/>
29969         </return-value>
29970         <parameters>
29971           <parameter name="accel_path" transfer-ownership="none">
29972             <type name="utf8" c:type="gchar*"/>
29973           </parameter>
29974         </parameters>
29975       </method>
29976       <method name="set_active" c:identifier="gtk_menu_set_active">
29977         <return-value transfer-ownership="none">
29978           <type name="none" c:type="void"/>
29979         </return-value>
29980         <parameters>
29981           <parameter name="index_" transfer-ownership="none">
29982             <type name="guint" c:type="guint"/>
29983           </parameter>
29984         </parameters>
29985       </method>
29986       <method name="set_monitor"
29987               c:identifier="gtk_menu_set_monitor"
29988               version="2.4">
29989         <doc xml:whitespace="preserve">Informs GTK+ on which monitor a menu should be popped up. 
29990 See gdk_screen_get_monitor_geometry().
29991 This function should be called from a #GtkMenuPositionFunc if the
29992 menu should not appear on the same monitor as the pointer. This 
29993 information can't be reliably inferred from the coordinates returned
29994 by a #GtkMenuPositionFunc, since, for very long menus, these coordinates 
29995 may extend beyond the monitor boundaries or even the screen boundaries.</doc>
29996         <return-value transfer-ownership="none">
29997           <type name="none" c:type="void"/>
29998         </return-value>
29999         <parameters>
30000           <parameter name="monitor_num" transfer-ownership="none">
30001             <doc xml:whitespace="preserve">the number of the monitor on which the menu should be popped up</doc>
30002             <type name="gint" c:type="gint"/>
30003           </parameter>
30004         </parameters>
30005       </method>
30006       <method name="set_reserve_toggle_size"
30007               c:identifier="gtk_menu_set_reserve_toggle_size"
30008               version="2.18">
30009         <doc xml:whitespace="preserve">Sets whether the menu should reserve space for drawing toggles 
30010 or icons, regardless of their actual presence.</doc>
30011         <return-value transfer-ownership="none">
30012           <type name="none" c:type="void"/>
30013         </return-value>
30014         <parameters>
30015           <parameter name="reserve_toggle_size" transfer-ownership="none">
30016             <doc xml:whitespace="preserve">whether to reserve size for toggles</doc>
30017             <type name="gboolean" c:type="gboolean"/>
30018           </parameter>
30019         </parameters>
30020       </method>
30021       <method name="set_screen"
30022               c:identifier="gtk_menu_set_screen"
30023               version="2.2">
30024         <doc xml:whitespace="preserve">Sets the #GdkScreen on which the menu will be displayed.</doc>
30025         <return-value transfer-ownership="none">
30026           <type name="none" c:type="void"/>
30027         </return-value>
30028         <parameters>
30029           <parameter name="screen" transfer-ownership="none" allow-none="1">
30030             <doc xml:whitespace="preserve">a #GdkScreen, or %NULL if the screen should be determined by the widget the menu is attached to.</doc>
30031             <type name="Gdk.Screen" c:type="GdkScreen*"/>
30032           </parameter>
30033         </parameters>
30034       </method>
30035       <method name="set_tearoff_state"
30036               c:identifier="gtk_menu_set_tearoff_state">
30037         <return-value transfer-ownership="none">
30038           <type name="none" c:type="void"/>
30039         </return-value>
30040         <parameters>
30041           <parameter name="torn_off" transfer-ownership="none">
30042             <type name="gboolean" c:type="gboolean"/>
30043           </parameter>
30044         </parameters>
30045       </method>
30046       <method name="set_title" c:identifier="gtk_menu_set_title">
30047         <doc xml:whitespace="preserve">Sets the title string for the menu.  The title is displayed when the menu
30048 is shown as a tearoff menu.  If @title is %NULL, the menu will see if it is
30049 attached to a parent menu item, and if so it will try to use the same text as
30050 that menu item's label.</doc>
30051         <return-value transfer-ownership="none">
30052           <type name="none" c:type="void"/>
30053         </return-value>
30054         <parameters>
30055           <parameter name="title" transfer-ownership="none">
30056             <doc xml:whitespace="preserve">a string containing the title for the menu.</doc>
30057             <type name="utf8" c:type="gchar*"/>
30058           </parameter>
30059         </parameters>
30060       </method>
30061       <property name="accel-group"
30062                 version="2.14"
30063                 writable="1"
30064                 transfer-ownership="none">
30065         <doc xml:whitespace="preserve">The accel group holding accelerators for the menu.</doc>
30066         <type name="AccelGroup"/>
30067       </property>
30068       <property name="accel-path"
30069                 version="2.14"
30070                 writable="1"
30071                 transfer-ownership="none">
30072         <doc xml:whitespace="preserve">An accel path used to conveniently construct accel paths of child items.</doc>
30073         <type name="utf8"/>
30074       </property>
30075       <property name="active"
30076                 version="2.14"
30077                 writable="1"
30078                 transfer-ownership="none">
30079         <doc xml:whitespace="preserve">The index of the currently selected menu item, or -1 if no
30080 menu item is selected.</doc>
30081         <type name="gint"/>
30082       </property>
30083       <property name="attach-widget"
30084                 version="2.14"
30085                 writable="1"
30086                 transfer-ownership="none">
30087         <doc xml:whitespace="preserve">The widget the menu is attached to. Setting this property attaches
30088 the menu without a #GtkMenuDetachFunc. If you need to use a detacher,
30089 use gtk_menu_attach_to_widget() directly.</doc>
30090         <type name="Widget"/>
30091       </property>
30092       <property name="monitor"
30093                 version="2.14"
30094                 writable="1"
30095                 transfer-ownership="none">
30096         <doc xml:whitespace="preserve">The monitor the menu will be popped up on.</doc>
30097         <type name="gint"/>
30098       </property>
30099       <property name="reserve-toggle-size"
30100                 version="2.18"
30101                 writable="1"
30102                 transfer-ownership="none">
30103         <doc xml:whitespace="preserve">A boolean that indicates whether the menu reserves space for
30104 toggles and icons, regardless of their actual presence.
30105 This property should only be changed from its default value
30106 for special-purposes such as tabular menus. Regular menus that
30107 are connected to a menu bar or context menus should reserve
30108 toggle space for consistency.</doc>
30109         <type name="gboolean"/>
30110       </property>
30111       <property name="tearoff-state"
30112                 version="2.6"
30113                 writable="1"
30114                 transfer-ownership="none">
30115         <doc xml:whitespace="preserve">A boolean that indicates whether the menu is torn-off.</doc>
30116         <type name="gboolean"/>
30117       </property>
30118       <property name="tearoff-title" writable="1" transfer-ownership="none">
30119         <type name="utf8"/>
30120       </property>
30121       <field name="menu_shell">
30122         <type name="MenuShell" c:type="GtkMenuShell"/>
30123       </field>
30124       <field name="parent_menu_item">
30125         <type name="Widget" c:type="GtkWidget*"/>
30126       </field>
30127       <field name="old_active_menu_item">
30128         <type name="Widget" c:type="GtkWidget*"/>
30129       </field>
30130       <field name="accel_group">
30131         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
30132       </field>
30133       <field name="accel_path">
30134         <type name="utf8" c:type="gchar*"/>
30135       </field>
30136       <field name="position_func">
30137         <type name="MenuPositionFunc" c:type="GtkMenuPositionFunc"/>
30138       </field>
30139       <field name="position_func_data">
30140         <type name="gpointer" c:type="gpointer"/>
30141       </field>
30142       <field name="toggle_size">
30143         <type name="guint" c:type="guint"/>
30144       </field>
30145       <field name="toplevel">
30146         <type name="Widget" c:type="GtkWidget*"/>
30147       </field>
30148       <field name="tearoff_window">
30149         <type name="Widget" c:type="GtkWidget*"/>
30150       </field>
30151       <field name="tearoff_hbox">
30152         <type name="Widget" c:type="GtkWidget*"/>
30153       </field>
30154       <field name="tearoff_scrollbar">
30155         <type name="Widget" c:type="GtkWidget*"/>
30156       </field>
30157       <field name="tearoff_adjustment">
30158         <type name="Adjustment" c:type="GtkAdjustment*"/>
30159       </field>
30160       <field name="view_window">
30161         <type name="Gdk.Window" c:type="GdkWindow*"/>
30162       </field>
30163       <field name="bin_window">
30164         <type name="Gdk.Window" c:type="GdkWindow*"/>
30165       </field>
30166       <field name="scroll_offset">
30167         <type name="gint" c:type="gint"/>
30168       </field>
30169       <field name="saved_scroll_offset">
30170         <type name="gint" c:type="gint"/>
30171       </field>
30172       <field name="scroll_step">
30173         <type name="gint" c:type="gint"/>
30174       </field>
30175       <field name="timeout_id">
30176         <type name="guint" c:type="guint"/>
30177       </field>
30178       <field name="navigation_region">
30179         <type name="cairo.Region" c:type="cairo_region_t*"/>
30180       </field>
30181       <field name="navigation_timeout">
30182         <type name="guint" c:type="guint"/>
30183       </field>
30184       <field name="needs_destruction_ref_count" bits="1">
30185         <type name="guint" c:type="guint"/>
30186       </field>
30187       <field name="torn_off" bits="1">
30188         <type name="guint" c:type="guint"/>
30189       </field>
30190       <field name="tearoff_active" bits="1">
30191         <type name="guint" c:type="guint"/>
30192       </field>
30193       <field name="scroll_fast" bits="1">
30194         <type name="guint" c:type="guint"/>
30195       </field>
30196       <field name="upper_arrow_visible" bits="1">
30197         <type name="guint" c:type="guint"/>
30198       </field>
30199       <field name="lower_arrow_visible" bits="1">
30200         <type name="guint" c:type="guint"/>
30201       </field>
30202       <field name="upper_arrow_prelight" bits="1">
30203         <type name="guint" c:type="guint"/>
30204       </field>
30205       <field name="lower_arrow_prelight" bits="1">
30206         <type name="guint" c:type="guint"/>
30207       </field>
30208       <glib:signal name="move-scroll">
30209         <return-value transfer-ownership="none">
30210           <type name="none"/>
30211         </return-value>
30212         <parameters>
30213           <parameter name="object" transfer-ownership="none">
30214             <type name="ScrollType"/>
30215           </parameter>
30216         </parameters>
30217       </glib:signal>
30218     </class>
30219     <class name="MenuBar"
30220            c:symbol-prefix="menu_bar"
30221            c:type="GtkMenuBar"
30222            parent="MenuShell"
30223            glib:type-name="GtkMenuBar"
30224            glib:get-type="gtk_menu_bar_get_type"
30225            glib:type-struct="MenuBarClass">
30226       <implements name="Atk.ImplementorIface"/>
30227       <implements name="Buildable"/>
30228       <implements name="SizeRequest"/>
30229       <constructor name="new" c:identifier="gtk_menu_bar_new">
30230         <return-value transfer-ownership="none">
30231           <type name="Widget" c:type="GtkWidget*"/>
30232         </return-value>
30233       </constructor>
30234       <method name="get_child_pack_direction"
30235               c:identifier="gtk_menu_bar_get_child_pack_direction"
30236               version="2.8">
30237         <doc xml:whitespace="preserve">Retrieves the current child pack direction of the menubar.
30238 See gtk_menu_bar_set_child_pack_direction().</doc>
30239         <return-value transfer-ownership="none">
30240           <doc xml:whitespace="preserve">the child pack direction</doc>
30241           <type name="PackDirection" c:type="GtkPackDirection"/>
30242         </return-value>
30243       </method>
30244       <method name="get_pack_direction"
30245               c:identifier="gtk_menu_bar_get_pack_direction"
30246               version="2.8">
30247         <doc xml:whitespace="preserve">Retrieves the current pack direction of the menubar. 
30248 See gtk_menu_bar_set_pack_direction().</doc>
30249         <return-value transfer-ownership="none">
30250           <doc xml:whitespace="preserve">the pack direction</doc>
30251           <type name="PackDirection" c:type="GtkPackDirection"/>
30252         </return-value>
30253       </method>
30254       <method name="set_child_pack_direction"
30255               c:identifier="gtk_menu_bar_set_child_pack_direction"
30256               version="2.8">
30257         <doc xml:whitespace="preserve">Sets how widgets should be packed inside the children of a menubar.</doc>
30258         <return-value transfer-ownership="none">
30259           <type name="none" c:type="void"/>
30260         </return-value>
30261         <parameters>
30262           <parameter name="child_pack_dir" transfer-ownership="none">
30263             <doc xml:whitespace="preserve">a new #GtkPackDirection</doc>
30264             <type name="PackDirection" c:type="GtkPackDirection"/>
30265           </parameter>
30266         </parameters>
30267       </method>
30268       <method name="set_pack_direction"
30269               c:identifier="gtk_menu_bar_set_pack_direction"
30270               version="2.8">
30271         <doc xml:whitespace="preserve">Sets how items should be packed inside a menubar.</doc>
30272         <return-value transfer-ownership="none">
30273           <type name="none" c:type="void"/>
30274         </return-value>
30275         <parameters>
30276           <parameter name="pack_dir" transfer-ownership="none">
30277             <doc xml:whitespace="preserve">a new #GtkPackDirection</doc>
30278             <type name="PackDirection" c:type="GtkPackDirection"/>
30279           </parameter>
30280         </parameters>
30281       </method>
30282       <property name="child-pack-direction"
30283                 version="2.8"
30284                 writable="1"
30285                 transfer-ownership="none">
30286         <doc xml:whitespace="preserve">The child pack direction of the menubar. It determines how
30287 the widgets contained in child menuitems are arranged.</doc>
30288         <type name="PackDirection"/>
30289       </property>
30290       <property name="pack-direction"
30291                 version="2.8"
30292                 writable="1"
30293                 transfer-ownership="none">
30294         <doc xml:whitespace="preserve">The pack direction of the menubar. It determines how
30295 menuitems are arranged in the menubar.</doc>
30296         <type name="PackDirection"/>
30297       </property>
30298       <field name="menu_shell">
30299         <type name="MenuShell" c:type="GtkMenuShell"/>
30300       </field>
30301       <field name="priv" readable="0" private="1">
30302         <type name="MenuBarPrivate" c:type="GtkMenuBarPrivate*"/>
30303       </field>
30304     </class>
30305     <record name="MenuBarClass"
30306             c:type="GtkMenuBarClass"
30307             glib:is-gtype-struct-for="MenuBar">
30308       <field name="parent_class">
30309         <type name="MenuShellClass" c:type="GtkMenuShellClass"/>
30310       </field>
30311       <field name="_gtk_reserved1" introspectable="0">
30312         <callback name="_gtk_reserved1">
30313           <return-value transfer-ownership="none">
30314             <type name="none" c:type="void"/>
30315           </return-value>
30316         </callback>
30317       </field>
30318       <field name="_gtk_reserved2" introspectable="0">
30319         <callback name="_gtk_reserved2">
30320           <return-value transfer-ownership="none">
30321             <type name="none" c:type="void"/>
30322           </return-value>
30323         </callback>
30324       </field>
30325       <field name="_gtk_reserved3" introspectable="0">
30326         <callback name="_gtk_reserved3">
30327           <return-value transfer-ownership="none">
30328             <type name="none" c:type="void"/>
30329           </return-value>
30330         </callback>
30331       </field>
30332       <field name="_gtk_reserved4" introspectable="0">
30333         <callback name="_gtk_reserved4">
30334           <return-value transfer-ownership="none">
30335             <type name="none" c:type="void"/>
30336           </return-value>
30337         </callback>
30338       </field>
30339     </record>
30340     <record name="MenuBarPrivate" c:type="GtkMenuBarPrivate" disguised="1">
30341     </record>
30342     <record name="MenuClass"
30343             c:type="GtkMenuClass"
30344             glib:is-gtype-struct-for="Menu">
30345       <field name="parent_class">
30346         <type name="MenuShellClass" c:type="GtkMenuShellClass"/>
30347       </field>
30348       <field name="_gtk_reserved1" introspectable="0">
30349         <callback name="_gtk_reserved1">
30350           <return-value transfer-ownership="none">
30351             <type name="none" c:type="void"/>
30352           </return-value>
30353         </callback>
30354       </field>
30355       <field name="_gtk_reserved2" introspectable="0">
30356         <callback name="_gtk_reserved2">
30357           <return-value transfer-ownership="none">
30358             <type name="none" c:type="void"/>
30359           </return-value>
30360         </callback>
30361       </field>
30362       <field name="_gtk_reserved3" introspectable="0">
30363         <callback name="_gtk_reserved3">
30364           <return-value transfer-ownership="none">
30365             <type name="none" c:type="void"/>
30366           </return-value>
30367         </callback>
30368       </field>
30369       <field name="_gtk_reserved4" introspectable="0">
30370         <callback name="_gtk_reserved4">
30371           <return-value transfer-ownership="none">
30372             <type name="none" c:type="void"/>
30373           </return-value>
30374         </callback>
30375       </field>
30376     </record>
30377     <callback name="MenuDetachFunc" c:type="GtkMenuDetachFunc">
30378       <return-value transfer-ownership="none">
30379         <type name="none" c:type="void"/>
30380       </return-value>
30381       <parameters>
30382         <parameter name="attach_widget" transfer-ownership="none">
30383           <type name="Widget" c:type="GtkWidget*"/>
30384         </parameter>
30385         <parameter name="menu" transfer-ownership="none">
30386           <type name="Menu" c:type="GtkMenu*"/>
30387         </parameter>
30388       </parameters>
30389     </callback>
30390     <enumeration name="MenuDirectionType"
30391                  glib:type-name="GtkMenuDirectionType"
30392                  glib:get-type="gtk_menu_direction_type_get_type"
30393                  c:type="GtkMenuDirectionType">
30394       <member name="parent"
30395               value="0"
30396               c:identifier="GTK_MENU_DIR_PARENT"
30397               glib:nick="parent"/>
30398       <member name="child"
30399               value="1"
30400               c:identifier="GTK_MENU_DIR_CHILD"
30401               glib:nick="child"/>
30402       <member name="next"
30403               value="2"
30404               c:identifier="GTK_MENU_DIR_NEXT"
30405               glib:nick="next"/>
30406       <member name="prev"
30407               value="3"
30408               c:identifier="GTK_MENU_DIR_PREV"
30409               glib:nick="prev"/>
30410     </enumeration>
30411     <class name="MenuItem"
30412            c:symbol-prefix="menu_item"
30413            c:type="GtkMenuItem"
30414            parent="Bin"
30415            glib:type-name="GtkMenuItem"
30416            glib:get-type="gtk_menu_item_get_type"
30417            glib:type-struct="MenuItemClass">
30418       <implements name="Atk.ImplementorIface"/>
30419       <implements name="Activatable"/>
30420       <implements name="Buildable"/>
30421       <implements name="SizeRequest"/>
30422       <constructor name="new" c:identifier="gtk_menu_item_new">
30423         <return-value transfer-ownership="none">
30424           <type name="Widget" c:type="GtkWidget*"/>
30425         </return-value>
30426       </constructor>
30427       <constructor name="new_with_label"
30428                    c:identifier="gtk_menu_item_new_with_label">
30429         <return-value transfer-ownership="none">
30430           <type name="Widget" c:type="GtkWidget*"/>
30431         </return-value>
30432         <parameters>
30433           <parameter name="label" transfer-ownership="none">
30434             <type name="utf8" c:type="gchar*"/>
30435           </parameter>
30436         </parameters>
30437       </constructor>
30438       <constructor name="new_with_mnemonic"
30439                    c:identifier="gtk_menu_item_new_with_mnemonic">
30440         <doc xml:whitespace="preserve">Creates a new #GtkMenuItem containing a label. The label
30441 will be created using gtk_label_new_with_mnemonic(), so underscores
30442 in @label indicate the mnemonic for the menu item.</doc>
30443         <return-value transfer-ownership="none">
30444           <doc xml:whitespace="preserve">a new #GtkMenuItem</doc>
30445           <type name="Widget" c:type="GtkWidget*"/>
30446         </return-value>
30447         <parameters>
30448           <parameter name="label" transfer-ownership="none">
30449             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
30450             <type name="utf8" c:type="gchar*"/>
30451           </parameter>
30452         </parameters>
30453       </constructor>
30454       <virtual-method name="get_label" invoker="get_label" version="2.16">
30455         <doc xml:whitespace="preserve">Sets @text on the @menu_item label
30456 string used by the label, and must not be modified.</doc>
30457         <return-value transfer-ownership="none">
30458           <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
30459           <type name="utf8" c:type="gchar*"/>
30460         </return-value>
30461       </virtual-method>
30462       <virtual-method name="set_label" invoker="set_label" version="2.16">
30463         <doc xml:whitespace="preserve">Sets @text on the @menu_item label</doc>
30464         <return-value transfer-ownership="none">
30465           <type name="none" c:type="void"/>
30466         </return-value>
30467         <parameters>
30468           <parameter name="label" transfer-ownership="none">
30469             <doc xml:whitespace="preserve">the text you want to set</doc>
30470             <type name="utf8" c:type="gchar*"/>
30471           </parameter>
30472         </parameters>
30473       </virtual-method>
30474       <method name="activate" c:identifier="gtk_menu_item_activate">
30475         <return-value transfer-ownership="none">
30476           <type name="none" c:type="void"/>
30477         </return-value>
30478       </method>
30479       <method name="deselect" c:identifier="gtk_menu_item_deselect">
30480         <return-value transfer-ownership="none">
30481           <type name="none" c:type="void"/>
30482         </return-value>
30483       </method>
30484       <method name="get_accel_path"
30485               c:identifier="gtk_menu_item_get_accel_path">
30486         <return-value transfer-ownership="none">
30487           <type name="utf8" c:type="gchar*"/>
30488         </return-value>
30489       </method>
30490       <method name="get_label"
30491               c:identifier="gtk_menu_item_get_label"
30492               version="2.16">
30493         <doc xml:whitespace="preserve">Sets @text on the @menu_item label
30494 string used by the label, and must not be modified.</doc>
30495         <return-value transfer-ownership="none">
30496           <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
30497           <type name="utf8" c:type="gchar*"/>
30498         </return-value>
30499       </method>
30500       <method name="get_right_justified"
30501               c:identifier="gtk_menu_item_get_right_justified">
30502         <doc xml:whitespace="preserve">Gets whether the menu item appears justified at the right
30503 side of the menu bar.
30504 far right if added to a menu bar.</doc>
30505         <return-value transfer-ownership="none">
30506           <doc xml:whitespace="preserve">%TRUE if the menu item will appear at the</doc>
30507           <type name="gboolean" c:type="gboolean"/>
30508         </return-value>
30509       </method>
30510       <method name="get_submenu" c:identifier="gtk_menu_item_get_submenu">
30511         <doc xml:whitespace="preserve">Gets the submenu underneath this menu item, if any.
30512 See gtk_menu_item_set_submenu().</doc>
30513         <return-value transfer-ownership="none">
30514           <doc xml:whitespace="preserve">submenu for this menu item, or %NULL if none.</doc>
30515           <type name="Widget" c:type="GtkWidget*"/>
30516         </return-value>
30517       </method>
30518       <method name="get_use_underline"
30519               c:identifier="gtk_menu_item_get_use_underline"
30520               version="2.16">
30521         <doc xml:whitespace="preserve">Checks if an underline in the text indicates the next character should be
30522 used for the mnemonic accelerator key.
30523 the mnemonic accelerator key.</doc>
30524         <return-value transfer-ownership="none">
30525           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the label indicates</doc>
30526           <type name="gboolean" c:type="gboolean"/>
30527         </return-value>
30528       </method>
30529       <method name="select" c:identifier="gtk_menu_item_select">
30530         <return-value transfer-ownership="none">
30531           <type name="none" c:type="void"/>
30532         </return-value>
30533       </method>
30534       <method name="set_accel_path"
30535               c:identifier="gtk_menu_item_set_accel_path">
30536         <return-value transfer-ownership="none">
30537           <type name="none" c:type="void"/>
30538         </return-value>
30539         <parameters>
30540           <parameter name="accel_path" transfer-ownership="none">
30541             <type name="utf8" c:type="gchar*"/>
30542           </parameter>
30543         </parameters>
30544       </method>
30545       <method name="set_label"
30546               c:identifier="gtk_menu_item_set_label"
30547               version="2.16">
30548         <doc xml:whitespace="preserve">Sets @text on the @menu_item label</doc>
30549         <return-value transfer-ownership="none">
30550           <type name="none" c:type="void"/>
30551         </return-value>
30552         <parameters>
30553           <parameter name="label" transfer-ownership="none">
30554             <doc xml:whitespace="preserve">the text you want to set</doc>
30555             <type name="utf8" c:type="gchar*"/>
30556           </parameter>
30557         </parameters>
30558       </method>
30559       <method name="set_right_justified"
30560               c:identifier="gtk_menu_item_set_right_justified">
30561         <doc xml:whitespace="preserve">Sets whether the menu item appears justified at the right
30562 side of a menu bar. This was traditionally done for "Help" menu
30563 items, but is now considered a bad idea. (If the widget
30564 layout is reversed for a right-to-left language like Hebrew
30565 or Arabic, right-justified-menu-items appear at the left.)</doc>
30566         <return-value transfer-ownership="none">
30567           <type name="none" c:type="void"/>
30568         </return-value>
30569         <parameters>
30570           <parameter name="right_justified" transfer-ownership="none">
30571             <doc xml:whitespace="preserve">if %TRUE the menu item will appear at the far right if added to a menu bar.</doc>
30572             <type name="gboolean" c:type="gboolean"/>
30573           </parameter>
30574         </parameters>
30575       </method>
30576       <method name="set_submenu" c:identifier="gtk_menu_item_set_submenu">
30577         <doc xml:whitespace="preserve">Sets or replaces the menu item's submenu, or removes it when a %NULL
30578 submenu is passed.</doc>
30579         <return-value transfer-ownership="none">
30580           <type name="none" c:type="void"/>
30581         </return-value>
30582         <parameters>
30583           <parameter name="submenu" transfer-ownership="none" allow-none="1">
30584             <doc xml:whitespace="preserve">the submenu, or %NULL</doc>
30585             <type name="Widget" c:type="GtkWidget*"/>
30586           </parameter>
30587         </parameters>
30588       </method>
30589       <method name="set_use_underline"
30590               c:identifier="gtk_menu_item_set_use_underline"
30591               version="2.16">
30592         <doc xml:whitespace="preserve">If true, an underline in the text indicates the next character should be
30593 used for the mnemonic accelerator key.</doc>
30594         <return-value transfer-ownership="none">
30595           <type name="none" c:type="void"/>
30596         </return-value>
30597         <parameters>
30598           <parameter name="setting" transfer-ownership="none">
30599             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
30600             <type name="gboolean" c:type="gboolean"/>
30601           </parameter>
30602         </parameters>
30603       </method>
30604       <method name="toggle_size_allocate"
30605               c:identifier="gtk_menu_item_toggle_size_allocate">
30606         <return-value transfer-ownership="none">
30607           <type name="none" c:type="void"/>
30608         </return-value>
30609         <parameters>
30610           <parameter name="allocation" transfer-ownership="none">
30611             <type name="gint" c:type="gint"/>
30612           </parameter>
30613         </parameters>
30614       </method>
30615       <method name="toggle_size_request"
30616               c:identifier="gtk_menu_item_toggle_size_request">
30617         <return-value transfer-ownership="none">
30618           <type name="none" c:type="void"/>
30619         </return-value>
30620         <parameters>
30621           <parameter name="requisition" transfer-ownership="none">
30622             <type name="gint" c:type="gint*"/>
30623           </parameter>
30624         </parameters>
30625       </method>
30626       <property name="accel-path"
30627                 version="2.14"
30628                 writable="1"
30629                 transfer-ownership="none">
30630         <doc xml:whitespace="preserve">Sets the accelerator path of the menu item, through which runtime
30631 changes of the menu item's accelerator caused by the user can be
30632 identified and saved to persistant storage.</doc>
30633         <type name="utf8"/>
30634       </property>
30635       <property name="label"
30636                 version="2.16"
30637                 writable="1"
30638                 transfer-ownership="none">
30639         <doc xml:whitespace="preserve">The text for the child label.</doc>
30640         <type name="utf8"/>
30641       </property>
30642       <property name="right-justified"
30643                 version="2.14"
30644                 writable="1"
30645                 transfer-ownership="none">
30646         <doc xml:whitespace="preserve">Sets whether the menu item appears justified at the right side of a menu bar.</doc>
30647         <type name="gboolean"/>
30648       </property>
30649       <property name="submenu"
30650                 version="2.12"
30651                 writable="1"
30652                 transfer-ownership="none">
30653         <doc xml:whitespace="preserve">The submenu attached to the menu item, or NULL if it has none.</doc>
30654         <type name="Menu"/>
30655       </property>
30656       <property name="use-underline"
30657                 version="2.16"
30658                 writable="1"
30659                 transfer-ownership="none">
30660         <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
30661         <type name="gboolean"/>
30662       </property>
30663       <field name="bin">
30664         <type name="Bin" c:type="GtkBin"/>
30665       </field>
30666       <field name="submenu">
30667         <type name="Widget" c:type="GtkWidget*"/>
30668       </field>
30669       <field name="event_window">
30670         <type name="Gdk.Window" c:type="GdkWindow*"/>
30671       </field>
30672       <field name="toggle_size">
30673         <type name="guint16" c:type="guint16"/>
30674       </field>
30675       <field name="accelerator_width">
30676         <type name="guint16" c:type="guint16"/>
30677       </field>
30678       <field name="accel_path">
30679         <type name="utf8" c:type="gchar*"/>
30680       </field>
30681       <field name="show_submenu_indicator" bits="1">
30682         <type name="guint" c:type="guint"/>
30683       </field>
30684       <field name="submenu_placement" bits="1">
30685         <type name="guint" c:type="guint"/>
30686       </field>
30687       <field name="submenu_direction" bits="1">
30688         <type name="guint" c:type="guint"/>
30689       </field>
30690       <field name="right_justify" bits="1">
30691         <type name="guint" c:type="guint"/>
30692       </field>
30693       <field name="timer_from_keypress" bits="1">
30694         <type name="guint" c:type="guint"/>
30695       </field>
30696       <field name="from_menubar" bits="1">
30697         <type name="guint" c:type="guint"/>
30698       </field>
30699       <field name="timer">
30700         <type name="guint" c:type="guint"/>
30701       </field>
30702       <glib:signal name="activate">
30703         <return-value transfer-ownership="none">
30704           <type name="none"/>
30705         </return-value>
30706       </glib:signal>
30707       <glib:signal name="activate-item">
30708         <return-value transfer-ownership="none">
30709           <type name="none"/>
30710         </return-value>
30711       </glib:signal>
30712       <glib:signal name="deselect">
30713         <return-value transfer-ownership="none">
30714           <type name="none"/>
30715         </return-value>
30716       </glib:signal>
30717       <glib:signal name="select">
30718         <return-value transfer-ownership="none">
30719           <type name="none"/>
30720         </return-value>
30721       </glib:signal>
30722       <glib:signal name="toggle-size-allocate">
30723         <return-value transfer-ownership="none">
30724           <type name="none"/>
30725         </return-value>
30726         <parameters>
30727           <parameter name="object" transfer-ownership="none">
30728             <type name="gint"/>
30729           </parameter>
30730         </parameters>
30731       </glib:signal>
30732       <glib:signal name="toggle-size-request">
30733         <return-value transfer-ownership="none">
30734           <type name="none"/>
30735         </return-value>
30736         <parameters>
30737           <parameter name="object" transfer-ownership="none">
30738             <type name="gpointer"/>
30739           </parameter>
30740         </parameters>
30741       </glib:signal>
30742     </class>
30743     <record name="MenuItemClass"
30744             c:type="GtkMenuItemClass"
30745             glib:is-gtype-struct-for="MenuItem">
30746       <field name="parent_class">
30747         <type name="BinClass" c:type="GtkBinClass"/>
30748       </field>
30749       <field name="hide_on_activate" bits="1">
30750         <type name="guint" c:type="guint"/>
30751       </field>
30752       <field name="activate">
30753         <callback name="activate">
30754           <return-value transfer-ownership="none">
30755             <type name="none" c:type="void"/>
30756           </return-value>
30757           <parameters>
30758             <parameter name="menu_item" transfer-ownership="none">
30759               <type name="MenuItem" c:type="GtkMenuItem*"/>
30760             </parameter>
30761           </parameters>
30762         </callback>
30763       </field>
30764       <field name="activate_item">
30765         <callback name="activate_item">
30766           <return-value transfer-ownership="none">
30767             <type name="none" c:type="void"/>
30768           </return-value>
30769           <parameters>
30770             <parameter name="menu_item" transfer-ownership="none">
30771               <type name="MenuItem" c:type="GtkMenuItem*"/>
30772             </parameter>
30773           </parameters>
30774         </callback>
30775       </field>
30776       <field name="toggle_size_request">
30777         <callback name="toggle_size_request">
30778           <return-value transfer-ownership="none">
30779             <type name="none" c:type="void"/>
30780           </return-value>
30781           <parameters>
30782             <parameter name="menu_item" transfer-ownership="none">
30783               <type name="MenuItem" c:type="GtkMenuItem*"/>
30784             </parameter>
30785             <parameter name="requisition" transfer-ownership="none">
30786               <type name="gint" c:type="gint*"/>
30787             </parameter>
30788           </parameters>
30789         </callback>
30790       </field>
30791       <field name="toggle_size_allocate">
30792         <callback name="toggle_size_allocate">
30793           <return-value transfer-ownership="none">
30794             <type name="none" c:type="void"/>
30795           </return-value>
30796           <parameters>
30797             <parameter name="menu_item" transfer-ownership="none">
30798               <type name="MenuItem" c:type="GtkMenuItem*"/>
30799             </parameter>
30800             <parameter name="allocation" transfer-ownership="none">
30801               <type name="gint" c:type="gint"/>
30802             </parameter>
30803           </parameters>
30804         </callback>
30805       </field>
30806       <field name="set_label">
30807         <callback name="set_label">
30808           <return-value transfer-ownership="none">
30809             <type name="none" c:type="void"/>
30810           </return-value>
30811           <parameters>
30812             <parameter name="menu_item" transfer-ownership="none">
30813               <type name="MenuItem" c:type="GtkMenuItem*"/>
30814             </parameter>
30815             <parameter name="label" transfer-ownership="none">
30816               <doc xml:whitespace="preserve">the text you want to set</doc>
30817               <type name="utf8" c:type="gchar*"/>
30818             </parameter>
30819           </parameters>
30820         </callback>
30821       </field>
30822       <field name="get_label">
30823         <callback name="get_label">
30824           <return-value transfer-ownership="none">
30825             <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
30826             <type name="utf8" c:type="gchar*"/>
30827           </return-value>
30828           <parameters>
30829             <parameter name="menu_item" transfer-ownership="none">
30830               <type name="MenuItem" c:type="GtkMenuItem*"/>
30831             </parameter>
30832           </parameters>
30833         </callback>
30834       </field>
30835       <field name="select">
30836         <callback name="select">
30837           <return-value transfer-ownership="none">
30838             <type name="none" c:type="void"/>
30839           </return-value>
30840           <parameters>
30841             <parameter name="menu_item" transfer-ownership="none">
30842               <type name="MenuItem" c:type="GtkMenuItem*"/>
30843             </parameter>
30844           </parameters>
30845         </callback>
30846       </field>
30847       <field name="deselect">
30848         <callback name="deselect">
30849           <return-value transfer-ownership="none">
30850             <type name="none" c:type="void"/>
30851           </return-value>
30852           <parameters>
30853             <parameter name="menu_item" transfer-ownership="none">
30854               <type name="MenuItem" c:type="GtkMenuItem*"/>
30855             </parameter>
30856           </parameters>
30857         </callback>
30858       </field>
30859       <field name="_gtk_reserved1" introspectable="0">
30860         <callback name="_gtk_reserved1">
30861           <return-value transfer-ownership="none">
30862             <type name="none" c:type="void"/>
30863           </return-value>
30864         </callback>
30865       </field>
30866       <field name="_gtk_reserved2" introspectable="0">
30867         <callback name="_gtk_reserved2">
30868           <return-value transfer-ownership="none">
30869             <type name="none" c:type="void"/>
30870           </return-value>
30871         </callback>
30872       </field>
30873       <field name="_gtk_reserved3" introspectable="0">
30874         <callback name="_gtk_reserved3">
30875           <return-value transfer-ownership="none">
30876             <type name="none" c:type="void"/>
30877           </return-value>
30878         </callback>
30879       </field>
30880       <field name="_gtk_reserved4" introspectable="0">
30881         <callback name="_gtk_reserved4">
30882           <return-value transfer-ownership="none">
30883             <type name="none" c:type="void"/>
30884           </return-value>
30885         </callback>
30886       </field>
30887     </record>
30888     <callback name="MenuPositionFunc" c:type="GtkMenuPositionFunc">
30889       <return-value transfer-ownership="none">
30890         <type name="none" c:type="void"/>
30891       </return-value>
30892       <parameters>
30893         <parameter name="menu" transfer-ownership="none">
30894           <type name="Menu" c:type="GtkMenu*"/>
30895         </parameter>
30896         <parameter name="x" transfer-ownership="none">
30897           <type name="gint" c:type="gint*"/>
30898         </parameter>
30899         <parameter name="y" transfer-ownership="none">
30900           <type name="gint" c:type="gint*"/>
30901         </parameter>
30902         <parameter name="push_in" transfer-ownership="none">
30903           <type name="gboolean" c:type="gboolean*"/>
30904         </parameter>
30905         <parameter name="user_data" transfer-ownership="none" closure="4">
30906           <type name="gpointer" c:type="gpointer"/>
30907         </parameter>
30908       </parameters>
30909     </callback>
30910     <class name="MenuShell"
30911            c:symbol-prefix="menu_shell"
30912            c:type="GtkMenuShell"
30913            parent="Container"
30914            abstract="1"
30915            glib:type-name="GtkMenuShell"
30916            glib:get-type="gtk_menu_shell_get_type"
30917            glib:type-struct="MenuShellClass">
30918       <implements name="Atk.ImplementorIface"/>
30919       <implements name="Buildable"/>
30920       <implements name="SizeRequest"/>
30921       <virtual-method name="get_popup_delay">
30922         <return-value transfer-ownership="none">
30923           <type name="gint" c:type="gint"/>
30924         </return-value>
30925       </virtual-method>
30926       <virtual-method name="insert" invoker="insert">
30927         <return-value transfer-ownership="none">
30928           <type name="none" c:type="void"/>
30929         </return-value>
30930         <parameters>
30931           <parameter name="child" transfer-ownership="none">
30932             <type name="Widget" c:type="GtkWidget*"/>
30933           </parameter>
30934           <parameter name="position" transfer-ownership="none">
30935             <type name="gint" c:type="gint"/>
30936           </parameter>
30937         </parameters>
30938       </virtual-method>
30939       <virtual-method name="select_item" invoker="select_item">
30940         <return-value transfer-ownership="none">
30941           <type name="none" c:type="void"/>
30942         </return-value>
30943         <parameters>
30944           <parameter name="menu_item" transfer-ownership="none">
30945             <type name="Widget" c:type="GtkWidget*"/>
30946           </parameter>
30947         </parameters>
30948       </virtual-method>
30949       <method name="activate_item" c:identifier="gtk_menu_shell_activate_item">
30950         <return-value transfer-ownership="none">
30951           <type name="none" c:type="void"/>
30952         </return-value>
30953         <parameters>
30954           <parameter name="menu_item" transfer-ownership="none">
30955             <type name="Widget" c:type="GtkWidget*"/>
30956           </parameter>
30957           <parameter name="force_deactivate" transfer-ownership="none">
30958             <type name="gboolean" c:type="gboolean"/>
30959           </parameter>
30960         </parameters>
30961       </method>
30962       <method name="append" c:identifier="gtk_menu_shell_append">
30963         <return-value transfer-ownership="none">
30964           <type name="none" c:type="void"/>
30965         </return-value>
30966         <parameters>
30967           <parameter name="child" transfer-ownership="none">
30968             <type name="Widget" c:type="GtkWidget*"/>
30969           </parameter>
30970         </parameters>
30971       </method>
30972       <method name="cancel" c:identifier="gtk_menu_shell_cancel" version="2.4">
30973         <doc xml:whitespace="preserve">Cancels the selection within the menu shell.</doc>
30974         <return-value transfer-ownership="none">
30975           <type name="none" c:type="void"/>
30976         </return-value>
30977       </method>
30978       <method name="deactivate" c:identifier="gtk_menu_shell_deactivate">
30979         <return-value transfer-ownership="none">
30980           <type name="none" c:type="void"/>
30981         </return-value>
30982       </method>
30983       <method name="deselect" c:identifier="gtk_menu_shell_deselect">
30984         <return-value transfer-ownership="none">
30985           <type name="none" c:type="void"/>
30986         </return-value>
30987       </method>
30988       <method name="get_take_focus"
30989               c:identifier="gtk_menu_shell_get_take_focus"
30990               version="2.8">
30991         <doc xml:whitespace="preserve">Returns %TRUE if the menu shell will take the keyboard focus on popup.</doc>
30992         <return-value transfer-ownership="none">
30993           <doc xml:whitespace="preserve">%TRUE if the menu shell will take the keyboard focus on popup.</doc>
30994           <type name="gboolean" c:type="gboolean"/>
30995         </return-value>
30996       </method>
30997       <method name="insert" c:identifier="gtk_menu_shell_insert">
30998         <return-value transfer-ownership="none">
30999           <type name="none" c:type="void"/>
31000         </return-value>
31001         <parameters>
31002           <parameter name="child" transfer-ownership="none">
31003             <type name="Widget" c:type="GtkWidget*"/>
31004           </parameter>
31005           <parameter name="position" transfer-ownership="none">
31006             <type name="gint" c:type="gint"/>
31007           </parameter>
31008         </parameters>
31009       </method>
31010       <method name="prepend" c:identifier="gtk_menu_shell_prepend">
31011         <return-value transfer-ownership="none">
31012           <type name="none" c:type="void"/>
31013         </return-value>
31014         <parameters>
31015           <parameter name="child" transfer-ownership="none">
31016             <type name="Widget" c:type="GtkWidget*"/>
31017           </parameter>
31018         </parameters>
31019       </method>
31020       <method name="select_first"
31021               c:identifier="gtk_menu_shell_select_first"
31022               version="2.2">
31023         <doc xml:whitespace="preserve">Select the first visible or selectable child of the menu shell;
31024 don't select tearoff items unless the only item is a tearoff
31025 item.</doc>
31026         <return-value transfer-ownership="none">
31027           <type name="none" c:type="void"/>
31028         </return-value>
31029         <parameters>
31030           <parameter name="search_sensitive" transfer-ownership="none">
31031             <doc xml:whitespace="preserve">if %TRUE, search for the first selectable menu item, otherwise select nothing if the first item isn't sensitive. This should be %FALSE if the menu is being popped up initially.</doc>
31032             <type name="gboolean" c:type="gboolean"/>
31033           </parameter>
31034         </parameters>
31035       </method>
31036       <method name="select_item" c:identifier="gtk_menu_shell_select_item">
31037         <return-value transfer-ownership="none">
31038           <type name="none" c:type="void"/>
31039         </return-value>
31040         <parameters>
31041           <parameter name="menu_item" transfer-ownership="none">
31042             <type name="Widget" c:type="GtkWidget*"/>
31043           </parameter>
31044         </parameters>
31045       </method>
31046       <method name="set_take_focus"
31047               c:identifier="gtk_menu_shell_set_take_focus"
31048               version="2.8">
31049         <doc xml:whitespace="preserve">If @take_focus is %TRUE (the default) the menu shell will take the keyboard 
31050 focus so that it will receive all keyboard events which is needed to enable
31051 keyboard navigation in menus.
31052 Setting @take_focus to %FALSE is useful only for special applications
31053 like virtual keyboard implementations which should not take keyboard
31054 focus.
31055 The @take_focus state of a menu or menu bar is automatically propagated
31056 to submenus whenever a submenu is popped up, so you don't have to worry
31057 about recursively setting it for your entire menu hierarchy. Only when
31058 programmatically picking a submenu and popping it up manually, the
31059 Note that setting it to %FALSE has side-effects:
31060 If the focus is in some other app, it keeps the focus and keynav in
31061 the menu doesn't work. Consequently, keynav on the menu will only
31062 work if the focus is on some toplevel owned by the onscreen keyboard.
31063 To avoid confusing the user, menus with @take_focus set to %FALSE
31064 should not display mnemonics or accelerators, since it cannot be
31065 guaranteed that they will work.
31066 See also gdk_keyboard_grab()</doc>
31067         <return-value transfer-ownership="none">
31068           <type name="none" c:type="void"/>
31069         </return-value>
31070         <parameters>
31071           <parameter name="take_focus" transfer-ownership="none">
31072             <doc xml:whitespace="preserve">%TRUE if the menu shell should take the keyboard focus on popup.</doc>
31073             <type name="gboolean" c:type="gboolean"/>
31074           </parameter>
31075         </parameters>
31076       </method>
31077       <property name="take-focus"
31078                 version="2.8"
31079                 writable="1"
31080                 transfer-ownership="none">
31081         <doc xml:whitespace="preserve">A boolean that determines whether the menu and its submenus grab the
31082 keyboard focus. See gtk_menu_shell_set_take_focus() and
31083 gtk_menu_shell_get_take_focus().</doc>
31084         <type name="gboolean"/>
31085       </property>
31086       <field name="container">
31087         <type name="Container" c:type="GtkContainer"/>
31088       </field>
31089       <field name="children">
31090         <type name="GLib.List" c:type="GList*">
31091           <type name="gpointer" c:type="gpointer"/>
31092         </type>
31093       </field>
31094       <field name="active_menu_item">
31095         <type name="Widget" c:type="GtkWidget*"/>
31096       </field>
31097       <field name="parent_menu_shell">
31098         <type name="Widget" c:type="GtkWidget*"/>
31099       </field>
31100       <field name="button">
31101         <type name="guint" c:type="guint"/>
31102       </field>
31103       <field name="activate_time">
31104         <type name="guint32" c:type="guint32"/>
31105       </field>
31106       <field name="active" bits="1">
31107         <type name="guint" c:type="guint"/>
31108       </field>
31109       <field name="have_grab" bits="1">
31110         <type name="guint" c:type="guint"/>
31111       </field>
31112       <field name="have_xgrab" bits="1">
31113         <type name="guint" c:type="guint"/>
31114       </field>
31115       <field name="ignore_leave" bits="1">
31116         <type name="guint" c:type="guint"/>
31117       </field>
31118       <field name="menu_flag" bits="1">
31119         <type name="guint" c:type="guint"/>
31120       </field>
31121       <field name="ignore_enter" bits="1">
31122         <type name="guint" c:type="guint"/>
31123       </field>
31124       <field name="keyboard_mode" bits="1">
31125         <type name="guint" c:type="guint"/>
31126       </field>
31127       <glib:signal name="activate-current">
31128         <return-value transfer-ownership="none">
31129           <type name="none"/>
31130         </return-value>
31131         <parameters>
31132           <parameter name="object" transfer-ownership="none">
31133             <type name="gboolean"/>
31134           </parameter>
31135         </parameters>
31136       </glib:signal>
31137       <glib:signal name="cancel">
31138         <return-value transfer-ownership="none">
31139           <type name="none"/>
31140         </return-value>
31141       </glib:signal>
31142       <glib:signal name="cycle-focus">
31143         <return-value transfer-ownership="none">
31144           <type name="none"/>
31145         </return-value>
31146         <parameters>
31147           <parameter name="object" transfer-ownership="none">
31148             <type name="DirectionType"/>
31149           </parameter>
31150         </parameters>
31151       </glib:signal>
31152       <glib:signal name="deactivate">
31153         <return-value transfer-ownership="none">
31154           <type name="none"/>
31155         </return-value>
31156       </glib:signal>
31157       <glib:signal name="move-current">
31158         <return-value transfer-ownership="none">
31159           <type name="none"/>
31160         </return-value>
31161         <parameters>
31162           <parameter name="object" transfer-ownership="none">
31163             <type name="MenuDirectionType"/>
31164           </parameter>
31165         </parameters>
31166       </glib:signal>
31167       <glib:signal name="move-selected" version="2.12">
31168         <doc xml:whitespace="preserve">The ::move-selected signal is emitted to move the selection to
31169 another item.</doc>
31170         <return-value transfer-ownership="none">
31171           <doc xml:whitespace="preserve">%TRUE to stop the signal emission, %FALSE to continue</doc>
31172           <type name="gboolean"/>
31173         </return-value>
31174         <parameters>
31175           <parameter name="object" transfer-ownership="none">
31176             <doc xml:whitespace="preserve">+1 to move to the next item, -1 to move to the previous</doc>
31177             <type name="gint"/>
31178           </parameter>
31179         </parameters>
31180       </glib:signal>
31181       <glib:signal name="selection-done">
31182         <return-value transfer-ownership="none">
31183           <type name="none"/>
31184         </return-value>
31185       </glib:signal>
31186     </class>
31187     <record name="MenuShellClass"
31188             c:type="GtkMenuShellClass"
31189             glib:is-gtype-struct-for="MenuShell">
31190       <field name="parent_class">
31191         <type name="ContainerClass" c:type="GtkContainerClass"/>
31192       </field>
31193       <field name="submenu_placement" bits="1">
31194         <type name="guint" c:type="guint"/>
31195       </field>
31196       <field name="deactivate">
31197         <callback name="deactivate">
31198           <return-value transfer-ownership="none">
31199             <type name="none" c:type="void"/>
31200           </return-value>
31201           <parameters>
31202             <parameter name="menu_shell" transfer-ownership="none">
31203               <type name="MenuShell" c:type="GtkMenuShell*"/>
31204             </parameter>
31205           </parameters>
31206         </callback>
31207       </field>
31208       <field name="selection_done">
31209         <callback name="selection_done">
31210           <return-value transfer-ownership="none">
31211             <type name="none" c:type="void"/>
31212           </return-value>
31213           <parameters>
31214             <parameter name="menu_shell" transfer-ownership="none">
31215               <type name="MenuShell" c:type="GtkMenuShell*"/>
31216             </parameter>
31217           </parameters>
31218         </callback>
31219       </field>
31220       <field name="move_current">
31221         <callback name="move_current">
31222           <return-value transfer-ownership="none">
31223             <type name="none" c:type="void"/>
31224           </return-value>
31225           <parameters>
31226             <parameter name="menu_shell" transfer-ownership="none">
31227               <type name="MenuShell" c:type="GtkMenuShell*"/>
31228             </parameter>
31229             <parameter name="direction" transfer-ownership="none">
31230               <type name="MenuDirectionType" c:type="GtkMenuDirectionType"/>
31231             </parameter>
31232           </parameters>
31233         </callback>
31234       </field>
31235       <field name="activate_current">
31236         <callback name="activate_current">
31237           <return-value transfer-ownership="none">
31238             <type name="none" c:type="void"/>
31239           </return-value>
31240           <parameters>
31241             <parameter name="menu_shell" transfer-ownership="none">
31242               <type name="MenuShell" c:type="GtkMenuShell*"/>
31243             </parameter>
31244             <parameter name="force_hide" transfer-ownership="none">
31245               <type name="gboolean" c:type="gboolean"/>
31246             </parameter>
31247           </parameters>
31248         </callback>
31249       </field>
31250       <field name="cancel">
31251         <callback name="cancel">
31252           <return-value transfer-ownership="none">
31253             <type name="none" c:type="void"/>
31254           </return-value>
31255           <parameters>
31256             <parameter name="menu_shell" transfer-ownership="none">
31257               <type name="MenuShell" c:type="GtkMenuShell*"/>
31258             </parameter>
31259           </parameters>
31260         </callback>
31261       </field>
31262       <field name="select_item">
31263         <callback name="select_item">
31264           <return-value transfer-ownership="none">
31265             <type name="none" c:type="void"/>
31266           </return-value>
31267           <parameters>
31268             <parameter name="menu_shell" transfer-ownership="none">
31269               <type name="MenuShell" c:type="GtkMenuShell*"/>
31270             </parameter>
31271             <parameter name="menu_item" transfer-ownership="none">
31272               <type name="Widget" c:type="GtkWidget*"/>
31273             </parameter>
31274           </parameters>
31275         </callback>
31276       </field>
31277       <field name="insert">
31278         <callback name="insert">
31279           <return-value transfer-ownership="none">
31280             <type name="none" c:type="void"/>
31281           </return-value>
31282           <parameters>
31283             <parameter name="menu_shell" transfer-ownership="none">
31284               <type name="MenuShell" c:type="GtkMenuShell*"/>
31285             </parameter>
31286             <parameter name="child" transfer-ownership="none">
31287               <type name="Widget" c:type="GtkWidget*"/>
31288             </parameter>
31289             <parameter name="position" transfer-ownership="none">
31290               <type name="gint" c:type="gint"/>
31291             </parameter>
31292           </parameters>
31293         </callback>
31294       </field>
31295       <field name="get_popup_delay">
31296         <callback name="get_popup_delay">
31297           <return-value transfer-ownership="none">
31298             <type name="gint" c:type="gint"/>
31299           </return-value>
31300           <parameters>
31301             <parameter name="menu_shell" transfer-ownership="none">
31302               <type name="MenuShell" c:type="GtkMenuShell*"/>
31303             </parameter>
31304           </parameters>
31305         </callback>
31306       </field>
31307       <field name="move_selected">
31308         <callback name="move_selected">
31309           <return-value transfer-ownership="none">
31310             <type name="gboolean" c:type="gboolean"/>
31311           </return-value>
31312           <parameters>
31313             <parameter name="menu_shell" transfer-ownership="none">
31314               <type name="MenuShell" c:type="GtkMenuShell*"/>
31315             </parameter>
31316             <parameter name="distance" transfer-ownership="none">
31317               <type name="gint" c:type="gint"/>
31318             </parameter>
31319           </parameters>
31320         </callback>
31321       </field>
31322       <field name="_gtk_reserved1" introspectable="0">
31323         <callback name="_gtk_reserved1">
31324           <return-value transfer-ownership="none">
31325             <type name="none" c:type="void"/>
31326           </return-value>
31327         </callback>
31328       </field>
31329       <field name="_gtk_reserved2" introspectable="0">
31330         <callback name="_gtk_reserved2">
31331           <return-value transfer-ownership="none">
31332             <type name="none" c:type="void"/>
31333           </return-value>
31334         </callback>
31335       </field>
31336     </record>
31337     <class name="MenuToolButton"
31338            c:symbol-prefix="menu_tool_button"
31339            c:type="GtkMenuToolButton"
31340            parent="ToolButton"
31341            glib:type-name="GtkMenuToolButton"
31342            glib:get-type="gtk_menu_tool_button_get_type"
31343            glib:type-struct="MenuToolButtonClass">
31344       <implements name="Atk.ImplementorIface"/>
31345       <implements name="Activatable"/>
31346       <implements name="Buildable"/>
31347       <implements name="SizeRequest"/>
31348       <constructor name="new"
31349                    c:identifier="gtk_menu_tool_button_new"
31350                    version="2.6">
31351         <doc xml:whitespace="preserve">Creates a new #GtkMenuToolButton using @icon_widget as icon and</doc>
31352         <return-value transfer-ownership="none">
31353           <doc xml:whitespace="preserve">the new #GtkMenuToolButton</doc>
31354           <type name="ToolItem" c:type="GtkToolItem*"/>
31355         </return-value>
31356         <parameters>
31357           <parameter name="icon_widget"
31358                      transfer-ownership="none"
31359                      allow-none="1">
31360             <doc xml:whitespace="preserve">a widget that will be used as icon widget, or %NULL</doc>
31361             <type name="Widget" c:type="GtkWidget*"/>
31362           </parameter>
31363           <parameter name="label" transfer-ownership="none" allow-none="1">
31364             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL</doc>
31365             <type name="utf8" c:type="gchar*"/>
31366           </parameter>
31367         </parameters>
31368       </constructor>
31369       <constructor name="new_from_stock"
31370                    c:identifier="gtk_menu_tool_button_new_from_stock"
31371                    version="2.6">
31372         <doc xml:whitespace="preserve">Creates a new #GtkMenuToolButton.
31373 The new #GtkMenuToolButton will contain an icon and label from
31374 the stock item indicated by @stock_id.</doc>
31375         <return-value transfer-ownership="none">
31376           <doc xml:whitespace="preserve">the new #GtkMenuToolButton</doc>
31377           <type name="ToolItem" c:type="GtkToolItem*"/>
31378         </return-value>
31379         <parameters>
31380           <parameter name="stock_id" transfer-ownership="none">
31381             <doc xml:whitespace="preserve">the name of a stock item</doc>
31382             <type name="utf8" c:type="gchar*"/>
31383           </parameter>
31384         </parameters>
31385       </constructor>
31386       <method name="get_menu"
31387               c:identifier="gtk_menu_tool_button_get_menu"
31388               version="2.6">
31389         <doc xml:whitespace="preserve">Gets the #GtkMenu associated with #GtkMenuToolButton.
31390 with #GtkMenuToolButton</doc>
31391         <return-value transfer-ownership="none">
31392           <doc xml:whitespace="preserve">the #GtkMenu associated</doc>
31393           <type name="Widget" c:type="GtkWidget*"/>
31394         </return-value>
31395       </method>
31396       <method name="set_arrow_tooltip_markup"
31397               c:identifier="gtk_menu_tool_button_set_arrow_tooltip_markup"
31398               version="2.12">
31399         <doc xml:whitespace="preserve">Sets the tooltip markup text to be used as tooltip for the arrow button
31400 which pops up the menu.  See gtk_tool_item_set_tooltip_text() for setting a
31401 tooltip on the whole #GtkMenuToolButton.</doc>
31402         <return-value transfer-ownership="none">
31403           <type name="none" c:type="void"/>
31404         </return-value>
31405         <parameters>
31406           <parameter name="markup" transfer-ownership="none">
31407             <doc xml:whitespace="preserve">markup text to be used as tooltip text for button's arrow button</doc>
31408             <type name="utf8" c:type="gchar*"/>
31409           </parameter>
31410         </parameters>
31411       </method>
31412       <method name="set_arrow_tooltip_text"
31413               c:identifier="gtk_menu_tool_button_set_arrow_tooltip_text"
31414               version="2.12">
31415         <doc xml:whitespace="preserve">Sets the tooltip text to be used as tooltip for the arrow button which
31416 pops up the menu.  See gtk_tool_item_set_tooltip_text() for setting a tooltip
31417 on the whole #GtkMenuToolButton.</doc>
31418         <return-value transfer-ownership="none">
31419           <type name="none" c:type="void"/>
31420         </return-value>
31421         <parameters>
31422           <parameter name="text" transfer-ownership="none">
31423             <doc xml:whitespace="preserve">text to be used as tooltip text for button's arrow button</doc>
31424             <type name="utf8" c:type="gchar*"/>
31425           </parameter>
31426         </parameters>
31427       </method>
31428       <method name="set_menu"
31429               c:identifier="gtk_menu_tool_button_set_menu"
31430               version="2.6">
31431         <doc xml:whitespace="preserve">Sets the #GtkMenu that is popped up when the user clicks on the arrow.
31432 If @menu is NULL, the arrow button becomes insensitive.</doc>
31433         <return-value transfer-ownership="none">
31434           <type name="none" c:type="void"/>
31435         </return-value>
31436         <parameters>
31437           <parameter name="menu" transfer-ownership="none">
31438             <doc xml:whitespace="preserve">the #GtkMenu associated with #GtkMenuToolButton</doc>
31439             <type name="Widget" c:type="GtkWidget*"/>
31440           </parameter>
31441         </parameters>
31442       </method>
31443       <property name="menu" writable="1" transfer-ownership="none">
31444         <type name="Menu"/>
31445       </property>
31446       <field name="parent">
31447         <type name="ToolButton" c:type="GtkToolButton"/>
31448       </field>
31449       <field name="priv">
31450         <type name="MenuToolButtonPrivate" c:type="GtkMenuToolButtonPrivate*"/>
31451       </field>
31452       <glib:signal name="show-menu">
31453         <doc xml:whitespace="preserve">The ::show-menu signal is emitted before the menu is shown.
31454 It can be used to populate the menu on demand, using 
31455 gtk_menu_tool_button_get_menu(). 
31456 Note that even if you populate the menu dynamically in this way, 
31457 you must set an empty menu on the #GtkMenuToolButton beforehand,
31458 since the arrow is made insensitive if the menu is not set.</doc>
31459         <return-value transfer-ownership="none">
31460           <type name="none"/>
31461         </return-value>
31462       </glib:signal>
31463     </class>
31464     <record name="MenuToolButtonClass"
31465             c:type="GtkMenuToolButtonClass"
31466             glib:is-gtype-struct-for="MenuToolButton">
31467       <field name="parent_class">
31468         <type name="ToolButtonClass" c:type="GtkToolButtonClass"/>
31469       </field>
31470       <field name="show_menu">
31471         <callback name="show_menu">
31472           <return-value transfer-ownership="none">
31473             <type name="none" c:type="void"/>
31474           </return-value>
31475           <parameters>
31476             <parameter name="button" transfer-ownership="none">
31477               <type name="MenuToolButton" c:type="GtkMenuToolButton*"/>
31478             </parameter>
31479           </parameters>
31480         </callback>
31481       </field>
31482       <field name="_gtk_reserved1" introspectable="0">
31483         <callback name="_gtk_reserved1">
31484           <return-value transfer-ownership="none">
31485             <type name="none" c:type="void"/>
31486           </return-value>
31487         </callback>
31488       </field>
31489       <field name="_gtk_reserved2" introspectable="0">
31490         <callback name="_gtk_reserved2">
31491           <return-value transfer-ownership="none">
31492             <type name="none" c:type="void"/>
31493           </return-value>
31494         </callback>
31495       </field>
31496       <field name="_gtk_reserved3" introspectable="0">
31497         <callback name="_gtk_reserved3">
31498           <return-value transfer-ownership="none">
31499             <type name="none" c:type="void"/>
31500           </return-value>
31501         </callback>
31502       </field>
31503       <field name="_gtk_reserved4" introspectable="0">
31504         <callback name="_gtk_reserved4">
31505           <return-value transfer-ownership="none">
31506             <type name="none" c:type="void"/>
31507           </return-value>
31508         </callback>
31509       </field>
31510     </record>
31511     <record name="MenuToolButtonPrivate"
31512             c:type="GtkMenuToolButtonPrivate"
31513             disguised="1">
31514     </record>
31515     <class name="MessageDialog"
31516            c:symbol-prefix="message_dialog"
31517            c:type="GtkMessageDialog"
31518            parent="Dialog"
31519            glib:type-name="GtkMessageDialog"
31520            glib:get-type="gtk_message_dialog_get_type"
31521            glib:type-struct="MessageDialogClass">
31522       <implements name="Atk.ImplementorIface"/>
31523       <implements name="Buildable"/>
31524       <implements name="SizeRequest"/>
31525       <constructor name="new"
31526                    c:identifier="gtk_message_dialog_new"
31527                    introspectable="0">
31528         <doc xml:whitespace="preserve">Creates a new message dialog, which is a simple dialog with an icon
31529 indicating the dialog type (error, warning, etc.) and some text the
31530 user may want to see. When the user clicks a button a "response"
31531 signal is emitted with response IDs from #GtkResponseType. See
31532 #GtkDialog for more details.</doc>
31533         <return-value transfer-ownership="none">
31534           <doc xml:whitespace="preserve">a new #GtkMessageDialog</doc>
31535           <type name="Widget" c:type="GtkWidget*"/>
31536         </return-value>
31537         <parameters>
31538           <parameter name="parent" transfer-ownership="none" allow-none="1">
31539             <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
31540             <type name="Window" c:type="GtkWindow*"/>
31541           </parameter>
31542           <parameter name="flags" transfer-ownership="none">
31543             <doc xml:whitespace="preserve">flags</doc>
31544             <type name="DialogFlags" c:type="GtkDialogFlags"/>
31545           </parameter>
31546           <parameter name="type" transfer-ownership="none">
31547             <doc xml:whitespace="preserve">type of message</doc>
31548             <type name="MessageType" c:type="GtkMessageType"/>
31549           </parameter>
31550           <parameter name="buttons" transfer-ownership="none">
31551             <doc xml:whitespace="preserve">set of buttons to use</doc>
31552             <type name="ButtonsType" c:type="GtkButtonsType"/>
31553           </parameter>
31554           <parameter name="message_format"
31555                      transfer-ownership="none"
31556                      allow-none="1">
31557             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
31558             <type name="utf8" c:type="gchar*"/>
31559           </parameter>
31560           <parameter transfer-ownership="none">
31561             <varargs>
31562             </varargs>
31563           </parameter>
31564         </parameters>
31565       </constructor>
31566       <constructor name="new_with_markup"
31567                    c:identifier="gtk_message_dialog_new_with_markup"
31568                    version="2.4"
31569                    introspectable="0">
31570         <doc xml:whitespace="preserve">Creates a new message dialog, which is a simple dialog with an icon
31571 indicating the dialog type (error, warning, etc.) and some text which
31572 is marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
31573 When the user clicks a button a "response" signal is emitted with
31574 response IDs from #GtkResponseType. See #GtkDialog for more details.
31575 Special XML characters in the printf() arguments passed to this
31576 function will automatically be escaped as necessary.
31577 (See g_markup_printf_escaped() for how this is implemented.)
31578 Usually this is what you want, but if you have an existing
31579 Pango markup string that you want to use literally as the
31580 label, then you need to use gtk_message_dialog_set_markup()
31581 instead, since you can't pass the markup string either
31582 as the format (it might contain '%' characters) or as a string
31583 argument.
31584 |[
31585 GtkWidget *dialog;
31586 dialog = gtk_message_dialog_new (main_application_window,
31587 GTK_DIALOG_DESTROY_WITH_PARENT,
31588 GTK_MESSAGE_ERROR,
31589 GTK_BUTTONS_CLOSE,
31590 NULL);
31591 gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (dialog),
31592 markup);
31593 ]|</doc>
31594         <return-value transfer-ownership="none">
31595           <doc xml:whitespace="preserve">a new #GtkMessageDialog</doc>
31596           <type name="Widget" c:type="GtkWidget*"/>
31597         </return-value>
31598         <parameters>
31599           <parameter name="parent" transfer-ownership="none" allow-none="1">
31600             <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
31601             <type name="Window" c:type="GtkWindow*"/>
31602           </parameter>
31603           <parameter name="flags" transfer-ownership="none">
31604             <doc xml:whitespace="preserve">flags</doc>
31605             <type name="DialogFlags" c:type="GtkDialogFlags"/>
31606           </parameter>
31607           <parameter name="type" transfer-ownership="none">
31608             <doc xml:whitespace="preserve">type of message</doc>
31609             <type name="MessageType" c:type="GtkMessageType"/>
31610           </parameter>
31611           <parameter name="buttons" transfer-ownership="none">
31612             <doc xml:whitespace="preserve">set of buttons to use</doc>
31613             <type name="ButtonsType" c:type="GtkButtonsType"/>
31614           </parameter>
31615           <parameter name="message_format"
31616                      transfer-ownership="none"
31617                      allow-none="1">
31618             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
31619             <type name="utf8" c:type="gchar*"/>
31620           </parameter>
31621           <parameter transfer-ownership="none">
31622             <varargs>
31623             </varargs>
31624           </parameter>
31625         </parameters>
31626       </constructor>
31627       <method name="format_secondary_markup"
31628               c:identifier="gtk_message_dialog_format_secondary_markup"
31629               version="2.6"
31630               introspectable="0">
31631         <doc xml:whitespace="preserve">Sets the secondary text of the message dialog to be @message_format (with 
31632 printf()-style), which is marked up with the 
31633 &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
31634 Note that setting a secondary text makes the primary text become
31635 bold, unless you have provided explicit markup.
31636 Due to an oversight, this function does not escape special XML characters
31637 like gtk_message_dialog_new_with_markup() does. Thus, if the arguments 
31638 may contain special XML characters, you should use g_markup_printf_escaped()
31639 to escape it.
31640 &lt;informalexample&gt;&lt;programlisting&gt;
31641 gchar *msg;
31642 msg = g_markup_printf_escaped (message_format, ...);
31643 gtk_message_dialog_format_secondary_markup (message_dialog, "&amp;percnt;s", msg);
31644 g_free (msg);
31645 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
31646         <return-value transfer-ownership="none">
31647           <type name="none" c:type="void"/>
31648         </return-value>
31649         <parameters>
31650           <parameter name="message_format" transfer-ownership="none">
31651             <doc xml:whitespace="preserve">printf()-style markup string (see</doc>
31652             <type name="utf8" c:type="gchar*"/>
31653           </parameter>
31654           <parameter transfer-ownership="none">
31655             <varargs>
31656             </varargs>
31657           </parameter>
31658         </parameters>
31659       </method>
31660       <method name="format_secondary_text"
31661               c:identifier="gtk_message_dialog_format_secondary_text"
31662               version="2.6"
31663               introspectable="0">
31664         <doc xml:whitespace="preserve">Sets the secondary text of the message dialog to be @message_format 
31665 (with printf()-style).
31666 Note that setting a secondary text makes the primary text become
31667 bold, unless you have provided explicit markup.</doc>
31668         <return-value transfer-ownership="none">
31669           <type name="none" c:type="void"/>
31670         </return-value>
31671         <parameters>
31672           <parameter name="message_format"
31673                      transfer-ownership="none"
31674                      allow-none="1">
31675             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
31676             <type name="utf8" c:type="gchar*"/>
31677           </parameter>
31678           <parameter transfer-ownership="none">
31679             <varargs>
31680             </varargs>
31681           </parameter>
31682         </parameters>
31683       </method>
31684       <method name="get_image"
31685               c:identifier="gtk_message_dialog_get_image"
31686               version="2.14">
31687         <doc xml:whitespace="preserve">Gets the dialog's image.</doc>
31688         <return-value transfer-ownership="none">
31689           <doc xml:whitespace="preserve">the dialog's image</doc>
31690           <type name="Widget" c:type="GtkWidget*"/>
31691         </return-value>
31692       </method>
31693       <method name="get_message_area"
31694               c:identifier="gtk_message_dialog_get_message_area"
31695               version="2.22">
31696         <doc xml:whitespace="preserve">Returns the message area of the dialog. This is the box where the
31697 dialog's primary and secondary labels are packed. You can add your
31698 own extra content to that box and it will appear below those labels,
31699 on the right side of the dialog's image (or on the left for right-to-left
31700 languages).  See gtk_dialog_get_content_area() for the corresponding
31701 function in the parent #GtkDialog.
31702 "message area" in the @message_dialog.</doc>
31703         <return-value transfer-ownership="none">
31704           <doc xml:whitespace="preserve">A #GtkVBox corresponding to the</doc>
31705           <type name="Widget" c:type="GtkWidget*"/>
31706         </return-value>
31707       </method>
31708       <method name="set_image"
31709               c:identifier="gtk_message_dialog_set_image"
31710               version="2.10">
31711         <doc xml:whitespace="preserve">Sets the dialog's image to @image.</doc>
31712         <return-value transfer-ownership="none">
31713           <type name="none" c:type="void"/>
31714         </return-value>
31715         <parameters>
31716           <parameter name="image" transfer-ownership="none">
31717             <doc xml:whitespace="preserve">the image</doc>
31718             <type name="Widget" c:type="GtkWidget*"/>
31719           </parameter>
31720         </parameters>
31721       </method>
31722       <method name="set_markup"
31723               c:identifier="gtk_message_dialog_set_markup"
31724               version="2.4">
31725         <doc xml:whitespace="preserve">Sets the text of the message dialog to be @str, which is marked
31726 up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
31727 language&lt;/link&gt;.</doc>
31728         <return-value transfer-ownership="none">
31729           <type name="none" c:type="void"/>
31730         </return-value>
31731         <parameters>
31732           <parameter name="str" transfer-ownership="none">
31733             <doc xml:whitespace="preserve">markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
31734             <type name="utf8" c:type="gchar*"/>
31735           </parameter>
31736         </parameters>
31737       </method>
31738       <property name="buttons"
31739                 readable="0"
31740                 writable="1"
31741                 construct-only="1"
31742                 transfer-ownership="none">
31743         <type name="ButtonsType"/>
31744       </property>
31745       <property name="image"
31746                 version="2.10"
31747                 writable="1"
31748                 transfer-ownership="none">
31749         <doc xml:whitespace="preserve">The image for this dialog.</doc>
31750         <type name="Widget"/>
31751       </property>
31752       <property name="message-area" transfer-ownership="none">
31753         <type name="Widget"/>
31754       </property>
31755       <property name="message-type"
31756                 writable="1"
31757                 construct="1"
31758                 transfer-ownership="none">
31759         <doc xml:whitespace="preserve">The type of the message. The type is used to determine
31760 the image that is shown in the dialog, unless the image is 
31761 explicitly set by the ::image property.</doc>
31762         <type name="MessageType"/>
31763       </property>
31764       <property name="secondary-text"
31765                 version="2.10"
31766                 writable="1"
31767                 transfer-ownership="none">
31768         <doc xml:whitespace="preserve">The secondary text of the message dialog.</doc>
31769         <type name="utf8"/>
31770       </property>
31771       <property name="secondary-use-markup"
31772                 version="2.10"
31773                 writable="1"
31774                 transfer-ownership="none">
31775         <doc xml:whitespace="preserve">%TRUE if the secondary text of the dialog includes Pango markup. 
31776 See pango_parse_markup().</doc>
31777         <type name="gboolean"/>
31778       </property>
31779       <property name="text"
31780                 version="2.10"
31781                 writable="1"
31782                 transfer-ownership="none">
31783         <doc xml:whitespace="preserve">The primary text of the message dialog. If the dialog has 
31784 a secondary text, this will appear as the title.</doc>
31785         <type name="utf8"/>
31786       </property>
31787       <property name="use-markup"
31788                 version="2.10"
31789                 writable="1"
31790                 transfer-ownership="none">
31791         <doc xml:whitespace="preserve">%TRUE if the primary text of the dialog includes Pango markup. 
31792 See pango_parse_markup().</doc>
31793         <type name="gboolean"/>
31794       </property>
31795       <field name="parent_instance">
31796         <type name="Dialog" c:type="GtkDialog"/>
31797       </field>
31798       <field name="priv">
31799         <type name="MessageDialogPrivate" c:type="GtkMessageDialogPrivate*"/>
31800       </field>
31801     </class>
31802     <record name="MessageDialogClass"
31803             c:type="GtkMessageDialogClass"
31804             glib:is-gtype-struct-for="MessageDialog">
31805       <field name="parent_class">
31806         <type name="DialogClass" c:type="GtkDialogClass"/>
31807       </field>
31808       <field name="_gtk_reserved1" introspectable="0">
31809         <callback name="_gtk_reserved1">
31810           <return-value transfer-ownership="none">
31811             <type name="none" c:type="void"/>
31812           </return-value>
31813         </callback>
31814       </field>
31815       <field name="_gtk_reserved2" introspectable="0">
31816         <callback name="_gtk_reserved2">
31817           <return-value transfer-ownership="none">
31818             <type name="none" c:type="void"/>
31819           </return-value>
31820         </callback>
31821       </field>
31822       <field name="_gtk_reserved3" introspectable="0">
31823         <callback name="_gtk_reserved3">
31824           <return-value transfer-ownership="none">
31825             <type name="none" c:type="void"/>
31826           </return-value>
31827         </callback>
31828       </field>
31829       <field name="_gtk_reserved4" introspectable="0">
31830         <callback name="_gtk_reserved4">
31831           <return-value transfer-ownership="none">
31832             <type name="none" c:type="void"/>
31833           </return-value>
31834         </callback>
31835       </field>
31836     </record>
31837     <record name="MessageDialogPrivate"
31838             c:type="GtkMessageDialogPrivate"
31839             disguised="1">
31840     </record>
31841     <enumeration name="MessageType"
31842                  glib:type-name="GtkMessageType"
31843                  glib:get-type="gtk_message_type_get_type"
31844                  c:type="GtkMessageType">
31845       <doc xml:whitespace="preserve">The type of message being displayed in the dialog.</doc>
31846       <member name="info"
31847               value="0"
31848               c:identifier="GTK_MESSAGE_INFO"
31849               glib:nick="info"/>
31850       <member name="warning"
31851               value="1"
31852               c:identifier="GTK_MESSAGE_WARNING"
31853               glib:nick="warning"/>
31854       <member name="question"
31855               value="2"
31856               c:identifier="GTK_MESSAGE_QUESTION"
31857               glib:nick="question"/>
31858       <member name="error"
31859               value="3"
31860               c:identifier="GTK_MESSAGE_ERROR"
31861               glib:nick="error"/>
31862       <member name="other"
31863               value="4"
31864               c:identifier="GTK_MESSAGE_OTHER"
31865               glib:nick="other"/>
31866     </enumeration>
31867     <enumeration name="MetricType"
31868                  glib:type-name="GtkMetricType"
31869                  glib:get-type="gtk_metric_type_get_type"
31870                  c:type="GtkMetricType">
31871       <member name="pixels"
31872               value="0"
31873               c:identifier="GTK_PIXELS"
31874               glib:nick="pixels"/>
31875       <member name="inches"
31876               value="1"
31877               c:identifier="GTK_INCHES"
31878               glib:nick="inches"/>
31879       <member name="centimeters"
31880               value="2"
31881               c:identifier="GTK_CENTIMETERS"
31882               glib:nick="centimeters"/>
31883     </enumeration>
31884     <class name="Misc"
31885            c:symbol-prefix="misc"
31886            c:type="GtkMisc"
31887            parent="Widget"
31888            abstract="1"
31889            glib:type-name="GtkMisc"
31890            glib:get-type="gtk_misc_get_type"
31891            glib:type-struct="MiscClass">
31892       <implements name="Atk.ImplementorIface"/>
31893       <implements name="Buildable"/>
31894       <implements name="SizeRequest"/>
31895       <method name="get_alignment" c:identifier="gtk_misc_get_alignment">
31896         <doc xml:whitespace="preserve">Gets the X and Y alignment of the widget within its allocation. 
31897 See gtk_misc_set_alignment().</doc>
31898         <return-value transfer-ownership="none">
31899           <type name="none" c:type="void"/>
31900         </return-value>
31901         <parameters>
31902           <parameter name="xalign" transfer-ownership="none" allow-none="1">
31903             <doc xml:whitespace="preserve">location to store X alignment of @misc, or %NULL</doc>
31904             <type name="gfloat" c:type="gfloat*"/>
31905           </parameter>
31906           <parameter name="yalign" transfer-ownership="none" allow-none="1">
31907             <doc xml:whitespace="preserve">location to store Y alignment of @misc, or %NULL</doc>
31908             <type name="gfloat" c:type="gfloat*"/>
31909           </parameter>
31910         </parameters>
31911       </method>
31912       <method name="get_padding" c:identifier="gtk_misc_get_padding">
31913         <doc xml:whitespace="preserve">Gets the padding in the X and Y directions of the widget. 
31914 See gtk_misc_set_padding().</doc>
31915         <return-value transfer-ownership="none">
31916           <type name="none" c:type="void"/>
31917         </return-value>
31918         <parameters>
31919           <parameter name="xpad" transfer-ownership="none" allow-none="1">
31920             <doc xml:whitespace="preserve">location to store padding in the X direction, or %NULL</doc>
31921             <type name="gint" c:type="gint*"/>
31922           </parameter>
31923           <parameter name="ypad" transfer-ownership="none" allow-none="1">
31924             <doc xml:whitespace="preserve">location to store padding in the Y direction, or %NULL</doc>
31925             <type name="gint" c:type="gint*"/>
31926           </parameter>
31927         </parameters>
31928       </method>
31929       <method name="set_alignment" c:identifier="gtk_misc_set_alignment">
31930         <return-value transfer-ownership="none">
31931           <type name="none" c:type="void"/>
31932         </return-value>
31933         <parameters>
31934           <parameter name="xalign" transfer-ownership="none">
31935             <type name="gfloat" c:type="gfloat"/>
31936           </parameter>
31937           <parameter name="yalign" transfer-ownership="none">
31938             <type name="gfloat" c:type="gfloat"/>
31939           </parameter>
31940         </parameters>
31941       </method>
31942       <method name="set_padding" c:identifier="gtk_misc_set_padding">
31943         <return-value transfer-ownership="none">
31944           <type name="none" c:type="void"/>
31945         </return-value>
31946         <parameters>
31947           <parameter name="xpad" transfer-ownership="none">
31948             <type name="gint" c:type="gint"/>
31949           </parameter>
31950           <parameter name="ypad" transfer-ownership="none">
31951             <type name="gint" c:type="gint"/>
31952           </parameter>
31953         </parameters>
31954       </method>
31955       <property name="xalign" writable="1" transfer-ownership="none">
31956         <type name="gfloat"/>
31957       </property>
31958       <property name="xpad" writable="1" transfer-ownership="none">
31959         <type name="gint"/>
31960       </property>
31961       <property name="yalign" writable="1" transfer-ownership="none">
31962         <type name="gfloat"/>
31963       </property>
31964       <property name="ypad" writable="1" transfer-ownership="none">
31965         <type name="gint"/>
31966       </property>
31967       <field name="widget">
31968         <type name="Widget" c:type="GtkWidget"/>
31969       </field>
31970       <field name="priv" readable="0" private="1">
31971         <type name="MiscPrivate" c:type="GtkMiscPrivate*"/>
31972       </field>
31973     </class>
31974     <record name="MiscClass"
31975             c:type="GtkMiscClass"
31976             glib:is-gtype-struct-for="Misc">
31977       <field name="parent_class">
31978         <type name="WidgetClass" c:type="GtkWidgetClass"/>
31979       </field>
31980     </record>
31981     <record name="MiscPrivate" c:type="GtkMiscPrivate" disguised="1">
31982     </record>
31983     <callback name="ModuleDisplayInitFunc" c:type="GtkModuleDisplayInitFunc">
31984       <return-value transfer-ownership="none">
31985         <type name="none" c:type="void"/>
31986       </return-value>
31987       <parameters>
31988         <parameter name="display" transfer-ownership="none">
31989           <type name="Gdk.Display" c:type="GdkDisplay*"/>
31990         </parameter>
31991       </parameters>
31992     </callback>
31993     <callback name="ModuleInitFunc" c:type="GtkModuleInitFunc">
31994       <return-value transfer-ownership="none">
31995         <type name="none" c:type="void"/>
31996       </return-value>
31997       <parameters>
31998         <parameter name="argc" transfer-ownership="none">
31999           <type name="gint" c:type="gint*"/>
32000         </parameter>
32001         <parameter name="argv" transfer-ownership="none">
32002           <type name="utf8" c:type="gchar***"/>
32003         </parameter>
32004       </parameters>
32005     </callback>
32006     <class name="MountOperation"
32007            c:symbol-prefix="mount_operation"
32008            c:type="GtkMountOperation"
32009            parent="Gio.MountOperation"
32010            glib:type-name="GtkMountOperation"
32011            glib:get-type="gtk_mount_operation_get_type"
32012            glib:type-struct="MountOperationClass">
32013       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
32014       <constructor name="new"
32015                    c:identifier="gtk_mount_operation_new"
32016                    version="2.14">
32017         <doc xml:whitespace="preserve">Creates a new #GtkMountOperation</doc>
32018         <return-value transfer-ownership="full">
32019           <doc xml:whitespace="preserve">a new #GtkMountOperation</doc>
32020           <type name="Gio.MountOperation" c:type="GMountOperation*"/>
32021         </return-value>
32022         <parameters>
32023           <parameter name="parent" transfer-ownership="none" allow-none="1">
32024             <doc xml:whitespace="preserve">transient parent of the window, or %NULL</doc>
32025             <type name="Window" c:type="GtkWindow*"/>
32026           </parameter>
32027         </parameters>
32028       </constructor>
32029       <method name="get_parent"
32030               c:identifier="gtk_mount_operation_get_parent"
32031               version="2.14">
32032         <doc xml:whitespace="preserve">Gets the transient parent used by the #GtkMountOperation</doc>
32033         <return-value transfer-ownership="none">
32034           <doc xml:whitespace="preserve">the transient parent for windows shown by @op</doc>
32035           <type name="Window" c:type="GtkWindow*"/>
32036         </return-value>
32037       </method>
32038       <method name="get_screen"
32039               c:identifier="gtk_mount_operation_get_screen"
32040               version="2.14">
32041         <doc xml:whitespace="preserve">Gets the screen on which windows of the #GtkMountOperation
32042 will be shown.</doc>
32043         <return-value transfer-ownership="none">
32044           <doc xml:whitespace="preserve">the screen on which windows of @op are shown</doc>
32045           <type name="Gdk.Screen" c:type="GdkScreen*"/>
32046         </return-value>
32047       </method>
32048       <method name="is_showing"
32049               c:identifier="gtk_mount_operation_is_showing"
32050               version="2.14">
32051         <doc xml:whitespace="preserve">Returns whether the #GtkMountOperation is currently displaying
32052 a window.</doc>
32053         <return-value transfer-ownership="none">
32054           <doc xml:whitespace="preserve">%TRUE if @op is currently displaying a window</doc>
32055           <type name="gboolean" c:type="gboolean"/>
32056         </return-value>
32057       </method>
32058       <method name="set_parent"
32059               c:identifier="gtk_mount_operation_set_parent"
32060               version="2.14">
32061         <doc xml:whitespace="preserve">Sets the transient parent for windows shown by the
32062 #GtkMountOperation.</doc>
32063         <return-value transfer-ownership="none">
32064           <type name="none" c:type="void"/>
32065         </return-value>
32066         <parameters>
32067           <parameter name="parent" transfer-ownership="none" allow-none="1">
32068             <doc xml:whitespace="preserve">transient parent of the window, or %NULL</doc>
32069             <type name="Window" c:type="GtkWindow*"/>
32070           </parameter>
32071         </parameters>
32072       </method>
32073       <method name="set_screen"
32074               c:identifier="gtk_mount_operation_set_screen"
32075               version="2.14">
32076         <doc xml:whitespace="preserve">Sets the screen to show windows of the #GtkMountOperation on.</doc>
32077         <return-value transfer-ownership="none">
32078           <type name="none" c:type="void"/>
32079         </return-value>
32080         <parameters>
32081           <parameter name="screen" transfer-ownership="none">
32082             <doc xml:whitespace="preserve">a #GdkScreen</doc>
32083             <type name="Gdk.Screen" c:type="GdkScreen*"/>
32084           </parameter>
32085         </parameters>
32086       </method>
32087       <property name="is-showing" transfer-ownership="none">
32088         <type name="gboolean"/>
32089       </property>
32090       <property name="parent" writable="1" transfer-ownership="none">
32091         <type name="Window"/>
32092       </property>
32093       <property name="screen" writable="1" transfer-ownership="none">
32094         <type name="Gdk.Screen"/>
32095       </property>
32096       <field name="parent_instance">
32097         <type name="Gio.MountOperation" c:type="GMountOperation"/>
32098       </field>
32099       <field name="priv">
32100         <type name="MountOperationPrivate" c:type="GtkMountOperationPrivate*"/>
32101       </field>
32102     </class>
32103     <record name="MountOperationClass"
32104             c:type="GtkMountOperationClass"
32105             glib:is-gtype-struct-for="MountOperation">
32106       <field name="parent_class">
32107         <type name="Gio.MountOperationClass" c:type="GMountOperationClass"/>
32108       </field>
32109       <field name="_gtk_reserved1" introspectable="0">
32110         <callback name="_gtk_reserved1">
32111           <return-value transfer-ownership="none">
32112             <type name="none" c:type="void"/>
32113           </return-value>
32114         </callback>
32115       </field>
32116       <field name="_gtk_reserved2" introspectable="0">
32117         <callback name="_gtk_reserved2">
32118           <return-value transfer-ownership="none">
32119             <type name="none" c:type="void"/>
32120           </return-value>
32121         </callback>
32122       </field>
32123       <field name="_gtk_reserved3" introspectable="0">
32124         <callback name="_gtk_reserved3">
32125           <return-value transfer-ownership="none">
32126             <type name="none" c:type="void"/>
32127           </return-value>
32128         </callback>
32129       </field>
32130       <field name="_gtk_reserved4" introspectable="0">
32131         <callback name="_gtk_reserved4">
32132           <return-value transfer-ownership="none">
32133             <type name="none" c:type="void"/>
32134           </return-value>
32135         </callback>
32136       </field>
32137     </record>
32138     <record name="MountOperationPrivate"
32139             c:type="GtkMountOperationPrivate"
32140             disguised="1">
32141     </record>
32142     <enumeration name="MovementStep"
32143                  glib:type-name="GtkMovementStep"
32144                  glib:get-type="gtk_movement_step_get_type"
32145                  c:type="GtkMovementStep">
32146       <member name="logical_positions"
32147               value="0"
32148               c:identifier="GTK_MOVEMENT_LOGICAL_POSITIONS"
32149               glib:nick="logical-positions"/>
32150       <member name="visual_positions"
32151               value="1"
32152               c:identifier="GTK_MOVEMENT_VISUAL_POSITIONS"
32153               glib:nick="visual-positions"/>
32154       <member name="words"
32155               value="2"
32156               c:identifier="GTK_MOVEMENT_WORDS"
32157               glib:nick="words"/>
32158       <member name="display_lines"
32159               value="3"
32160               c:identifier="GTK_MOVEMENT_DISPLAY_LINES"
32161               glib:nick="display-lines"/>
32162       <member name="display_line_ends"
32163               value="4"
32164               c:identifier="GTK_MOVEMENT_DISPLAY_LINE_ENDS"
32165               glib:nick="display-line-ends"/>
32166       <member name="paragraphs"
32167               value="5"
32168               c:identifier="GTK_MOVEMENT_PARAGRAPHS"
32169               glib:nick="paragraphs"/>
32170       <member name="paragraph_ends"
32171               value="6"
32172               c:identifier="GTK_MOVEMENT_PARAGRAPH_ENDS"
32173               glib:nick="paragraph-ends"/>
32174       <member name="pages"
32175               value="7"
32176               c:identifier="GTK_MOVEMENT_PAGES"
32177               glib:nick="pages"/>
32178       <member name="buffer_ends"
32179               value="8"
32180               c:identifier="GTK_MOVEMENT_BUFFER_ENDS"
32181               glib:nick="buffer-ends"/>
32182       <member name="horizontal_pages"
32183               value="9"
32184               c:identifier="GTK_MOVEMENT_HORIZONTAL_PAGES"
32185               glib:nick="horizontal-pages"/>
32186     </enumeration>
32187     <class name="Notebook"
32188            c:symbol-prefix="notebook"
32189            c:type="GtkNotebook"
32190            parent="Container"
32191            glib:type-name="GtkNotebook"
32192            glib:get-type="gtk_notebook_get_type"
32193            glib:type-struct="NotebookClass">
32194       <implements name="Atk.ImplementorIface"/>
32195       <implements name="Buildable"/>
32196       <implements name="SizeRequest"/>
32197       <constructor name="new" c:identifier="gtk_notebook_new">
32198         <doc xml:whitespace="preserve">Creates a new #GtkNotebook widget with no pages.</doc>
32199         <return-value transfer-ownership="none">
32200           <doc xml:whitespace="preserve">the newly created #GtkNotebook</doc>
32201           <type name="Widget" c:type="GtkWidget*"/>
32202         </return-value>
32203       </constructor>
32204       <virtual-method name="insert_page">
32205         <return-value transfer-ownership="none">
32206           <type name="gint" c:type="gint"/>
32207         </return-value>
32208         <parameters>
32209           <parameter name="child" transfer-ownership="none">
32210             <type name="Widget" c:type="GtkWidget*"/>
32211           </parameter>
32212           <parameter name="tab_label" transfer-ownership="none">
32213             <type name="Widget" c:type="GtkWidget*"/>
32214           </parameter>
32215           <parameter name="menu_label" transfer-ownership="none">
32216             <type name="Widget" c:type="GtkWidget*"/>
32217           </parameter>
32218           <parameter name="position" transfer-ownership="none">
32219             <type name="gint" c:type="gint"/>
32220           </parameter>
32221         </parameters>
32222       </virtual-method>
32223       <method name="append_page" c:identifier="gtk_notebook_append_page">
32224         <doc xml:whitespace="preserve">Appends a page to @notebook.
32225 page in the notebook, or -1 if function fails</doc>
32226         <return-value transfer-ownership="none">
32227           <doc xml:whitespace="preserve">the index (starting from 0) of the appended</doc>
32228           <type name="gint" c:type="gint"/>
32229         </return-value>
32230         <parameters>
32231           <parameter name="child" transfer-ownership="none">
32232             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32233             <type name="Widget" c:type="GtkWidget*"/>
32234           </parameter>
32235           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32236             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32237             <type name="Widget" c:type="GtkWidget*"/>
32238           </parameter>
32239         </parameters>
32240       </method>
32241       <method name="append_page_menu"
32242               c:identifier="gtk_notebook_append_page_menu">
32243         <doc xml:whitespace="preserve">Appends a page to @notebook, specifying the widget to use as the
32244 label in the popup menu.
32245 page in the notebook, or -1 if function fails</doc>
32246         <return-value transfer-ownership="none">
32247           <doc xml:whitespace="preserve">the index (starting from 0) of the appended</doc>
32248           <type name="gint" c:type="gint"/>
32249         </return-value>
32250         <parameters>
32251           <parameter name="child" transfer-ownership="none">
32252             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32253             <type name="Widget" c:type="GtkWidget*"/>
32254           </parameter>
32255           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32256             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32257             <type name="Widget" c:type="GtkWidget*"/>
32258           </parameter>
32259           <parameter name="menu_label"
32260                      transfer-ownership="none"
32261                      allow-none="1">
32262             <doc xml:whitespace="preserve">the widget to use as a label for the page-switch menu, if that is enabled. If %NULL, and @tab_label is a #GtkLabel or %NULL, then the menu label will be a newly created label with the same text as @tab_label; If @tab_label is not a #GtkLabel, @menu_label must be specified if the page-switch menu is to be used.</doc>
32263             <type name="Widget" c:type="GtkWidget*"/>
32264           </parameter>
32265         </parameters>
32266       </method>
32267       <method name="get_action_widget"
32268               c:identifier="gtk_notebook_get_action_widget"
32269               version="2.20">
32270         <doc xml:whitespace="preserve">Gets one of the action widgets. See gtk_notebook_set_action_widget().
32271 or %NULL when this action widget has not been set</doc>
32272         <return-value transfer-ownership="none">
32273           <doc xml:whitespace="preserve">The action widget with the given @pack_type</doc>
32274           <type name="Widget" c:type="GtkWidget*"/>
32275         </return-value>
32276         <parameters>
32277           <parameter name="pack_type" transfer-ownership="none">
32278             <doc xml:whitespace="preserve">pack type of the action widget to receive</doc>
32279             <type name="PackType" c:type="GtkPackType"/>
32280           </parameter>
32281         </parameters>
32282       </method>
32283       <method name="get_current_page"
32284               c:identifier="gtk_notebook_get_current_page">
32285         <doc xml:whitespace="preserve">Returns the page number of the current page.
32286 page in the notebook. If the notebook has no pages, then
32287 -1 will be returned.</doc>
32288         <return-value transfer-ownership="none">
32289           <doc xml:whitespace="preserve">the index (starting from 0) of the current</doc>
32290           <type name="gint" c:type="gint"/>
32291         </return-value>
32292       </method>
32293       <method name="get_group_name"
32294               c:identifier="gtk_notebook_get_group_name"
32295               version="2.24">
32296         <doc xml:whitespace="preserve">Gets the current group name for @notebook.
32297 or %NULL if none is set.</doc>
32298         <return-value transfer-ownership="none">
32299           <doc xml:whitespace="preserve">the group name,</doc>
32300           <type name="utf8" c:type="gchar*"/>
32301         </return-value>
32302       </method>
32303       <method name="get_menu_label" c:identifier="gtk_notebook_get_menu_label">
32304         <doc xml:whitespace="preserve">Retrieves the menu label widget of the page containing @child.
32305 notebook page does not have a menu label other than the
32306 default (the tab label).</doc>
32307         <return-value transfer-ownership="none">
32308           <doc xml:whitespace="preserve">the menu label, or %NULL if the</doc>
32309           <type name="Widget" c:type="GtkWidget*"/>
32310         </return-value>
32311         <parameters>
32312           <parameter name="child" transfer-ownership="none">
32313             <doc xml:whitespace="preserve">a widget contained in a page of @notebook</doc>
32314             <type name="Widget" c:type="GtkWidget*"/>
32315           </parameter>
32316         </parameters>
32317       </method>
32318       <method name="get_menu_label_text"
32319               c:identifier="gtk_notebook_get_menu_label_text">
32320         <doc xml:whitespace="preserve">Retrieves the text of the menu label for the page containing
32321 widget does not have a menu label other than
32322 the default menu label, or the menu label widget
32323 is not a #GtkLabel. The string is owned by
32324 the widget and must not be freed.</doc>
32325         <return-value transfer-ownership="none">
32326           <doc xml:whitespace="preserve">the text of the tab label, or %NULL if the</doc>
32327           <type name="utf8" c:type="gchar*"/>
32328         </return-value>
32329         <parameters>
32330           <parameter name="child" transfer-ownership="none">
32331             <doc xml:whitespace="preserve">the child widget of a page of the notebook.</doc>
32332             <type name="Widget" c:type="GtkWidget*"/>
32333           </parameter>
32334         </parameters>
32335       </method>
32336       <method name="get_n_pages"
32337               c:identifier="gtk_notebook_get_n_pages"
32338               version="2.2">
32339         <doc xml:whitespace="preserve">Gets the number of pages in a notebook.</doc>
32340         <return-value transfer-ownership="none">
32341           <doc xml:whitespace="preserve">the number of pages in the notebook.</doc>
32342           <type name="gint" c:type="gint"/>
32343         </return-value>
32344       </method>
32345       <method name="get_nth_page" c:identifier="gtk_notebook_get_nth_page">
32346         <doc xml:whitespace="preserve">Returns the child widget contained in page number @page_num.
32347 out of bounds.</doc>
32348         <return-value transfer-ownership="none">
32349           <doc xml:whitespace="preserve">the child widget, or %NULL if @page_num is</doc>
32350           <type name="Widget" c:type="GtkWidget*"/>
32351         </return-value>
32352         <parameters>
32353           <parameter name="page_num" transfer-ownership="none">
32354             <doc xml:whitespace="preserve">the index of a page in the notebook, or -1 to get the last page.</doc>
32355             <type name="gint" c:type="gint"/>
32356           </parameter>
32357         </parameters>
32358       </method>
32359       <method name="get_scrollable" c:identifier="gtk_notebook_get_scrollable">
32360         <doc xml:whitespace="preserve">Returns whether the tab label area has arrows for scrolling. See
32361 gtk_notebook_set_scrollable().</doc>
32362         <return-value transfer-ownership="none">
32363           <doc xml:whitespace="preserve">%TRUE if arrows for scrolling are present</doc>
32364           <type name="gboolean" c:type="gboolean"/>
32365         </return-value>
32366       </method>
32367       <method name="get_show_border"
32368               c:identifier="gtk_notebook_get_show_border">
32369         <doc xml:whitespace="preserve">Returns whether a bevel will be drawn around the notebook pages. See
32370 gtk_notebook_set_show_border().</doc>
32371         <return-value transfer-ownership="none">
32372           <doc xml:whitespace="preserve">%TRUE if the bevel is drawn</doc>
32373           <type name="gboolean" c:type="gboolean"/>
32374         </return-value>
32375       </method>
32376       <method name="get_show_tabs" c:identifier="gtk_notebook_get_show_tabs">
32377         <doc xml:whitespace="preserve">Returns whether the tabs of the notebook are shown. See
32378 gtk_notebook_set_show_tabs().</doc>
32379         <return-value transfer-ownership="none">
32380           <doc xml:whitespace="preserve">%TRUE if the tabs are shown</doc>
32381           <type name="gboolean" c:type="gboolean"/>
32382         </return-value>
32383       </method>
32384       <method name="get_tab_detachable"
32385               c:identifier="gtk_notebook_get_tab_detachable"
32386               version="2.10">
32387         <doc xml:whitespace="preserve">Returns whether the tab contents can be detached from @notebook.</doc>
32388         <return-value transfer-ownership="none">
32389           <doc xml:whitespace="preserve">TRUE if the tab is detachable.</doc>
32390           <type name="gboolean" c:type="gboolean"/>
32391         </return-value>
32392         <parameters>
32393           <parameter name="child" transfer-ownership="none">
32394             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
32395             <type name="Widget" c:type="GtkWidget*"/>
32396           </parameter>
32397         </parameters>
32398       </method>
32399       <method name="get_tab_hborder"
32400               c:identifier="gtk_notebook_get_tab_hborder"
32401               version="2.22">
32402         <doc xml:whitespace="preserve">Returns the horizontal width of a tab border.</doc>
32403         <return-value transfer-ownership="none">
32404           <doc xml:whitespace="preserve">horizontal width of a tab border</doc>
32405           <type name="guint16" c:type="guint16"/>
32406         </return-value>
32407       </method>
32408       <method name="get_tab_label" c:identifier="gtk_notebook_get_tab_label">
32409         <doc xml:whitespace="preserve">Returns the tab label widget for the page @child. %NULL is returned
32410 if @child is not in @notebook or if no tab label has specifically
32411 been set for @child.</doc>
32412         <return-value transfer-ownership="none">
32413           <doc xml:whitespace="preserve">the tab label</doc>
32414           <type name="Widget" c:type="GtkWidget*"/>
32415         </return-value>
32416         <parameters>
32417           <parameter name="child" transfer-ownership="none">
32418             <doc xml:whitespace="preserve">the page</doc>
32419             <type name="Widget" c:type="GtkWidget*"/>
32420           </parameter>
32421         </parameters>
32422       </method>
32423       <method name="get_tab_label_text"
32424               c:identifier="gtk_notebook_get_tab_label_text">
32425         <doc xml:whitespace="preserve">Retrieves the text of the tab label for the page containing
32426 tab label widget is not a #GtkLabel. The
32427 string is owned by the widget and must not
32428 be freed.</doc>
32429         <return-value transfer-ownership="none">
32430           <doc xml:whitespace="preserve">the text of the tab label, or %NULL if the</doc>
32431           <type name="utf8" c:type="gchar*"/>
32432         </return-value>
32433         <parameters>
32434           <parameter name="child" transfer-ownership="none">
32435             <doc xml:whitespace="preserve">a widget contained in a page of @notebook</doc>
32436             <type name="Widget" c:type="GtkWidget*"/>
32437           </parameter>
32438         </parameters>
32439       </method>
32440       <method name="get_tab_pos" c:identifier="gtk_notebook_get_tab_pos">
32441         <doc xml:whitespace="preserve">Gets the edge at which the tabs for switching pages in the
32442 notebook are drawn.</doc>
32443         <return-value transfer-ownership="none">
32444           <doc xml:whitespace="preserve">the edge at which the tabs are drawn</doc>
32445           <type name="PositionType" c:type="GtkPositionType"/>
32446         </return-value>
32447       </method>
32448       <method name="get_tab_reorderable"
32449               c:identifier="gtk_notebook_get_tab_reorderable"
32450               version="2.10">
32451         <doc xml:whitespace="preserve">Gets whether the tab can be reordered via drag and drop or not.</doc>
32452         <return-value transfer-ownership="none">
32453           <doc xml:whitespace="preserve">%TRUE if the tab is reorderable.</doc>
32454           <type name="gboolean" c:type="gboolean"/>
32455         </return-value>
32456         <parameters>
32457           <parameter name="child" transfer-ownership="none">
32458             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
32459             <type name="Widget" c:type="GtkWidget*"/>
32460           </parameter>
32461         </parameters>
32462       </method>
32463       <method name="get_tab_vborder"
32464               c:identifier="gtk_notebook_get_tab_vborder"
32465               version="2.22">
32466         <doc xml:whitespace="preserve">Returns the vertical width of a tab border.</doc>
32467         <return-value transfer-ownership="none">
32468           <doc xml:whitespace="preserve">vertical width of a tab border</doc>
32469           <type name="guint16" c:type="guint16"/>
32470         </return-value>
32471       </method>
32472       <method name="insert_page" c:identifier="gtk_notebook_insert_page">
32473         <doc xml:whitespace="preserve">Insert a page into @notebook at the given position.
32474 page in the notebook, or -1 if function fails</doc>
32475         <return-value transfer-ownership="none">
32476           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted</doc>
32477           <type name="gint" c:type="gint"/>
32478         </return-value>
32479         <parameters>
32480           <parameter name="child" transfer-ownership="none">
32481             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32482             <type name="Widget" c:type="GtkWidget*"/>
32483           </parameter>
32484           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32485             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32486             <type name="Widget" c:type="GtkWidget*"/>
32487           </parameter>
32488           <parameter name="position" transfer-ownership="none">
32489             <doc xml:whitespace="preserve">the index (starting at 0) at which to insert the page, or -1 to append the page after all other pages.</doc>
32490             <type name="gint" c:type="gint"/>
32491           </parameter>
32492         </parameters>
32493       </method>
32494       <method name="insert_page_menu"
32495               c:identifier="gtk_notebook_insert_page_menu">
32496         <doc xml:whitespace="preserve">Insert a page into @notebook at the given position, specifying
32497 the widget to use as the label in the popup menu.
32498 page in the notebook</doc>
32499         <return-value transfer-ownership="none">
32500           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted</doc>
32501           <type name="gint" c:type="gint"/>
32502         </return-value>
32503         <parameters>
32504           <parameter name="child" transfer-ownership="none">
32505             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32506             <type name="Widget" c:type="GtkWidget*"/>
32507           </parameter>
32508           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32509             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32510             <type name="Widget" c:type="GtkWidget*"/>
32511           </parameter>
32512           <parameter name="menu_label"
32513                      transfer-ownership="none"
32514                      allow-none="1">
32515             <doc xml:whitespace="preserve">the widget to use as a label for the page-switch menu, if that is enabled. If %NULL, and @tab_label is a #GtkLabel or %NULL, then the menu label will be a newly created label with the same text as @tab_label; If @tab_label is not a #GtkLabel, @menu_label must be specified if the page-switch menu is to be used.</doc>
32516             <type name="Widget" c:type="GtkWidget*"/>
32517           </parameter>
32518           <parameter name="position" transfer-ownership="none">
32519             <doc xml:whitespace="preserve">the index (starting at 0) at which to insert the page, or -1 to append the page after all other pages.</doc>
32520             <type name="gint" c:type="gint"/>
32521           </parameter>
32522         </parameters>
32523       </method>
32524       <method name="next_page" c:identifier="gtk_notebook_next_page">
32525         <doc xml:whitespace="preserve">Switches to the next page. Nothing happens if the current page is
32526 the last page.</doc>
32527         <return-value transfer-ownership="none">
32528           <type name="none" c:type="void"/>
32529         </return-value>
32530       </method>
32531       <method name="page_num" c:identifier="gtk_notebook_page_num">
32532         <doc xml:whitespace="preserve">Finds the index of the page which contains the given child
32533 widget.
32534 -1 if @child is not in the notebook.</doc>
32535         <return-value transfer-ownership="none">
32536           <doc xml:whitespace="preserve">the index of the page containing @child, or</doc>
32537           <type name="gint" c:type="gint"/>
32538         </return-value>
32539         <parameters>
32540           <parameter name="child" transfer-ownership="none">
32541             <doc xml:whitespace="preserve">a #GtkWidget</doc>
32542             <type name="Widget" c:type="GtkWidget*"/>
32543           </parameter>
32544         </parameters>
32545       </method>
32546       <method name="popup_disable" c:identifier="gtk_notebook_popup_disable">
32547         <doc xml:whitespace="preserve">Disables the popup menu.</doc>
32548         <return-value transfer-ownership="none">
32549           <type name="none" c:type="void"/>
32550         </return-value>
32551       </method>
32552       <method name="popup_enable" c:identifier="gtk_notebook_popup_enable">
32553         <doc xml:whitespace="preserve">the tab labels, a menu with all the pages will be popped up.</doc>
32554         <return-value transfer-ownership="none">
32555           <type name="none" c:type="void"/>
32556         </return-value>
32557       </method>
32558       <method name="prepend_page" c:identifier="gtk_notebook_prepend_page">
32559         <doc xml:whitespace="preserve">Prepends a page to @notebook.
32560 page in the notebook, or -1 if function fails</doc>
32561         <return-value transfer-ownership="none">
32562           <doc xml:whitespace="preserve">the index (starting from 0) of the prepended</doc>
32563           <type name="gint" c:type="gint"/>
32564         </return-value>
32565         <parameters>
32566           <parameter name="child" transfer-ownership="none">
32567             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32568             <type name="Widget" c:type="GtkWidget*"/>
32569           </parameter>
32570           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32571             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32572             <type name="Widget" c:type="GtkWidget*"/>
32573           </parameter>
32574         </parameters>
32575       </method>
32576       <method name="prepend_page_menu"
32577               c:identifier="gtk_notebook_prepend_page_menu">
32578         <doc xml:whitespace="preserve">Prepends a page to @notebook, specifying the widget to use as the
32579 label in the popup menu.
32580 page in the notebook, or -1 if function fails</doc>
32581         <return-value transfer-ownership="none">
32582           <doc xml:whitespace="preserve">the index (starting from 0) of the prepended</doc>
32583           <type name="gint" c:type="gint"/>
32584         </return-value>
32585         <parameters>
32586           <parameter name="child" transfer-ownership="none">
32587             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
32588             <type name="Widget" c:type="GtkWidget*"/>
32589           </parameter>
32590           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32591             <doc xml:whitespace="preserve">the #GtkWidget to be used as the label for the page, or %NULL to use the default label, 'page N'.</doc>
32592             <type name="Widget" c:type="GtkWidget*"/>
32593           </parameter>
32594           <parameter name="menu_label"
32595                      transfer-ownership="none"
32596                      allow-none="1">
32597             <doc xml:whitespace="preserve">the widget to use as a label for the page-switch menu, if that is enabled. If %NULL, and @tab_label is a #GtkLabel or %NULL, then the menu label will be a newly created label with the same text as @tab_label; If @tab_label is not a #GtkLabel, @menu_label must be specified if the page-switch menu is to be used.</doc>
32598             <type name="Widget" c:type="GtkWidget*"/>
32599           </parameter>
32600         </parameters>
32601       </method>
32602       <method name="prev_page" c:identifier="gtk_notebook_prev_page">
32603         <doc xml:whitespace="preserve">Switches to the previous page. Nothing happens if the current page
32604 is the first page.</doc>
32605         <return-value transfer-ownership="none">
32606           <type name="none" c:type="void"/>
32607         </return-value>
32608       </method>
32609       <method name="remove_page" c:identifier="gtk_notebook_remove_page">
32610         <doc xml:whitespace="preserve">Removes a page from the notebook given its index
32611 in the notebook.</doc>
32612         <return-value transfer-ownership="none">
32613           <type name="none" c:type="void"/>
32614         </return-value>
32615         <parameters>
32616           <parameter name="page_num" transfer-ownership="none">
32617             <doc xml:whitespace="preserve">the index of a notebook page, starting from 0. If -1, the last page will be removed.</doc>
32618             <type name="gint" c:type="gint"/>
32619           </parameter>
32620         </parameters>
32621       </method>
32622       <method name="reorder_child" c:identifier="gtk_notebook_reorder_child">
32623         <doc xml:whitespace="preserve">Reorders the page containing @child, so that it appears in position
32624 children in the list or negative, @child will be moved to the end
32625 of the list.</doc>
32626         <return-value transfer-ownership="none">
32627           <type name="none" c:type="void"/>
32628         </return-value>
32629         <parameters>
32630           <parameter name="child" transfer-ownership="none">
32631             <doc xml:whitespace="preserve">the child to move</doc>
32632             <type name="Widget" c:type="GtkWidget*"/>
32633           </parameter>
32634           <parameter name="position" transfer-ownership="none">
32635             <doc xml:whitespace="preserve">the new position, or -1 to move to the end</doc>
32636             <type name="gint" c:type="gint"/>
32637           </parameter>
32638         </parameters>
32639       </method>
32640       <method name="set_action_widget"
32641               c:identifier="gtk_notebook_set_action_widget"
32642               version="2.20">
32643         <doc xml:whitespace="preserve">Sets @widget as one of the action widgets. Depending on the pack type
32644 the widget will be placed before or after the tabs. You can use
32645 a #GtkBox if you need to pack more than one widget on the same side.
32646 Note that action widgets are "internal" children of the notebook and thus
32647 not included in the list returned from gtk_container_foreach().</doc>
32648         <return-value transfer-ownership="none">
32649           <type name="none" c:type="void"/>
32650         </return-value>
32651         <parameters>
32652           <parameter name="widget" transfer-ownership="none">
32653             <doc xml:whitespace="preserve">a #GtkWidget</doc>
32654             <type name="Widget" c:type="GtkWidget*"/>
32655           </parameter>
32656           <parameter name="pack_type" transfer-ownership="none">
32657             <doc xml:whitespace="preserve">pack type of the action widget</doc>
32658             <type name="PackType" c:type="GtkPackType"/>
32659           </parameter>
32660         </parameters>
32661       </method>
32662       <method name="set_current_page"
32663               c:identifier="gtk_notebook_set_current_page">
32664         <doc xml:whitespace="preserve">Switches to the page number @page_num. 
32665 Note that due to historical reasons, GtkNotebook refuses
32666 to switch to a page unless the child widget is visible. 
32667 Therefore, it is recommended to show child widgets before
32668 adding them to a notebook.</doc>
32669         <return-value transfer-ownership="none">
32670           <type name="none" c:type="void"/>
32671         </return-value>
32672         <parameters>
32673           <parameter name="page_num" transfer-ownership="none">
32674             <doc xml:whitespace="preserve">index of the page to switch to, starting from 0. If negative, the last page will be used. If greater than the number of pages in the notebook, nothing will be done.</doc>
32675             <type name="gint" c:type="gint"/>
32676           </parameter>
32677         </parameters>
32678       </method>
32679       <method name="set_group_name"
32680               c:identifier="gtk_notebook_set_group_name"
32681               version="2.24">
32682         <doc xml:whitespace="preserve">Sets a group name for @notebook.
32683 Notebooks with the same name will be able to exchange tabs
32684 via drag and drop. A notebook with a %NULL group name will
32685 not be able to exchange tabs with any other notebook.</doc>
32686         <return-value transfer-ownership="none">
32687           <type name="none" c:type="void"/>
32688         </return-value>
32689         <parameters>
32690           <parameter name="group_name" transfer-ownership="none">
32691             <type name="utf8" c:type="gchar*"/>
32692           </parameter>
32693         </parameters>
32694       </method>
32695       <method name="set_menu_label" c:identifier="gtk_notebook_set_menu_label">
32696         <doc xml:whitespace="preserve">Changes the menu label for the page containing @child.</doc>
32697         <return-value transfer-ownership="none">
32698           <type name="none" c:type="void"/>
32699         </return-value>
32700         <parameters>
32701           <parameter name="child" transfer-ownership="none">
32702             <doc xml:whitespace="preserve">the child widget</doc>
32703             <type name="Widget" c:type="GtkWidget*"/>
32704           </parameter>
32705           <parameter name="menu_label"
32706                      transfer-ownership="none"
32707                      allow-none="1">
32708             <doc xml:whitespace="preserve">the menu label, or NULL for default</doc>
32709             <type name="Widget" c:type="GtkWidget*"/>
32710           </parameter>
32711         </parameters>
32712       </method>
32713       <method name="set_menu_label_text"
32714               c:identifier="gtk_notebook_set_menu_label_text">
32715         <doc xml:whitespace="preserve">Creates a new label and sets it as the menu label of @child.</doc>
32716         <return-value transfer-ownership="none">
32717           <type name="none" c:type="void"/>
32718         </return-value>
32719         <parameters>
32720           <parameter name="child" transfer-ownership="none">
32721             <doc xml:whitespace="preserve">the child widget</doc>
32722             <type name="Widget" c:type="GtkWidget*"/>
32723           </parameter>
32724           <parameter name="menu_text" transfer-ownership="none">
32725             <doc xml:whitespace="preserve">the label text</doc>
32726             <type name="utf8" c:type="gchar*"/>
32727           </parameter>
32728         </parameters>
32729       </method>
32730       <method name="set_scrollable" c:identifier="gtk_notebook_set_scrollable">
32731         <doc xml:whitespace="preserve">Sets whether the tab label area will have arrows for scrolling if
32732 there are too many tabs to fit in the area.</doc>
32733         <return-value transfer-ownership="none">
32734           <type name="none" c:type="void"/>
32735         </return-value>
32736         <parameters>
32737           <parameter name="scrollable" transfer-ownership="none">
32738             <doc xml:whitespace="preserve">%TRUE if scroll arrows should be added</doc>
32739             <type name="gboolean" c:type="gboolean"/>
32740           </parameter>
32741         </parameters>
32742       </method>
32743       <method name="set_show_border"
32744               c:identifier="gtk_notebook_set_show_border">
32745         <doc xml:whitespace="preserve">Sets whether a bevel will be drawn around the notebook pages.
32746 This only has a visual effect when the tabs are not shown.
32747 See gtk_notebook_set_show_tabs().</doc>
32748         <return-value transfer-ownership="none">
32749           <type name="none" c:type="void"/>
32750         </return-value>
32751         <parameters>
32752           <parameter name="show_border" transfer-ownership="none">
32753             <doc xml:whitespace="preserve">%TRUE if a bevel should be drawn around the notebook.</doc>
32754             <type name="gboolean" c:type="gboolean"/>
32755           </parameter>
32756         </parameters>
32757       </method>
32758       <method name="set_show_tabs" c:identifier="gtk_notebook_set_show_tabs">
32759         <doc xml:whitespace="preserve">Sets whether to show the tabs for the notebook or not.</doc>
32760         <return-value transfer-ownership="none">
32761           <type name="none" c:type="void"/>
32762         </return-value>
32763         <parameters>
32764           <parameter name="show_tabs" transfer-ownership="none">
32765             <doc xml:whitespace="preserve">%TRUE if the tabs should be shown.</doc>
32766             <type name="gboolean" c:type="gboolean"/>
32767           </parameter>
32768         </parameters>
32769       </method>
32770       <method name="set_tab_detachable"
32771               c:identifier="gtk_notebook_set_tab_detachable"
32772               version="2.10">
32773         <doc xml:whitespace="preserve">Sets whether the tab can be detached from @notebook to another
32774 notebook or widget.
32775 Note that 2 notebooks must share a common group identificator
32776 (see gtk_notebook_set_group()) to allow automatic tabs
32777 interchange between them.
32778 If you want a widget to interact with a notebook through DnD
32779 (i.e.: accept dragged tabs from it) it must be set as a drop
32780 destination and accept the target "GTK_NOTEBOOK_TAB". The notebook
32781 will fill the selection with a GtkWidget** pointing to the child
32782 widget that corresponds to the dropped tab.
32783 |[
32784 static void
32785 on_drop_zone_drag_data_received (GtkWidget        *widget,
32786 GdkDragContext   *context,
32787 gint              x,
32788 gint              y,
32789 GtkSelectionData *selection_data,
32790 guint             info,
32791 guint             time,
32792 gpointer          user_data)
32793 {
32794 GtkWidget *notebook;
32795 GtkWidget **child;
32796 notebook = gtk_drag_get_source_widget (context);
32797 child = (void*) selection_data-&gt;data;
32798 process_widget (*child);
32799 gtk_container_remove (GTK_CONTAINER (notebook), *child);
32800 }
32801 ]|
32802 If you want a notebook to accept drags from other widgets,
32803 you will have to set your own DnD code to do it.</doc>
32804         <return-value transfer-ownership="none">
32805           <type name="none" c:type="void"/>
32806         </return-value>
32807         <parameters>
32808           <parameter name="child" transfer-ownership="none">
32809             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
32810             <type name="Widget" c:type="GtkWidget*"/>
32811           </parameter>
32812           <parameter name="detachable" transfer-ownership="none">
32813             <doc xml:whitespace="preserve">whether the tab is detachable or not</doc>
32814             <type name="gboolean" c:type="gboolean"/>
32815           </parameter>
32816         </parameters>
32817       </method>
32818       <method name="set_tab_label" c:identifier="gtk_notebook_set_tab_label">
32819         <doc xml:whitespace="preserve">Changes the tab label for @child. If %NULL is specified
32820 for @tab_label, then the page will have the label 'page N'.</doc>
32821         <return-value transfer-ownership="none">
32822           <type name="none" c:type="void"/>
32823         </return-value>
32824         <parameters>
32825           <parameter name="child" transfer-ownership="none">
32826             <doc xml:whitespace="preserve">the page</doc>
32827             <type name="Widget" c:type="GtkWidget*"/>
32828           </parameter>
32829           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
32830             <doc xml:whitespace="preserve">the tab label widget to use, or %NULL for default tab label.</doc>
32831             <type name="Widget" c:type="GtkWidget*"/>
32832           </parameter>
32833         </parameters>
32834       </method>
32835       <method name="set_tab_label_text"
32836               c:identifier="gtk_notebook_set_tab_label_text">
32837         <doc xml:whitespace="preserve">Creates a new label and sets it as the tab label for the page
32838 containing @child.</doc>
32839         <return-value transfer-ownership="none">
32840           <type name="none" c:type="void"/>
32841         </return-value>
32842         <parameters>
32843           <parameter name="child" transfer-ownership="none">
32844             <doc xml:whitespace="preserve">the page</doc>
32845             <type name="Widget" c:type="GtkWidget*"/>
32846           </parameter>
32847           <parameter name="tab_text" transfer-ownership="none">
32848             <doc xml:whitespace="preserve">the label text</doc>
32849             <type name="utf8" c:type="gchar*"/>
32850           </parameter>
32851         </parameters>
32852       </method>
32853       <method name="set_tab_pos" c:identifier="gtk_notebook_set_tab_pos">
32854         <doc xml:whitespace="preserve">Sets the edge at which the tabs for switching pages in the
32855 notebook are drawn.</doc>
32856         <return-value transfer-ownership="none">
32857           <type name="none" c:type="void"/>
32858         </return-value>
32859         <parameters>
32860           <parameter name="pos" transfer-ownership="none">
32861             <doc xml:whitespace="preserve">the edge to draw the tabs at.</doc>
32862             <type name="PositionType" c:type="GtkPositionType"/>
32863           </parameter>
32864         </parameters>
32865       </method>
32866       <method name="set_tab_reorderable"
32867               c:identifier="gtk_notebook_set_tab_reorderable"
32868               version="2.10">
32869         <doc xml:whitespace="preserve">Sets whether the notebook tab can be reordered
32870 via drag and drop or not.</doc>
32871         <return-value transfer-ownership="none">
32872           <type name="none" c:type="void"/>
32873         </return-value>
32874         <parameters>
32875           <parameter name="child" transfer-ownership="none">
32876             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
32877             <type name="Widget" c:type="GtkWidget*"/>
32878           </parameter>
32879           <parameter name="reorderable" transfer-ownership="none">
32880             <doc xml:whitespace="preserve">whether the tab is reorderable or not.</doc>
32881             <type name="gboolean" c:type="gboolean"/>
32882           </parameter>
32883         </parameters>
32884       </method>
32885       <property name="enable-popup" writable="1" transfer-ownership="none">
32886         <type name="gboolean"/>
32887       </property>
32888       <property name="group-name"
32889                 version="2.24"
32890                 writable="1"
32891                 transfer-ownership="none">
32892         <doc xml:whitespace="preserve">Group name for tab drag and drop.</doc>
32893         <type name="utf8"/>
32894       </property>
32895       <property name="page" writable="1" transfer-ownership="none">
32896         <type name="gint"/>
32897       </property>
32898       <property name="scrollable" writable="1" transfer-ownership="none">
32899         <type name="gboolean"/>
32900       </property>
32901       <property name="show-border" writable="1" transfer-ownership="none">
32902         <type name="gboolean"/>
32903       </property>
32904       <property name="show-tabs" writable="1" transfer-ownership="none">
32905         <type name="gboolean"/>
32906       </property>
32907       <property name="tab-pos" writable="1" transfer-ownership="none">
32908         <type name="PositionType"/>
32909       </property>
32910       <field name="container">
32911         <type name="Container" c:type="GtkContainer"/>
32912       </field>
32913       <field name="priv" readable="0" private="1">
32914         <type name="NotebookPrivate" c:type="GtkNotebookPrivate*"/>
32915       </field>
32916       <glib:signal name="change-current-page">
32917         <return-value transfer-ownership="none">
32918           <type name="gboolean"/>
32919         </return-value>
32920         <parameters>
32921           <parameter name="object" transfer-ownership="none">
32922             <type name="gint"/>
32923           </parameter>
32924         </parameters>
32925       </glib:signal>
32926       <glib:signal name="create-window" version="2.12" introspectable="0">
32927         <doc xml:whitespace="preserve">The ::create-window signal is emitted when a detachable
32928 tab is dropped on the root window. 
32929 A handler for this signal can create a window containing 
32930 a notebook where the tab will be attached. It is also 
32931 responsible for moving/resizing the window and adding the 
32932 necessary properties to the notebook (e.g. the 
32933 #GtkNotebook:group ).</doc>
32934         <return-value>
32935           <doc xml:whitespace="preserve">a #GtkNotebook that @page should be added to, or %NULL.</doc>
32936           <type name="Notebook"/>
32937         </return-value>
32938         <parameters>
32939           <parameter name="object" transfer-ownership="none">
32940             <doc xml:whitespace="preserve">the tab of @notebook that is being detached</doc>
32941             <type name="Widget"/>
32942           </parameter>
32943           <parameter name="p0" transfer-ownership="none">
32944             <doc xml:whitespace="preserve">the X coordinate where the drop happens</doc>
32945             <type name="gint"/>
32946           </parameter>
32947           <parameter name="p1" transfer-ownership="none">
32948             <doc xml:whitespace="preserve">the Y coordinate where the drop happens</doc>
32949             <type name="gint"/>
32950           </parameter>
32951         </parameters>
32952       </glib:signal>
32953       <glib:signal name="focus-tab">
32954         <return-value transfer-ownership="none">
32955           <type name="gboolean"/>
32956         </return-value>
32957         <parameters>
32958           <parameter name="object" transfer-ownership="none">
32959             <type name="NotebookTab"/>
32960           </parameter>
32961         </parameters>
32962       </glib:signal>
32963       <glib:signal name="move-focus-out">
32964         <return-value transfer-ownership="none">
32965           <type name="none"/>
32966         </return-value>
32967         <parameters>
32968           <parameter name="object" transfer-ownership="none">
32969             <type name="DirectionType"/>
32970           </parameter>
32971         </parameters>
32972       </glib:signal>
32973       <glib:signal name="page-added" version="2.10">
32974         <doc xml:whitespace="preserve">the ::page-added signal is emitted in the notebook
32975 right after a page is added to the notebook.</doc>
32976         <return-value transfer-ownership="none">
32977           <type name="none"/>
32978         </return-value>
32979         <parameters>
32980           <parameter name="object" transfer-ownership="none">
32981             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
32982             <type name="Widget"/>
32983           </parameter>
32984           <parameter name="p0" transfer-ownership="none">
32985             <doc xml:whitespace="preserve">the new page number for @child</doc>
32986             <type name="guint"/>
32987           </parameter>
32988         </parameters>
32989       </glib:signal>
32990       <glib:signal name="page-removed" version="2.10">
32991         <doc xml:whitespace="preserve">the ::page-removed signal is emitted in the notebook
32992 right after a page is removed from the notebook.</doc>
32993         <return-value transfer-ownership="none">
32994           <type name="none"/>
32995         </return-value>
32996         <parameters>
32997           <parameter name="object" transfer-ownership="none">
32998             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
32999             <type name="Widget"/>
33000           </parameter>
33001           <parameter name="p0" transfer-ownership="none">
33002             <doc xml:whitespace="preserve">the @child page number</doc>
33003             <type name="guint"/>
33004           </parameter>
33005         </parameters>
33006       </glib:signal>
33007       <glib:signal name="page-reordered" version="2.10">
33008         <doc xml:whitespace="preserve">the ::page-reordered signal is emitted in the notebook
33009 right after a page has been reordered.</doc>
33010         <return-value transfer-ownership="none">
33011           <type name="none"/>
33012         </return-value>
33013         <parameters>
33014           <parameter name="object" transfer-ownership="none">
33015             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
33016             <type name="Widget"/>
33017           </parameter>
33018           <parameter name="p0" transfer-ownership="none">
33019             <doc xml:whitespace="preserve">the new page number for @child</doc>
33020             <type name="guint"/>
33021           </parameter>
33022         </parameters>
33023       </glib:signal>
33024       <glib:signal name="reorder-tab">
33025         <return-value transfer-ownership="none">
33026           <type name="gboolean"/>
33027         </return-value>
33028         <parameters>
33029           <parameter name="object" transfer-ownership="none">
33030             <type name="DirectionType"/>
33031           </parameter>
33032           <parameter name="p0" transfer-ownership="none">
33033             <type name="gboolean"/>
33034           </parameter>
33035         </parameters>
33036       </glib:signal>
33037       <glib:signal name="select-page">
33038         <return-value transfer-ownership="none">
33039           <type name="gboolean"/>
33040         </return-value>
33041         <parameters>
33042           <parameter name="object" transfer-ownership="none">
33043             <type name="gboolean"/>
33044           </parameter>
33045         </parameters>
33046       </glib:signal>
33047       <glib:signal name="switch-page">
33048         <return-value transfer-ownership="none">
33049           <type name="none"/>
33050         </return-value>
33051         <parameters>
33052           <parameter name="object" transfer-ownership="none">
33053             <type name="Widget"/>
33054           </parameter>
33055           <parameter name="p0" transfer-ownership="none">
33056             <type name="guint"/>
33057           </parameter>
33058         </parameters>
33059       </glib:signal>
33060     </class>
33061     <record name="NotebookClass"
33062             c:type="GtkNotebookClass"
33063             glib:is-gtype-struct-for="Notebook">
33064       <field name="parent_class">
33065         <type name="ContainerClass" c:type="GtkContainerClass"/>
33066       </field>
33067       <field name="switch_page">
33068         <callback name="switch_page">
33069           <return-value transfer-ownership="none">
33070             <type name="none" c:type="void"/>
33071           </return-value>
33072           <parameters>
33073             <parameter name="notebook" transfer-ownership="none">
33074               <type name="Notebook" c:type="GtkNotebook*"/>
33075             </parameter>
33076             <parameter name="page" transfer-ownership="none">
33077               <type name="Widget" c:type="GtkWidget*"/>
33078             </parameter>
33079             <parameter name="page_num" transfer-ownership="none">
33080               <type name="guint" c:type="guint"/>
33081             </parameter>
33082           </parameters>
33083         </callback>
33084       </field>
33085       <field name="select_page">
33086         <callback name="select_page">
33087           <return-value transfer-ownership="none">
33088             <type name="gboolean" c:type="gboolean"/>
33089           </return-value>
33090           <parameters>
33091             <parameter name="notebook" transfer-ownership="none">
33092               <type name="Notebook" c:type="GtkNotebook*"/>
33093             </parameter>
33094             <parameter name="move_focus" transfer-ownership="none">
33095               <type name="gboolean" c:type="gboolean"/>
33096             </parameter>
33097           </parameters>
33098         </callback>
33099       </field>
33100       <field name="focus_tab">
33101         <callback name="focus_tab">
33102           <return-value transfer-ownership="none">
33103             <type name="gboolean" c:type="gboolean"/>
33104           </return-value>
33105           <parameters>
33106             <parameter name="notebook" transfer-ownership="none">
33107               <type name="Notebook" c:type="GtkNotebook*"/>
33108             </parameter>
33109             <parameter name="type" transfer-ownership="none">
33110               <type name="NotebookTab" c:type="GtkNotebookTab"/>
33111             </parameter>
33112           </parameters>
33113         </callback>
33114       </field>
33115       <field name="change_current_page">
33116         <callback name="change_current_page">
33117           <return-value transfer-ownership="none">
33118             <type name="gboolean" c:type="gboolean"/>
33119           </return-value>
33120           <parameters>
33121             <parameter name="notebook" transfer-ownership="none">
33122               <type name="Notebook" c:type="GtkNotebook*"/>
33123             </parameter>
33124             <parameter name="offset" transfer-ownership="none">
33125               <type name="gint" c:type="gint"/>
33126             </parameter>
33127           </parameters>
33128         </callback>
33129       </field>
33130       <field name="move_focus_out">
33131         <callback name="move_focus_out">
33132           <return-value transfer-ownership="none">
33133             <type name="none" c:type="void"/>
33134           </return-value>
33135           <parameters>
33136             <parameter name="notebook" transfer-ownership="none">
33137               <type name="Notebook" c:type="GtkNotebook*"/>
33138             </parameter>
33139             <parameter name="direction" transfer-ownership="none">
33140               <type name="DirectionType" c:type="GtkDirectionType"/>
33141             </parameter>
33142           </parameters>
33143         </callback>
33144       </field>
33145       <field name="reorder_tab">
33146         <callback name="reorder_tab">
33147           <return-value transfer-ownership="none">
33148             <type name="gboolean" c:type="gboolean"/>
33149           </return-value>
33150           <parameters>
33151             <parameter name="notebook" transfer-ownership="none">
33152               <type name="Notebook" c:type="GtkNotebook*"/>
33153             </parameter>
33154             <parameter name="direction" transfer-ownership="none">
33155               <type name="DirectionType" c:type="GtkDirectionType"/>
33156             </parameter>
33157             <parameter name="move_to_last" transfer-ownership="none">
33158               <type name="gboolean" c:type="gboolean"/>
33159             </parameter>
33160           </parameters>
33161         </callback>
33162       </field>
33163       <field name="insert_page">
33164         <callback name="insert_page">
33165           <return-value transfer-ownership="none">
33166             <type name="gint" c:type="gint"/>
33167           </return-value>
33168           <parameters>
33169             <parameter name="notebook" transfer-ownership="none">
33170               <type name="Notebook" c:type="GtkNotebook*"/>
33171             </parameter>
33172             <parameter name="child" transfer-ownership="none">
33173               <type name="Widget" c:type="GtkWidget*"/>
33174             </parameter>
33175             <parameter name="tab_label" transfer-ownership="none">
33176               <type name="Widget" c:type="GtkWidget*"/>
33177             </parameter>
33178             <parameter name="menu_label" transfer-ownership="none">
33179               <type name="Widget" c:type="GtkWidget*"/>
33180             </parameter>
33181             <parameter name="position" transfer-ownership="none">
33182               <type name="gint" c:type="gint"/>
33183             </parameter>
33184           </parameters>
33185         </callback>
33186       </field>
33187       <field name="create_window" introspectable="0">
33188         <callback name="create_window" introspectable="0">
33189           <return-value>
33190             <type name="Notebook" c:type="GtkNotebook*"/>
33191           </return-value>
33192           <parameters>
33193             <parameter name="notebook" transfer-ownership="none">
33194               <type name="Notebook" c:type="GtkNotebook*"/>
33195             </parameter>
33196             <parameter name="page" transfer-ownership="none">
33197               <type name="Widget" c:type="GtkWidget*"/>
33198             </parameter>
33199             <parameter name="x" transfer-ownership="none">
33200               <type name="gint" c:type="gint"/>
33201             </parameter>
33202             <parameter name="y" transfer-ownership="none">
33203               <type name="gint" c:type="gint"/>
33204             </parameter>
33205           </parameters>
33206         </callback>
33207       </field>
33208       <field name="_gtk_reserved1" introspectable="0">
33209         <callback name="_gtk_reserved1">
33210           <return-value transfer-ownership="none">
33211             <type name="none" c:type="void"/>
33212           </return-value>
33213         </callback>
33214       </field>
33215     </record>
33216     <record name="NotebookPrivate" c:type="GtkNotebookPrivate" disguised="1">
33217     </record>
33218     <enumeration name="NotebookTab"
33219                  glib:type-name="GtkNotebookTab"
33220                  glib:get-type="gtk_notebook_tab_get_type"
33221                  c:type="GtkNotebookTab">
33222       <member name="first"
33223               value="0"
33224               c:identifier="GTK_NOTEBOOK_TAB_FIRST"
33225               glib:nick="first"/>
33226       <member name="last"
33227               value="1"
33228               c:identifier="GTK_NOTEBOOK_TAB_LAST"
33229               glib:nick="last"/>
33230     </enumeration>
33231     <enumeration name="NumberUpLayout"
33232                  glib:type-name="GtkNumberUpLayout"
33233                  glib:get-type="gtk_number_up_layout_get_type"
33234                  c:type="GtkNumberUpLayout">
33235       <member name="lrtb"
33236               value="0"
33237               c:identifier="GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM"
33238               glib:nick="lrtb"/>
33239       <member name="lrbt"
33240               value="1"
33241               c:identifier="GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP"
33242               glib:nick="lrbt"/>
33243       <member name="rltb"
33244               value="2"
33245               c:identifier="GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM"
33246               glib:nick="rltb"/>
33247       <member name="rlbt"
33248               value="3"
33249               c:identifier="GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP"
33250               glib:nick="rlbt"/>
33251       <member name="tblr"
33252               value="4"
33253               c:identifier="GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT"
33254               glib:nick="tblr"/>
33255       <member name="tbrl"
33256               value="5"
33257               c:identifier="GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT"
33258               glib:nick="tbrl"/>
33259       <member name="btlr"
33260               value="6"
33261               c:identifier="GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT"
33262               glib:nick="btlr"/>
33263       <member name="btrl"
33264               value="7"
33265               c:identifier="GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT"
33266               glib:nick="btrl"/>
33267     </enumeration>
33268     <class name="Object"
33269            c:symbol-prefix="object"
33270            c:type="GtkObject"
33271            parent="GObject.InitiallyUnowned"
33272            abstract="1"
33273            glib:type-name="GtkObject"
33274            glib:get-type="gtk_object_get_type"
33275            glib:type-struct="ObjectClass">
33276       <method name="destroy" c:identifier="gtk_object_destroy">
33277         <doc xml:whitespace="preserve">Emits the #GtkObject::destroy signal notifying all reference holders that they should
33278 release the #GtkObject. See the overview documentation at the top of the
33279 page for more details.
33280 The memory for the object itself won't be deleted until
33281 its reference count actually drops to 0; gtk_object_destroy() merely asks
33282 reference holders to release their references, it does not free the object.</doc>
33283         <return-value transfer-ownership="none">
33284           <type name="none" c:type="void"/>
33285         </return-value>
33286       </method>
33287       <field name="parent_instance">
33288         <type name="GObject.InitiallyUnowned" c:type="GInitiallyUnowned"/>
33289       </field>
33290       <field name="flags">
33291         <type name="guint32" c:type="guint32"/>
33292       </field>
33293       <glib:signal name="destroy">
33294         <doc xml:whitespace="preserve">Signals that all holders of a reference to the #GtkObject should release
33295 the reference that they hold. May result in finalization of the object
33296 if all references are released.</doc>
33297         <return-value transfer-ownership="none">
33298           <type name="none"/>
33299         </return-value>
33300       </glib:signal>
33301     </class>
33302     <record name="ObjectClass"
33303             c:type="GtkObjectClass"
33304             glib:is-gtype-struct-for="Object">
33305       <field name="parent_class">
33306         <type name="GObject.InitiallyUnownedClass"
33307               c:type="GInitiallyUnownedClass"/>
33308       </field>
33309       <field name="destroy">
33310         <callback name="destroy">
33311           <return-value transfer-ownership="none">
33312             <type name="none" c:type="void"/>
33313           </return-value>
33314           <parameters>
33315             <parameter name="object" transfer-ownership="none">
33316               <type name="Object" c:type="GtkObject*"/>
33317             </parameter>
33318           </parameters>
33319         </callback>
33320       </field>
33321     </record>
33322     <bitfield name="ObjectFlags"
33323               deprecated="Do not re-use #GtkObject flags but use your own variable to"
33324               deprecated-version="2.22"
33325               glib:type-name="GtkObjectFlags"
33326               glib:get-type="gtk_object_flags_get_type"
33327               c:type="GtkObjectFlags">
33328       <doc xml:whitespace="preserve">Tells about the state of the object.
33329 store flags.</doc>
33330       <member name="in_destruction"
33331               value="1"
33332               c:identifier="GTK_IN_DESTRUCTION"
33333               glib:nick="in-destruction"/>
33334       <member name="reserved_1"
33335               value="4"
33336               c:identifier="GTK_RESERVED_1"
33337               glib:nick="reserved-1"/>
33338       <member name="reserved_2"
33339               value="8"
33340               c:identifier="GTK_RESERVED_2"
33341               glib:nick="reserved-2"/>
33342     </bitfield>
33343     <class name="OffscreenWindow"
33344            c:symbol-prefix="offscreen_window"
33345            c:type="GtkOffscreenWindow"
33346            parent="Window"
33347            glib:type-name="GtkOffscreenWindow"
33348            glib:get-type="gtk_offscreen_window_get_type"
33349            glib:type-struct="OffscreenWindowClass">
33350       <implements name="Atk.ImplementorIface"/>
33351       <implements name="Buildable"/>
33352       <implements name="SizeRequest"/>
33353       <constructor name="new"
33354                    c:identifier="gtk_offscreen_window_new"
33355                    version="2.20">
33356         <doc xml:whitespace="preserve">Creates a toplevel container widget that is used to retrieve
33357 snapshots of widgets without showing them on the screen.  For
33358 widgets that are on the screen and part of a normal widget
33359 hierarchy, gtk_widget_get_snapshot() can be used instead.</doc>
33360         <return-value transfer-ownership="none">
33361           <doc xml:whitespace="preserve">A pointer to a #GtkWidget</doc>
33362           <type name="Widget" c:type="GtkWidget*"/>
33363         </return-value>
33364       </constructor>
33365       <method name="get_pixbuf"
33366               c:identifier="gtk_offscreen_window_get_pixbuf"
33367               version="2.20">
33368         <doc xml:whitespace="preserve">Retrieves a snapshot of the contained widget in the form of
33369 a #GdkPixbuf.  This is a new pixbuf with a reference count of 1,
33370 and the application should unreference it once it is no longer
33371 needed.</doc>
33372         <return-value transfer-ownership="full">
33373           <doc xml:whitespace="preserve">A #GdkPixbuf pointer, or %NULL.</doc>
33374           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
33375         </return-value>
33376       </method>
33377       <method name="get_pixmap"
33378               c:identifier="gtk_offscreen_window_get_pixmap"
33379               version="2.20">
33380         <doc xml:whitespace="preserve">Retrieves a snapshot of the contained widget in the form of
33381 a #GdkPixmap.  If you need to keep this around over window
33382 resizes then you should add a reference to it.
33383 or %NULL.</doc>
33384         <return-value transfer-ownership="none">
33385           <doc xml:whitespace="preserve">A #GdkPixmap pointer to the offscreen pixmap,</doc>
33386           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
33387         </return-value>
33388       </method>
33389       <field name="parent_object">
33390         <type name="Window" c:type="GtkWindow"/>
33391       </field>
33392     </class>
33393     <record name="OffscreenWindowClass"
33394             c:type="GtkOffscreenWindowClass"
33395             glib:is-gtype-struct-for="OffscreenWindow">
33396       <field name="parent_class">
33397         <type name="WindowClass" c:type="GtkWindowClass"/>
33398       </field>
33399     </record>
33400     <interface name="Orientable"
33401                c:symbol-prefix="orientable"
33402                c:type="GtkOrientable"
33403                glib:type-name="GtkOrientable"
33404                glib:get-type="gtk_orientable_get_type"
33405                glib:type-struct="OrientableIface">
33406       <method name="get_orientation"
33407               c:identifier="gtk_orientable_get_orientation"
33408               version="2.16">
33409         <doc xml:whitespace="preserve">Retrieves the orientation of the @orientable.</doc>
33410         <return-value transfer-ownership="none">
33411           <doc xml:whitespace="preserve">the orientation of the @orientable.</doc>
33412           <type name="Orientation" c:type="GtkOrientation"/>
33413         </return-value>
33414       </method>
33415       <method name="set_orientation"
33416               c:identifier="gtk_orientable_set_orientation"
33417               version="2.16">
33418         <doc xml:whitespace="preserve">Sets the orientation of the @orientable.</doc>
33419         <return-value transfer-ownership="none">
33420           <type name="none" c:type="void"/>
33421         </return-value>
33422         <parameters>
33423           <parameter name="orientation" transfer-ownership="none">
33424             <doc xml:whitespace="preserve">the orientable's new orientation.</doc>
33425             <type name="Orientation" c:type="GtkOrientation"/>
33426           </parameter>
33427         </parameters>
33428       </method>
33429       <property name="orientation"
33430                 version="2.16"
33431                 writable="1"
33432                 transfer-ownership="none">
33433         <doc xml:whitespace="preserve">The orientation of the orientable.</doc>
33434         <type name="Orientation"/>
33435       </property>
33436     </interface>
33437     <record name="OrientableIface"
33438             c:type="GtkOrientableIface"
33439             glib:is-gtype-struct-for="Orientable">
33440       <field name="base_iface">
33441         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
33442       </field>
33443     </record>
33444     <enumeration name="Orientation"
33445                  glib:type-name="GtkOrientation"
33446                  glib:get-type="gtk_orientation_get_type"
33447                  c:type="GtkOrientation">
33448       <member name="horizontal"
33449               value="0"
33450               c:identifier="GTK_ORIENTATION_HORIZONTAL"
33451               glib:nick="horizontal"/>
33452       <member name="vertical"
33453               value="1"
33454               c:identifier="GTK_ORIENTATION_VERTICAL"
33455               glib:nick="vertical"/>
33456     </enumeration>
33457     <constant name="PAPER_NAME_A3" value="iso_a3">
33458       <type name="utf8" c:type="gchar*"/>
33459     </constant>
33460     <constant name="PAPER_NAME_A4" value="iso_a4">
33461       <type name="utf8" c:type="gchar*"/>
33462     </constant>
33463     <constant name="PAPER_NAME_A5" value="iso_a5">
33464       <type name="utf8" c:type="gchar*"/>
33465     </constant>
33466     <constant name="PAPER_NAME_B5" value="iso_b5">
33467       <type name="utf8" c:type="gchar*"/>
33468     </constant>
33469     <constant name="PAPER_NAME_EXECUTIVE" value="na_executive">
33470       <type name="utf8" c:type="gchar*"/>
33471     </constant>
33472     <constant name="PAPER_NAME_LEGAL" value="na_legal">
33473       <type name="utf8" c:type="gchar*"/>
33474     </constant>
33475     <constant name="PAPER_NAME_LETTER" value="na_letter">
33476       <type name="utf8" c:type="gchar*"/>
33477     </constant>
33478     <constant name="PARAM_READABLE" value="0">
33479       <type name="gint" c:type="gint"/>
33480     </constant>
33481     <constant name="PARAM_READWRITE" value="0">
33482       <type name="gint" c:type="gint"/>
33483     </constant>
33484     <constant name="PARAM_WRITABLE" value="0">
33485       <type name="gint" c:type="gint"/>
33486     </constant>
33487     <constant name="PATH_PRIO_MASK" value="15">
33488       <type name="gint" c:type="gint"/>
33489     </constant>
33490     <constant name="PRINT_SETTINGS_COLLATE" value="collate">
33491       <type name="utf8" c:type="gchar*"/>
33492     </constant>
33493     <constant name="PRINT_SETTINGS_DEFAULT_SOURCE" value="default-source">
33494       <type name="utf8" c:type="gchar*"/>
33495     </constant>
33496     <constant name="PRINT_SETTINGS_DITHER" value="dither">
33497       <type name="utf8" c:type="gchar*"/>
33498     </constant>
33499     <constant name="PRINT_SETTINGS_DUPLEX" value="duplex">
33500       <type name="utf8" c:type="gchar*"/>
33501     </constant>
33502     <constant name="PRINT_SETTINGS_FINISHINGS" value="finishings">
33503       <type name="utf8" c:type="gchar*"/>
33504     </constant>
33505     <constant name="PRINT_SETTINGS_MEDIA_TYPE" value="media-type">
33506       <type name="utf8" c:type="gchar*"/>
33507     </constant>
33508     <constant name="PRINT_SETTINGS_NUMBER_UP" value="number-up">
33509       <type name="utf8" c:type="gchar*"/>
33510     </constant>
33511     <constant name="PRINT_SETTINGS_NUMBER_UP_LAYOUT" value="number-up-layout">
33512       <type name="utf8" c:type="gchar*"/>
33513     </constant>
33514     <constant name="PRINT_SETTINGS_N_COPIES" value="n-copies">
33515       <type name="utf8" c:type="gchar*"/>
33516     </constant>
33517     <constant name="PRINT_SETTINGS_ORIENTATION" value="orientation">
33518       <type name="utf8" c:type="gchar*"/>
33519     </constant>
33520     <constant name="PRINT_SETTINGS_OUTPUT_BIN" value="output-bin">
33521       <type name="utf8" c:type="gchar*"/>
33522     </constant>
33523     <constant name="PRINT_SETTINGS_OUTPUT_FILE_FORMAT"
33524               value="output-file-format">
33525       <type name="utf8" c:type="gchar*"/>
33526     </constant>
33527     <constant name="PRINT_SETTINGS_OUTPUT_URI" value="output-uri">
33528       <type name="utf8" c:type="gchar*"/>
33529     </constant>
33530     <constant name="PRINT_SETTINGS_PAGE_RANGES" value="page-ranges">
33531       <type name="utf8" c:type="gchar*"/>
33532     </constant>
33533     <constant name="PRINT_SETTINGS_PAGE_SET" value="page-set">
33534       <type name="utf8" c:type="gchar*"/>
33535     </constant>
33536     <constant name="PRINT_SETTINGS_PAPER_FORMAT" value="paper-format">
33537       <type name="utf8" c:type="gchar*"/>
33538     </constant>
33539     <constant name="PRINT_SETTINGS_PAPER_HEIGHT" value="paper-height">
33540       <type name="utf8" c:type="gchar*"/>
33541     </constant>
33542     <constant name="PRINT_SETTINGS_PAPER_WIDTH" value="paper-width">
33543       <type name="utf8" c:type="gchar*"/>
33544     </constant>
33545     <constant name="PRINT_SETTINGS_PRINTER" value="printer">
33546       <type name="utf8" c:type="gchar*"/>
33547     </constant>
33548     <constant name="PRINT_SETTINGS_PRINTER_LPI" value="printer-lpi">
33549       <type name="utf8" c:type="gchar*"/>
33550     </constant>
33551     <constant name="PRINT_SETTINGS_PRINT_PAGES" value="print-pages">
33552       <type name="utf8" c:type="gchar*"/>
33553     </constant>
33554     <constant name="PRINT_SETTINGS_QUALITY" value="quality">
33555       <type name="utf8" c:type="gchar*"/>
33556     </constant>
33557     <constant name="PRINT_SETTINGS_RESOLUTION" value="resolution">
33558       <type name="utf8" c:type="gchar*"/>
33559     </constant>
33560     <constant name="PRINT_SETTINGS_RESOLUTION_X" value="resolution-x">
33561       <type name="utf8" c:type="gchar*"/>
33562     </constant>
33563     <constant name="PRINT_SETTINGS_RESOLUTION_Y" value="resolution-y">
33564       <type name="utf8" c:type="gchar*"/>
33565     </constant>
33566     <constant name="PRINT_SETTINGS_REVERSE" value="reverse">
33567       <type name="utf8" c:type="gchar*"/>
33568     </constant>
33569     <constant name="PRINT_SETTINGS_SCALE" value="scale">
33570       <type name="utf8" c:type="gchar*"/>
33571     </constant>
33572     <constant name="PRINT_SETTINGS_USE_COLOR" value="use-color">
33573       <type name="utf8" c:type="gchar*"/>
33574     </constant>
33575     <constant name="PRINT_SETTINGS_WIN32_DRIVER_EXTRA"
33576               value="win32-driver-extra">
33577       <type name="utf8" c:type="gchar*"/>
33578     </constant>
33579     <constant name="PRINT_SETTINGS_WIN32_DRIVER_VERSION"
33580               value="win32-driver-version">
33581       <type name="utf8" c:type="gchar*"/>
33582     </constant>
33583     <constant name="PRIORITY_RESIZE" value="10">
33584       <type name="gint" c:type="gint"/>
33585     </constant>
33586     <enumeration name="PackDirection"
33587                  glib:type-name="GtkPackDirection"
33588                  glib:get-type="gtk_pack_direction_get_type"
33589                  c:type="GtkPackDirection">
33590       <member name="ltr"
33591               value="0"
33592               c:identifier="GTK_PACK_DIRECTION_LTR"
33593               glib:nick="ltr"/>
33594       <member name="rtl"
33595               value="1"
33596               c:identifier="GTK_PACK_DIRECTION_RTL"
33597               glib:nick="rtl"/>
33598       <member name="ttb"
33599               value="2"
33600               c:identifier="GTK_PACK_DIRECTION_TTB"
33601               glib:nick="ttb"/>
33602       <member name="btt"
33603               value="3"
33604               c:identifier="GTK_PACK_DIRECTION_BTT"
33605               glib:nick="btt"/>
33606     </enumeration>
33607     <enumeration name="PackType"
33608                  glib:type-name="GtkPackType"
33609                  glib:get-type="gtk_pack_type_get_type"
33610                  c:type="GtkPackType">
33611       <member name="start"
33612               value="0"
33613               c:identifier="GTK_PACK_START"
33614               glib:nick="start"/>
33615       <member name="end"
33616               value="1"
33617               c:identifier="GTK_PACK_END"
33618               glib:nick="end"/>
33619     </enumeration>
33620     <enumeration name="PageOrientation"
33621                  glib:type-name="GtkPageOrientation"
33622                  glib:get-type="gtk_page_orientation_get_type"
33623                  c:type="GtkPageOrientation">
33624       <member name="portrait"
33625               value="0"
33626               c:identifier="GTK_PAGE_ORIENTATION_PORTRAIT"
33627               glib:nick="portrait"/>
33628       <member name="landscape"
33629               value="1"
33630               c:identifier="GTK_PAGE_ORIENTATION_LANDSCAPE"
33631               glib:nick="landscape"/>
33632       <member name="reverse_portrait"
33633               value="2"
33634               c:identifier="GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT"
33635               glib:nick="reverse-portrait"/>
33636       <member name="reverse_landscape"
33637               value="3"
33638               c:identifier="GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE"
33639               glib:nick="reverse-landscape"/>
33640     </enumeration>
33641     <record name="PageRange" c:type="GtkPageRange">
33642       <field name="start" writable="1">
33643         <type name="gint" c:type="gint"/>
33644       </field>
33645       <field name="end" writable="1">
33646         <type name="gint" c:type="gint"/>
33647       </field>
33648     </record>
33649     <enumeration name="PageSet"
33650                  glib:type-name="GtkPageSet"
33651                  glib:get-type="gtk_page_set_get_type"
33652                  c:type="GtkPageSet">
33653       <member name="all"
33654               value="0"
33655               c:identifier="GTK_PAGE_SET_ALL"
33656               glib:nick="all"/>
33657       <member name="even"
33658               value="1"
33659               c:identifier="GTK_PAGE_SET_EVEN"
33660               glib:nick="even"/>
33661       <member name="odd"
33662               value="2"
33663               c:identifier="GTK_PAGE_SET_ODD"
33664               glib:nick="odd"/>
33665     </enumeration>
33666     <class name="PageSetup"
33667            c:symbol-prefix="page_setup"
33668            c:type="GtkPageSetup"
33669            parent="GObject.Object"
33670            glib:type-name="GtkPageSetup"
33671            glib:get-type="gtk_page_setup_get_type">
33672       <constructor name="new" c:identifier="gtk_page_setup_new" version="2.10">
33673         <doc xml:whitespace="preserve">Creates a new #GtkPageSetup.</doc>
33674         <return-value transfer-ownership="full">
33675           <doc xml:whitespace="preserve">a new #GtkPageSetup.</doc>
33676           <type name="PageSetup" c:type="GtkPageSetup*"/>
33677         </return-value>
33678       </constructor>
33679       <constructor name="new_from_file"
33680                    c:identifier="gtk_page_setup_new_from_file"
33681                    version="2.12"
33682                    throws="1">
33683         <doc xml:whitespace="preserve">Reads the page setup from the file @file_name. Returns a 
33684 new #GtkPageSetup object with the restored page setup, 
33685 or %NULL if an error occurred. See gtk_page_setup_to_file().</doc>
33686         <return-value transfer-ownership="full">
33687           <doc xml:whitespace="preserve">the restored #GtkPageSetup</doc>
33688           <type name="PageSetup" c:type="GtkPageSetup*"/>
33689         </return-value>
33690         <parameters>
33691           <parameter name="file_name" transfer-ownership="none">
33692             <doc xml:whitespace="preserve">the filename to read the page setup from</doc>
33693             <type name="utf8" c:type="gchar*"/>
33694           </parameter>
33695         </parameters>
33696       </constructor>
33697       <constructor name="new_from_key_file"
33698                    c:identifier="gtk_page_setup_new_from_key_file"
33699                    version="2.12"
33700                    throws="1">
33701         <doc xml:whitespace="preserve">Reads the page setup from the group @group_name in the key file
33702 page setup, or %NULL if an error occurred.</doc>
33703         <return-value transfer-ownership="full">
33704           <doc xml:whitespace="preserve">the restored #GtkPageSetup</doc>
33705           <type name="PageSetup" c:type="GtkPageSetup*"/>
33706         </return-value>
33707         <parameters>
33708           <parameter name="key_file" transfer-ownership="none">
33709             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the page_setup from</doc>
33710             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
33711           </parameter>
33712           <parameter name="group_name"
33713                      transfer-ownership="none"
33714                      allow-none="1">
33715             <doc xml:whitespace="preserve">the name of the group in the key_file to read, or %NULL to use the default name "Page Setup"</doc>
33716             <type name="utf8" c:type="gchar*"/>
33717           </parameter>
33718         </parameters>
33719       </constructor>
33720       <method name="copy" c:identifier="gtk_page_setup_copy" version="2.10">
33721         <doc xml:whitespace="preserve">Copies a #GtkPageSetup.</doc>
33722         <return-value transfer-ownership="full">
33723           <doc xml:whitespace="preserve">a copy of @other</doc>
33724           <type name="PageSetup" c:type="GtkPageSetup*"/>
33725         </return-value>
33726       </method>
33727       <method name="get_bottom_margin"
33728               c:identifier="gtk_page_setup_get_bottom_margin"
33729               version="2.10">
33730         <doc xml:whitespace="preserve">Gets the bottom margin in units of @unit.</doc>
33731         <return-value transfer-ownership="none">
33732           <doc xml:whitespace="preserve">the bottom margin</doc>
33733           <type name="gdouble" c:type="gdouble"/>
33734         </return-value>
33735         <parameters>
33736           <parameter name="unit" transfer-ownership="none">
33737             <doc xml:whitespace="preserve">the unit for the return value</doc>
33738             <type name="Unit" c:type="GtkUnit"/>
33739           </parameter>
33740         </parameters>
33741       </method>
33742       <method name="get_left_margin"
33743               c:identifier="gtk_page_setup_get_left_margin"
33744               version="2.10">
33745         <doc xml:whitespace="preserve">Gets the left margin in units of @unit.</doc>
33746         <return-value transfer-ownership="none">
33747           <doc xml:whitespace="preserve">the left margin</doc>
33748           <type name="gdouble" c:type="gdouble"/>
33749         </return-value>
33750         <parameters>
33751           <parameter name="unit" transfer-ownership="none">
33752             <doc xml:whitespace="preserve">the unit for the return value</doc>
33753             <type name="Unit" c:type="GtkUnit"/>
33754           </parameter>
33755         </parameters>
33756       </method>
33757       <method name="get_orientation"
33758               c:identifier="gtk_page_setup_get_orientation"
33759               version="2.10">
33760         <doc xml:whitespace="preserve">Gets the page orientation of the #GtkPageSetup.</doc>
33761         <return-value transfer-ownership="none">
33762           <doc xml:whitespace="preserve">the page orientation</doc>
33763           <type name="PageOrientation" c:type="GtkPageOrientation"/>
33764         </return-value>
33765       </method>
33766       <method name="get_page_height"
33767               c:identifier="gtk_page_setup_get_page_height"
33768               version="2.10">
33769         <doc xml:whitespace="preserve">Returns the page height in units of @unit.
33770 Note that this function takes orientation and
33771 margins into consideration. 
33772 See gtk_page_setup_get_paper_height().</doc>
33773         <return-value transfer-ownership="none">
33774           <doc xml:whitespace="preserve">the page height.</doc>
33775           <type name="gdouble" c:type="gdouble"/>
33776         </return-value>
33777         <parameters>
33778           <parameter name="unit" transfer-ownership="none">
33779             <doc xml:whitespace="preserve">the unit for the return value</doc>
33780             <type name="Unit" c:type="GtkUnit"/>
33781           </parameter>
33782         </parameters>
33783       </method>
33784       <method name="get_page_width"
33785               c:identifier="gtk_page_setup_get_page_width"
33786               version="2.10">
33787         <doc xml:whitespace="preserve">Returns the page width in units of @unit.
33788 Note that this function takes orientation and
33789 margins into consideration. 
33790 See gtk_page_setup_get_paper_width().</doc>
33791         <return-value transfer-ownership="none">
33792           <doc xml:whitespace="preserve">the page width.</doc>
33793           <type name="gdouble" c:type="gdouble"/>
33794         </return-value>
33795         <parameters>
33796           <parameter name="unit" transfer-ownership="none">
33797             <doc xml:whitespace="preserve">the unit for the return value</doc>
33798             <type name="Unit" c:type="GtkUnit"/>
33799           </parameter>
33800         </parameters>
33801       </method>
33802       <method name="get_paper_height"
33803               c:identifier="gtk_page_setup_get_paper_height"
33804               version="2.10">
33805         <doc xml:whitespace="preserve">Returns the paper height in units of @unit.
33806 Note that this function takes orientation, but 
33807 not margins into consideration.
33808 See gtk_page_setup_get_page_height().</doc>
33809         <return-value transfer-ownership="none">
33810           <doc xml:whitespace="preserve">the paper height.</doc>
33811           <type name="gdouble" c:type="gdouble"/>
33812         </return-value>
33813         <parameters>
33814           <parameter name="unit" transfer-ownership="none">
33815             <doc xml:whitespace="preserve">the unit for the return value</doc>
33816             <type name="Unit" c:type="GtkUnit"/>
33817           </parameter>
33818         </parameters>
33819       </method>
33820       <method name="get_paper_size"
33821               c:identifier="gtk_page_setup_get_paper_size"
33822               version="2.10">
33823         <doc xml:whitespace="preserve">Gets the paper size of the #GtkPageSetup.</doc>
33824         <return-value transfer-ownership="full">
33825           <doc xml:whitespace="preserve">the paper size</doc>
33826           <type name="PaperSize" c:type="GtkPaperSize*"/>
33827         </return-value>
33828       </method>
33829       <method name="get_paper_width"
33830               c:identifier="gtk_page_setup_get_paper_width"
33831               version="2.10">
33832         <doc xml:whitespace="preserve">Returns the paper width in units of @unit.
33833 Note that this function takes orientation, but 
33834 not margins into consideration. 
33835 See gtk_page_setup_get_page_width().</doc>
33836         <return-value transfer-ownership="none">
33837           <doc xml:whitespace="preserve">the paper width.</doc>
33838           <type name="gdouble" c:type="gdouble"/>
33839         </return-value>
33840         <parameters>
33841           <parameter name="unit" transfer-ownership="none">
33842             <doc xml:whitespace="preserve">the unit for the return value</doc>
33843             <type name="Unit" c:type="GtkUnit"/>
33844           </parameter>
33845         </parameters>
33846       </method>
33847       <method name="get_right_margin"
33848               c:identifier="gtk_page_setup_get_right_margin"
33849               version="2.10">
33850         <doc xml:whitespace="preserve">Gets the right margin in units of @unit.</doc>
33851         <return-value transfer-ownership="none">
33852           <doc xml:whitespace="preserve">the right margin</doc>
33853           <type name="gdouble" c:type="gdouble"/>
33854         </return-value>
33855         <parameters>
33856           <parameter name="unit" transfer-ownership="none">
33857             <doc xml:whitespace="preserve">the unit for the return value</doc>
33858             <type name="Unit" c:type="GtkUnit"/>
33859           </parameter>
33860         </parameters>
33861       </method>
33862       <method name="get_top_margin"
33863               c:identifier="gtk_page_setup_get_top_margin"
33864               version="2.10">
33865         <doc xml:whitespace="preserve">Gets the top margin in units of @unit.</doc>
33866         <return-value transfer-ownership="none">
33867           <doc xml:whitespace="preserve">the top margin</doc>
33868           <type name="gdouble" c:type="gdouble"/>
33869         </return-value>
33870         <parameters>
33871           <parameter name="unit" transfer-ownership="none">
33872             <doc xml:whitespace="preserve">the unit for the return value</doc>
33873             <type name="Unit" c:type="GtkUnit"/>
33874           </parameter>
33875         </parameters>
33876       </method>
33877       <method name="load_file"
33878               c:identifier="gtk_page_setup_load_file"
33879               version="2.14"
33880               throws="1">
33881         <doc xml:whitespace="preserve">Reads the page setup from the file @file_name.
33882 See gtk_page_setup_to_file().</doc>
33883         <return-value transfer-ownership="none">
33884           <doc xml:whitespace="preserve">%TRUE on success</doc>
33885           <type name="gboolean" c:type="gboolean"/>
33886         </return-value>
33887         <parameters>
33888           <parameter name="file_name" transfer-ownership="none">
33889             <doc xml:whitespace="preserve">the filename to read the page setup from</doc>
33890             <type name="utf8" c:type="char*"/>
33891           </parameter>
33892         </parameters>
33893       </method>
33894       <method name="load_key_file"
33895               c:identifier="gtk_page_setup_load_key_file"
33896               version="2.14"
33897               throws="1">
33898         <doc xml:whitespace="preserve">Reads the page setup from the group @group_name in the key file</doc>
33899         <return-value transfer-ownership="none">
33900           <doc xml:whitespace="preserve">%TRUE on success</doc>
33901           <type name="gboolean" c:type="gboolean"/>
33902         </return-value>
33903         <parameters>
33904           <parameter name="key_file" transfer-ownership="none">
33905             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the page_setup from</doc>
33906             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
33907           </parameter>
33908           <parameter name="group_name"
33909                      transfer-ownership="none"
33910                      allow-none="1">
33911             <doc xml:whitespace="preserve">the name of the group in the key_file to read, or %NULL to use the default name "Page Setup"</doc>
33912             <type name="utf8" c:type="gchar*"/>
33913           </parameter>
33914         </parameters>
33915       </method>
33916       <method name="set_bottom_margin"
33917               c:identifier="gtk_page_setup_set_bottom_margin"
33918               version="2.10">
33919         <doc xml:whitespace="preserve">Sets the bottom margin of the #GtkPageSetup.</doc>
33920         <return-value transfer-ownership="none">
33921           <type name="none" c:type="void"/>
33922         </return-value>
33923         <parameters>
33924           <parameter name="margin" transfer-ownership="none">
33925             <doc xml:whitespace="preserve">the new bottom margin in units of @unit</doc>
33926             <type name="gdouble" c:type="gdouble"/>
33927           </parameter>
33928           <parameter name="unit" transfer-ownership="none">
33929             <doc xml:whitespace="preserve">the units for @margin</doc>
33930             <type name="Unit" c:type="GtkUnit"/>
33931           </parameter>
33932         </parameters>
33933       </method>
33934       <method name="set_left_margin"
33935               c:identifier="gtk_page_setup_set_left_margin"
33936               version="2.10">
33937         <doc xml:whitespace="preserve">Sets the left margin of the #GtkPageSetup.</doc>
33938         <return-value transfer-ownership="none">
33939           <type name="none" c:type="void"/>
33940         </return-value>
33941         <parameters>
33942           <parameter name="margin" transfer-ownership="none">
33943             <doc xml:whitespace="preserve">the new left margin in units of @unit</doc>
33944             <type name="gdouble" c:type="gdouble"/>
33945           </parameter>
33946           <parameter name="unit" transfer-ownership="none">
33947             <doc xml:whitespace="preserve">the units for @margin</doc>
33948             <type name="Unit" c:type="GtkUnit"/>
33949           </parameter>
33950         </parameters>
33951       </method>
33952       <method name="set_orientation"
33953               c:identifier="gtk_page_setup_set_orientation"
33954               version="2.10">
33955         <doc xml:whitespace="preserve">Sets the page orientation of the #GtkPageSetup.</doc>
33956         <return-value transfer-ownership="none">
33957           <type name="none" c:type="void"/>
33958         </return-value>
33959         <parameters>
33960           <parameter name="orientation" transfer-ownership="none">
33961             <doc xml:whitespace="preserve">a #GtkPageOrientation value</doc>
33962             <type name="PageOrientation" c:type="GtkPageOrientation"/>
33963           </parameter>
33964         </parameters>
33965       </method>
33966       <method name="set_paper_size"
33967               c:identifier="gtk_page_setup_set_paper_size"
33968               version="2.10">
33969         <doc xml:whitespace="preserve">Sets the paper size of the #GtkPageSetup without
33970 changing the margins. See 
33971 gtk_page_setup_set_paper_size_and_default_margins().</doc>
33972         <return-value transfer-ownership="none">
33973           <type name="none" c:type="void"/>
33974         </return-value>
33975         <parameters>
33976           <parameter name="size" transfer-ownership="none">
33977             <doc xml:whitespace="preserve">a #GtkPaperSize</doc>
33978             <type name="PaperSize" c:type="GtkPaperSize*"/>
33979           </parameter>
33980         </parameters>
33981       </method>
33982       <method name="set_paper_size_and_default_margins"
33983               c:identifier="gtk_page_setup_set_paper_size_and_default_margins"
33984               version="2.10">
33985         <doc xml:whitespace="preserve">Sets the paper size of the #GtkPageSetup and modifies
33986 the margins according to the new paper size.</doc>
33987         <return-value transfer-ownership="none">
33988           <type name="none" c:type="void"/>
33989         </return-value>
33990         <parameters>
33991           <parameter name="size" transfer-ownership="none">
33992             <doc xml:whitespace="preserve">a #GtkPaperSize</doc>
33993             <type name="PaperSize" c:type="GtkPaperSize*"/>
33994           </parameter>
33995         </parameters>
33996       </method>
33997       <method name="set_right_margin"
33998               c:identifier="gtk_page_setup_set_right_margin"
33999               version="2.10">
34000         <doc xml:whitespace="preserve">Sets the right margin of the #GtkPageSetup.</doc>
34001         <return-value transfer-ownership="none">
34002           <type name="none" c:type="void"/>
34003         </return-value>
34004         <parameters>
34005           <parameter name="margin" transfer-ownership="none">
34006             <doc xml:whitespace="preserve">the new right margin in units of @unit</doc>
34007             <type name="gdouble" c:type="gdouble"/>
34008           </parameter>
34009           <parameter name="unit" transfer-ownership="none">
34010             <doc xml:whitespace="preserve">the units for @margin</doc>
34011             <type name="Unit" c:type="GtkUnit"/>
34012           </parameter>
34013         </parameters>
34014       </method>
34015       <method name="set_top_margin"
34016               c:identifier="gtk_page_setup_set_top_margin"
34017               version="2.10">
34018         <doc xml:whitespace="preserve">Sets the top margin of the #GtkPageSetup.</doc>
34019         <return-value transfer-ownership="none">
34020           <type name="none" c:type="void"/>
34021         </return-value>
34022         <parameters>
34023           <parameter name="margin" transfer-ownership="none">
34024             <doc xml:whitespace="preserve">the new top margin in units of @unit</doc>
34025             <type name="gdouble" c:type="gdouble"/>
34026           </parameter>
34027           <parameter name="unit" transfer-ownership="none">
34028             <doc xml:whitespace="preserve">the units for @margin</doc>
34029             <type name="Unit" c:type="GtkUnit"/>
34030           </parameter>
34031         </parameters>
34032       </method>
34033       <method name="to_file"
34034               c:identifier="gtk_page_setup_to_file"
34035               version="2.12"
34036               throws="1">
34037         <doc xml:whitespace="preserve">This function saves the information from @setup to @file_name.</doc>
34038         <return-value transfer-ownership="none">
34039           <doc xml:whitespace="preserve">%TRUE on success</doc>
34040           <type name="gboolean" c:type="gboolean"/>
34041         </return-value>
34042         <parameters>
34043           <parameter name="file_name" transfer-ownership="none">
34044             <doc xml:whitespace="preserve">the file to save to</doc>
34045             <type name="utf8" c:type="char*"/>
34046           </parameter>
34047         </parameters>
34048       </method>
34049       <method name="to_key_file"
34050               c:identifier="gtk_page_setup_to_key_file"
34051               version="2.12">
34052         <doc xml:whitespace="preserve">This function adds the page setup from @setup to @key_file.</doc>
34053         <return-value transfer-ownership="none">
34054           <type name="none" c:type="void"/>
34055         </return-value>
34056         <parameters>
34057           <parameter name="key_file" transfer-ownership="none">
34058             <doc xml:whitespace="preserve">the #GKeyFile to save the page setup to</doc>
34059             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
34060           </parameter>
34061           <parameter name="group_name" transfer-ownership="none">
34062             <doc xml:whitespace="preserve">the group to add the settings to in @key_file, or %NULL to use the default name "Page Setup"</doc>
34063             <type name="utf8" c:type="gchar*"/>
34064           </parameter>
34065         </parameters>
34066       </method>
34067     </class>
34068     <callback name="PageSetupDoneFunc" c:type="GtkPageSetupDoneFunc">
34069       <return-value transfer-ownership="none">
34070         <type name="none" c:type="void"/>
34071       </return-value>
34072       <parameters>
34073         <parameter name="page_setup" transfer-ownership="none">
34074           <type name="PageSetup" c:type="GtkPageSetup*"/>
34075         </parameter>
34076         <parameter name="data" transfer-ownership="none">
34077           <type name="gpointer" c:type="gpointer"/>
34078         </parameter>
34079       </parameters>
34080     </callback>
34081     <class name="Paned"
34082            c:symbol-prefix="paned"
34083            c:type="GtkPaned"
34084            parent="Container"
34085            glib:type-name="GtkPaned"
34086            glib:get-type="gtk_paned_get_type"
34087            glib:type-struct="PanedClass">
34088       <implements name="Atk.ImplementorIface"/>
34089       <implements name="Buildable"/>
34090       <implements name="Orientable"/>
34091       <implements name="SizeRequest"/>
34092       <constructor name="new" c:identifier="gtk_paned_new" version="3.0">
34093         <doc xml:whitespace="preserve">Creates a new #GtkPaned widget.</doc>
34094         <return-value transfer-ownership="none">
34095           <doc xml:whitespace="preserve">a new #GtkPaned.</doc>
34096           <type name="Widget" c:type="GtkWidget*"/>
34097         </return-value>
34098         <parameters>
34099           <parameter name="orientation" transfer-ownership="none">
34100             <doc xml:whitespace="preserve">the paned's orientation.</doc>
34101             <type name="Orientation" c:type="GtkOrientation"/>
34102           </parameter>
34103         </parameters>
34104       </constructor>
34105       <method name="add1" c:identifier="gtk_paned_add1">
34106         <return-value transfer-ownership="none">
34107           <type name="none" c:type="void"/>
34108         </return-value>
34109         <parameters>
34110           <parameter name="child" transfer-ownership="none">
34111             <type name="Widget" c:type="GtkWidget*"/>
34112           </parameter>
34113         </parameters>
34114       </method>
34115       <method name="add2" c:identifier="gtk_paned_add2">
34116         <return-value transfer-ownership="none">
34117           <type name="none" c:type="void"/>
34118         </return-value>
34119         <parameters>
34120           <parameter name="child" transfer-ownership="none">
34121             <type name="Widget" c:type="GtkWidget*"/>
34122           </parameter>
34123         </parameters>
34124       </method>
34125       <method name="get_child1"
34126               c:identifier="gtk_paned_get_child1"
34127               version="2.4">
34128         <doc xml:whitespace="preserve">Obtains the first child of the paned widget.</doc>
34129         <return-value transfer-ownership="none">
34130           <doc xml:whitespace="preserve">first child, or %NULL if it is not set.</doc>
34131           <type name="Widget" c:type="GtkWidget*"/>
34132         </return-value>
34133       </method>
34134       <method name="get_child2"
34135               c:identifier="gtk_paned_get_child2"
34136               version="2.4">
34137         <doc xml:whitespace="preserve">Obtains the second child of the paned widget.</doc>
34138         <return-value transfer-ownership="none">
34139           <doc xml:whitespace="preserve">second child, or %NULL if it is not set.</doc>
34140           <type name="Widget" c:type="GtkWidget*"/>
34141         </return-value>
34142       </method>
34143       <method name="get_handle_window"
34144               c:identifier="gtk_paned_get_handle_window"
34145               version="2.20">
34146         <doc xml:whitespace="preserve">Returns the #GdkWindow of the handle. This function is
34147 useful when handling button or motion events because it
34148 enables the callback to distinguish between the window
34149 of the paned, a child and the handle.</doc>
34150         <return-value transfer-ownership="none">
34151           <doc xml:whitespace="preserve">the paned's handle window.</doc>
34152           <type name="Gdk.Window" c:type="GdkWindow*"/>
34153         </return-value>
34154       </method>
34155       <method name="get_position" c:identifier="gtk_paned_get_position">
34156         <doc xml:whitespace="preserve">Obtains the position of the divider between the two panes.</doc>
34157         <return-value transfer-ownership="none">
34158           <doc xml:whitespace="preserve">position of the divider</doc>
34159           <type name="gint" c:type="gint"/>
34160         </return-value>
34161       </method>
34162       <method name="pack1" c:identifier="gtk_paned_pack1">
34163         <return-value transfer-ownership="none">
34164           <type name="none" c:type="void"/>
34165         </return-value>
34166         <parameters>
34167           <parameter name="child" transfer-ownership="none">
34168             <type name="Widget" c:type="GtkWidget*"/>
34169           </parameter>
34170           <parameter name="resize" transfer-ownership="none">
34171             <type name="gboolean" c:type="gboolean"/>
34172           </parameter>
34173           <parameter name="shrink" transfer-ownership="none">
34174             <type name="gboolean" c:type="gboolean"/>
34175           </parameter>
34176         </parameters>
34177       </method>
34178       <method name="pack2" c:identifier="gtk_paned_pack2">
34179         <return-value transfer-ownership="none">
34180           <type name="none" c:type="void"/>
34181         </return-value>
34182         <parameters>
34183           <parameter name="child" transfer-ownership="none">
34184             <type name="Widget" c:type="GtkWidget*"/>
34185           </parameter>
34186           <parameter name="resize" transfer-ownership="none">
34187             <type name="gboolean" c:type="gboolean"/>
34188           </parameter>
34189           <parameter name="shrink" transfer-ownership="none">
34190             <type name="gboolean" c:type="gboolean"/>
34191           </parameter>
34192         </parameters>
34193       </method>
34194       <method name="set_position" c:identifier="gtk_paned_set_position">
34195         <doc xml:whitespace="preserve">Sets the position of the divider between the two panes.</doc>
34196         <return-value transfer-ownership="none">
34197           <type name="none" c:type="void"/>
34198         </return-value>
34199         <parameters>
34200           <parameter name="position" transfer-ownership="none">
34201             <doc xml:whitespace="preserve">pixel position of divider, a negative value means that the position is unset.</doc>
34202             <type name="gint" c:type="gint"/>
34203           </parameter>
34204         </parameters>
34205       </method>
34206       <property name="max-position" version="2.4" transfer-ownership="none">
34207         <doc xml:whitespace="preserve">The largest possible value for the position property. This property is derived from the
34208 size and shrinkability of the widget's children.</doc>
34209         <type name="gint"/>
34210       </property>
34211       <property name="min-position" version="2.4" transfer-ownership="none">
34212         <doc xml:whitespace="preserve">The smallest possible value for the position property. This property is derived from the
34213 size and shrinkability of the widget's children.</doc>
34214         <type name="gint"/>
34215       </property>
34216       <property name="position" writable="1" transfer-ownership="none">
34217         <type name="gint"/>
34218       </property>
34219       <property name="position-set" writable="1" transfer-ownership="none">
34220         <type name="gboolean"/>
34221       </property>
34222       <field name="container">
34223         <type name="Container" c:type="GtkContainer"/>
34224       </field>
34225       <field name="priv">
34226         <type name="PanedPrivate" c:type="GtkPanedPrivate*"/>
34227       </field>
34228       <glib:signal name="accept-position" version="2.0">
34229         <doc xml:whitespace="preserve">The ::accept-position signal is a 
34230 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34231 which gets emitted to accept the current position of the handle when 
34232 moving it using key bindings.
34233 The default binding for this signal is Return or Space.</doc>
34234         <return-value transfer-ownership="none">
34235           <type name="gboolean"/>
34236         </return-value>
34237       </glib:signal>
34238       <glib:signal name="cancel-position" version="2.0">
34239         <doc xml:whitespace="preserve">The ::cancel-position signal is a 
34240 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34241 which gets emitted to cancel moving the position of the handle using key 
34242 bindings. The position of the handle will be reset to the value prior to 
34243 moving it.
34244 The default binding for this signal is Escape.</doc>
34245         <return-value transfer-ownership="none">
34246           <type name="gboolean"/>
34247         </return-value>
34248       </glib:signal>
34249       <glib:signal name="cycle-child-focus" version="2.0">
34250         <doc xml:whitespace="preserve">The ::cycle-child-focus signal is a 
34251 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34252 which gets emitted to cycle the focus between the children of the paned.
34253 The default binding is f6.</doc>
34254         <return-value transfer-ownership="none">
34255           <type name="gboolean"/>
34256         </return-value>
34257         <parameters>
34258           <parameter name="object" transfer-ownership="none">
34259             <doc xml:whitespace="preserve">whether cycling backward or forward</doc>
34260             <type name="gboolean"/>
34261           </parameter>
34262         </parameters>
34263       </glib:signal>
34264       <glib:signal name="cycle-handle-focus" version="2.0">
34265         <doc xml:whitespace="preserve">The ::cycle-handle-focus signal is a 
34266 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34267 which gets emitted to cycle whether the paned should grab focus to allow
34268 the user to change position of the handle by using key bindings.
34269 The default binding for this signal is f8.</doc>
34270         <return-value transfer-ownership="none">
34271           <type name="gboolean"/>
34272         </return-value>
34273         <parameters>
34274           <parameter name="object" transfer-ownership="none">
34275             <doc xml:whitespace="preserve">whether cycling backward or forward</doc>
34276             <type name="gboolean"/>
34277           </parameter>
34278         </parameters>
34279       </glib:signal>
34280       <glib:signal name="move-handle" version="2.0">
34281         <doc xml:whitespace="preserve">The ::move-handle signal is a 
34282 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34283 which gets emitted to move the handle when the user is using key bindings 
34284 to move it.</doc>
34285         <return-value transfer-ownership="none">
34286           <type name="gboolean"/>
34287         </return-value>
34288         <parameters>
34289           <parameter name="object" transfer-ownership="none">
34290             <doc xml:whitespace="preserve">a #GtkScrollType</doc>
34291             <type name="ScrollType"/>
34292           </parameter>
34293         </parameters>
34294       </glib:signal>
34295       <glib:signal name="toggle-handle-focus" version="2.0">
34296         <doc xml:whitespace="preserve">The ::toggle-handle-focus is a 
34297 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34298 which gets emitted to accept the current position of the handle and then 
34299 move focus to the next widget in the focus chain.
34300 The default binding is Tab.</doc>
34301         <return-value transfer-ownership="none">
34302           <type name="gboolean"/>
34303         </return-value>
34304       </glib:signal>
34305     </class>
34306     <record name="PanedClass"
34307             c:type="GtkPanedClass"
34308             glib:is-gtype-struct-for="Paned">
34309       <field name="parent_class">
34310         <type name="ContainerClass" c:type="GtkContainerClass"/>
34311       </field>
34312       <field name="cycle_child_focus">
34313         <callback name="cycle_child_focus">
34314           <return-value transfer-ownership="none">
34315             <type name="gboolean" c:type="gboolean"/>
34316           </return-value>
34317           <parameters>
34318             <parameter name="paned" transfer-ownership="none">
34319               <type name="Paned" c:type="GtkPaned*"/>
34320             </parameter>
34321             <parameter name="reverse" transfer-ownership="none">
34322               <type name="gboolean" c:type="gboolean"/>
34323             </parameter>
34324           </parameters>
34325         </callback>
34326       </field>
34327       <field name="toggle_handle_focus">
34328         <callback name="toggle_handle_focus">
34329           <return-value transfer-ownership="none">
34330             <type name="gboolean" c:type="gboolean"/>
34331           </return-value>
34332           <parameters>
34333             <parameter name="paned" transfer-ownership="none">
34334               <type name="Paned" c:type="GtkPaned*"/>
34335             </parameter>
34336           </parameters>
34337         </callback>
34338       </field>
34339       <field name="move_handle">
34340         <callback name="move_handle">
34341           <return-value transfer-ownership="none">
34342             <type name="gboolean" c:type="gboolean"/>
34343           </return-value>
34344           <parameters>
34345             <parameter name="paned" transfer-ownership="none">
34346               <type name="Paned" c:type="GtkPaned*"/>
34347             </parameter>
34348             <parameter name="scroll" transfer-ownership="none">
34349               <type name="ScrollType" c:type="GtkScrollType"/>
34350             </parameter>
34351           </parameters>
34352         </callback>
34353       </field>
34354       <field name="cycle_handle_focus">
34355         <callback name="cycle_handle_focus">
34356           <return-value transfer-ownership="none">
34357             <type name="gboolean" c:type="gboolean"/>
34358           </return-value>
34359           <parameters>
34360             <parameter name="paned" transfer-ownership="none">
34361               <type name="Paned" c:type="GtkPaned*"/>
34362             </parameter>
34363             <parameter name="reverse" transfer-ownership="none">
34364               <type name="gboolean" c:type="gboolean"/>
34365             </parameter>
34366           </parameters>
34367         </callback>
34368       </field>
34369       <field name="accept_position">
34370         <callback name="accept_position">
34371           <return-value transfer-ownership="none">
34372             <type name="gboolean" c:type="gboolean"/>
34373           </return-value>
34374           <parameters>
34375             <parameter name="paned" transfer-ownership="none">
34376               <type name="Paned" c:type="GtkPaned*"/>
34377             </parameter>
34378           </parameters>
34379         </callback>
34380       </field>
34381       <field name="cancel_position">
34382         <callback name="cancel_position">
34383           <return-value transfer-ownership="none">
34384             <type name="gboolean" c:type="gboolean"/>
34385           </return-value>
34386           <parameters>
34387             <parameter name="paned" transfer-ownership="none">
34388               <type name="Paned" c:type="GtkPaned*"/>
34389             </parameter>
34390           </parameters>
34391         </callback>
34392       </field>
34393       <field name="_gtk_reserved1" introspectable="0">
34394         <callback name="_gtk_reserved1">
34395           <return-value transfer-ownership="none">
34396             <type name="none" c:type="void"/>
34397           </return-value>
34398         </callback>
34399       </field>
34400       <field name="_gtk_reserved2" introspectable="0">
34401         <callback name="_gtk_reserved2">
34402           <return-value transfer-ownership="none">
34403             <type name="none" c:type="void"/>
34404           </return-value>
34405         </callback>
34406       </field>
34407       <field name="_gtk_reserved3" introspectable="0">
34408         <callback name="_gtk_reserved3">
34409           <return-value transfer-ownership="none">
34410             <type name="none" c:type="void"/>
34411           </return-value>
34412         </callback>
34413       </field>
34414       <field name="_gtk_reserved4" introspectable="0">
34415         <callback name="_gtk_reserved4">
34416           <return-value transfer-ownership="none">
34417             <type name="none" c:type="void"/>
34418           </return-value>
34419         </callback>
34420       </field>
34421     </record>
34422     <record name="PanedPrivate" c:type="GtkPanedPrivate" disguised="1">
34423     </record>
34424     <record name="PaperSize"
34425             c:type="GtkPaperSize"
34426             glib:type-name="GtkPaperSize"
34427             glib:get-type="gtk_paper_size_get_type"
34428             c:symbol-prefix="paper_size">
34429       <constructor name="new" c:identifier="gtk_paper_size_new" version="2.10">
34430         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object by parsing a
34431 &lt;ulink url="ftp://ftp.pwg.org/pub/pwg/candidates/cs-pwgmsn10-20020226-5101.1.pdf"&gt;PWG 5101.1-2002&lt;/ulink&gt;
34432 paper name.
34433 If @name is %NULL, the default paper size is returned,
34434 see gtk_paper_size_get_default().
34435 to free it</doc>
34436         <return-value transfer-ownership="full">
34437           <doc xml:whitespace="preserve">a new #GtkPaperSize, use gtk_paper_size_free()</doc>
34438           <type name="PaperSize" c:type="GtkPaperSize*"/>
34439         </return-value>
34440         <parameters>
34441           <parameter name="name" transfer-ownership="none" allow-none="1">
34442             <doc xml:whitespace="preserve">a paper size name, or %NULL</doc>
34443             <type name="utf8" c:type="gchar*"/>
34444           </parameter>
34445         </parameters>
34446       </constructor>
34447       <constructor name="new_custom"
34448                    c:identifier="gtk_paper_size_new_custom"
34449                    version="2.10">
34450         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object with the
34451 given parameters.
34452 to free it</doc>
34453         <return-value transfer-ownership="full">
34454           <doc xml:whitespace="preserve">a new #GtkPaperSize object, use gtk_paper_size_free()</doc>
34455           <type name="PaperSize" c:type="GtkPaperSize*"/>
34456         </return-value>
34457         <parameters>
34458           <parameter name="name" transfer-ownership="none">
34459             <doc xml:whitespace="preserve">the paper name</doc>
34460             <type name="utf8" c:type="gchar*"/>
34461           </parameter>
34462           <parameter name="display_name" transfer-ownership="none">
34463             <doc xml:whitespace="preserve">the human-readable name</doc>
34464             <type name="utf8" c:type="gchar*"/>
34465           </parameter>
34466           <parameter name="width" transfer-ownership="none">
34467             <doc xml:whitespace="preserve">the paper width, in units of @unit</doc>
34468             <type name="gdouble" c:type="gdouble"/>
34469           </parameter>
34470           <parameter name="height" transfer-ownership="none">
34471             <doc xml:whitespace="preserve">the paper height, in units of @unit</doc>
34472             <type name="gdouble" c:type="gdouble"/>
34473           </parameter>
34474           <parameter name="unit" transfer-ownership="none">
34475             <doc xml:whitespace="preserve">the unit for @width and @height</doc>
34476             <type name="Unit" c:type="GtkUnit"/>
34477           </parameter>
34478         </parameters>
34479       </constructor>
34480       <constructor name="new_from_key_file"
34481                    c:identifier="gtk_paper_size_new_from_key_file"
34482                    version="2.12"
34483                    throws="1">
34484         <doc xml:whitespace="preserve">Reads a paper size from the group @group_name in the key file
34485 paper size, or %NULL if an error occurred.</doc>
34486         <return-value transfer-ownership="full">
34487           <doc xml:whitespace="preserve">a new #GtkPaperSize object with the restored</doc>
34488           <type name="PaperSize" c:type="GtkPaperSize*"/>
34489         </return-value>
34490         <parameters>
34491           <parameter name="key_file" transfer-ownership="none">
34492             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the papersize from</doc>
34493             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
34494           </parameter>
34495           <parameter name="group_name" transfer-ownership="none">
34496             <doc xml:whitespace="preserve">the name ofthe group in the key file to read, or %NULL to read the first group</doc>
34497             <type name="utf8" c:type="gchar*"/>
34498           </parameter>
34499         </parameters>
34500       </constructor>
34501       <constructor name="new_from_ppd"
34502                    c:identifier="gtk_paper_size_new_from_ppd"
34503                    version="2.10">
34504         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object by using 
34505 PPD information. 
34506 If @ppd_name is not a recognized PPD paper name, 
34507 construct a custom #GtkPaperSize object.
34508 to free it</doc>
34509         <return-value transfer-ownership="full">
34510           <doc xml:whitespace="preserve">a new #GtkPaperSize, use gtk_paper_size_free()</doc>
34511           <type name="PaperSize" c:type="GtkPaperSize*"/>
34512         </return-value>
34513         <parameters>
34514           <parameter name="ppd_name" transfer-ownership="none">
34515             <doc xml:whitespace="preserve">a PPD paper name</doc>
34516             <type name="utf8" c:type="gchar*"/>
34517           </parameter>
34518           <parameter name="ppd_display_name" transfer-ownership="none">
34519             <doc xml:whitespace="preserve">the corresponding human-readable name</doc>
34520             <type name="utf8" c:type="gchar*"/>
34521           </parameter>
34522           <parameter name="width" transfer-ownership="none">
34523             <doc xml:whitespace="preserve">the paper width, in points</doc>
34524             <type name="gdouble" c:type="gdouble"/>
34525           </parameter>
34526           <parameter name="height" transfer-ownership="none">
34527             <doc xml:whitespace="preserve">the paper height in points</doc>
34528             <type name="gdouble" c:type="gdouble"/>
34529           </parameter>
34530         </parameters>
34531       </constructor>
34532       <method name="copy" c:identifier="gtk_paper_size_copy" version="2.10">
34533         <doc xml:whitespace="preserve">Copies an existing #GtkPaperSize.</doc>
34534         <return-value transfer-ownership="full">
34535           <doc xml:whitespace="preserve">a copy of @other</doc>
34536           <type name="PaperSize" c:type="GtkPaperSize*"/>
34537         </return-value>
34538       </method>
34539       <method name="free" c:identifier="gtk_paper_size_free" version="2.10">
34540         <doc xml:whitespace="preserve">Free the given #GtkPaperSize object.</doc>
34541         <return-value transfer-ownership="none">
34542           <type name="none" c:type="void"/>
34543         </return-value>
34544       </method>
34545       <method name="get_default_bottom_margin"
34546               c:identifier="gtk_paper_size_get_default_bottom_margin"
34547               version="2.10">
34548         <doc xml:whitespace="preserve">Gets the default bottom margin for the #GtkPaperSize.</doc>
34549         <return-value transfer-ownership="none">
34550           <doc xml:whitespace="preserve">the default bottom margin</doc>
34551           <type name="gdouble" c:type="gdouble"/>
34552         </return-value>
34553         <parameters>
34554           <parameter name="unit" transfer-ownership="none">
34555             <doc xml:whitespace="preserve">the unit for the return value</doc>
34556             <type name="Unit" c:type="GtkUnit"/>
34557           </parameter>
34558         </parameters>
34559       </method>
34560       <method name="get_default_left_margin"
34561               c:identifier="gtk_paper_size_get_default_left_margin"
34562               version="2.10">
34563         <doc xml:whitespace="preserve">Gets the default left margin for the #GtkPaperSize.</doc>
34564         <return-value transfer-ownership="none">
34565           <doc xml:whitespace="preserve">the default left margin</doc>
34566           <type name="gdouble" c:type="gdouble"/>
34567         </return-value>
34568         <parameters>
34569           <parameter name="unit" transfer-ownership="none">
34570             <doc xml:whitespace="preserve">the unit for the return value</doc>
34571             <type name="Unit" c:type="GtkUnit"/>
34572           </parameter>
34573         </parameters>
34574       </method>
34575       <method name="get_default_right_margin"
34576               c:identifier="gtk_paper_size_get_default_right_margin"
34577               version="2.10">
34578         <doc xml:whitespace="preserve">Gets the default right margin for the #GtkPaperSize.</doc>
34579         <return-value transfer-ownership="none">
34580           <doc xml:whitespace="preserve">the default right margin</doc>
34581           <type name="gdouble" c:type="gdouble"/>
34582         </return-value>
34583         <parameters>
34584           <parameter name="unit" transfer-ownership="none">
34585             <doc xml:whitespace="preserve">the unit for the return value</doc>
34586             <type name="Unit" c:type="GtkUnit"/>
34587           </parameter>
34588         </parameters>
34589       </method>
34590       <method name="get_default_top_margin"
34591               c:identifier="gtk_paper_size_get_default_top_margin"
34592               version="2.10">
34593         <doc xml:whitespace="preserve">Gets the default top margin for the #GtkPaperSize.</doc>
34594         <return-value transfer-ownership="none">
34595           <doc xml:whitespace="preserve">the default top margin</doc>
34596           <type name="gdouble" c:type="gdouble"/>
34597         </return-value>
34598         <parameters>
34599           <parameter name="unit" transfer-ownership="none">
34600             <doc xml:whitespace="preserve">the unit for the return value</doc>
34601             <type name="Unit" c:type="GtkUnit"/>
34602           </parameter>
34603         </parameters>
34604       </method>
34605       <method name="get_display_name"
34606               c:identifier="gtk_paper_size_get_display_name"
34607               version="2.10">
34608         <doc xml:whitespace="preserve">Gets the human-readable name of the #GtkPaperSize.</doc>
34609         <return-value transfer-ownership="none">
34610           <doc xml:whitespace="preserve">the human-readable name of @size</doc>
34611           <type name="utf8" c:type="gchar*"/>
34612         </return-value>
34613       </method>
34614       <method name="get_height"
34615               c:identifier="gtk_paper_size_get_height"
34616               version="2.10">
34617         <doc xml:whitespace="preserve">Gets the paper height of the #GtkPaperSize, in 
34618 units of @unit.</doc>
34619         <return-value transfer-ownership="none">
34620           <doc xml:whitespace="preserve">the paper height</doc>
34621           <type name="gdouble" c:type="gdouble"/>
34622         </return-value>
34623         <parameters>
34624           <parameter name="unit" transfer-ownership="none">
34625             <doc xml:whitespace="preserve">the unit for the return value</doc>
34626             <type name="Unit" c:type="GtkUnit"/>
34627           </parameter>
34628         </parameters>
34629       </method>
34630       <method name="get_name"
34631               c:identifier="gtk_paper_size_get_name"
34632               version="2.10">
34633         <doc xml:whitespace="preserve">Gets the name of the #GtkPaperSize.</doc>
34634         <return-value transfer-ownership="none">
34635           <doc xml:whitespace="preserve">the name of @size</doc>
34636           <type name="utf8" c:type="gchar*"/>
34637         </return-value>
34638       </method>
34639       <method name="get_ppd_name"
34640               c:identifier="gtk_paper_size_get_ppd_name"
34641               version="2.10">
34642         <doc xml:whitespace="preserve">Gets the PPD name of the #GtkPaperSize, which
34643 may be %NULL.</doc>
34644         <return-value transfer-ownership="none">
34645           <doc xml:whitespace="preserve">the PPD name of @size</doc>
34646           <type name="utf8" c:type="gchar*"/>
34647         </return-value>
34648       </method>
34649       <method name="get_width"
34650               c:identifier="gtk_paper_size_get_width"
34651               version="2.10">
34652         <doc xml:whitespace="preserve">Gets the paper width of the #GtkPaperSize, in 
34653 units of @unit.</doc>
34654         <return-value transfer-ownership="none">
34655           <doc xml:whitespace="preserve">the paper width</doc>
34656           <type name="gdouble" c:type="gdouble"/>
34657         </return-value>
34658         <parameters>
34659           <parameter name="unit" transfer-ownership="none">
34660             <doc xml:whitespace="preserve">the unit for the return value</doc>
34661             <type name="Unit" c:type="GtkUnit"/>
34662           </parameter>
34663         </parameters>
34664       </method>
34665       <method name="is_custom" c:identifier="gtk_paper_size_is_custom">
34666         <doc xml:whitespace="preserve">Returns %TRUE if @size is not a standard paper size.</doc>
34667         <return-value transfer-ownership="none">
34668           <doc xml:whitespace="preserve">whether @size is a custom paper size.</doc>
34669           <type name="gboolean" c:type="gboolean"/>
34670         </return-value>
34671       </method>
34672       <method name="is_equal"
34673               c:identifier="gtk_paper_size_is_equal"
34674               version="2.10">
34675         <doc xml:whitespace="preserve">Compares two #GtkPaperSize objects.
34676 represent the same paper size</doc>
34677         <return-value transfer-ownership="none">
34678           <doc xml:whitespace="preserve">%TRUE, if @size1 and @size2</doc>
34679           <type name="gboolean" c:type="gboolean"/>
34680         </return-value>
34681         <parameters>
34682           <parameter name="size2" transfer-ownership="none">
34683             <doc xml:whitespace="preserve">another #GtkPaperSize object</doc>
34684             <type name="PaperSize" c:type="GtkPaperSize*"/>
34685           </parameter>
34686         </parameters>
34687       </method>
34688       <method name="set_size"
34689               c:identifier="gtk_paper_size_set_size"
34690               version="2.10">
34691         <doc xml:whitespace="preserve">Changes the dimensions of a @size to @width x @height.</doc>
34692         <return-value transfer-ownership="none">
34693           <type name="none" c:type="void"/>
34694         </return-value>
34695         <parameters>
34696           <parameter name="width" transfer-ownership="none">
34697             <doc xml:whitespace="preserve">the new width in units of @unit</doc>
34698             <type name="gdouble" c:type="gdouble"/>
34699           </parameter>
34700           <parameter name="height" transfer-ownership="none">
34701             <doc xml:whitespace="preserve">the new height in units of @unit</doc>
34702             <type name="gdouble" c:type="gdouble"/>
34703           </parameter>
34704           <parameter name="unit" transfer-ownership="none">
34705             <doc xml:whitespace="preserve">the unit for @width and @height</doc>
34706             <type name="Unit" c:type="GtkUnit"/>
34707           </parameter>
34708         </parameters>
34709       </method>
34710       <method name="to_key_file"
34711               c:identifier="gtk_paper_size_to_key_file"
34712               version="2.12">
34713         <doc xml:whitespace="preserve">This function adds the paper size from @size to @key_file.</doc>
34714         <return-value transfer-ownership="none">
34715           <type name="none" c:type="void"/>
34716         </return-value>
34717         <parameters>
34718           <parameter name="key_file" transfer-ownership="none">
34719             <doc xml:whitespace="preserve">the #GKeyFile to save the paper size to</doc>
34720             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
34721           </parameter>
34722           <parameter name="group_name" transfer-ownership="none">
34723             <doc xml:whitespace="preserve">the group to add the settings to in @key_file</doc>
34724             <type name="utf8" c:type="gchar*"/>
34725           </parameter>
34726         </parameters>
34727       </method>
34728     </record>
34729     <enumeration name="PathPriorityType"
34730                  glib:type-name="GtkPathPriorityType"
34731                  glib:get-type="gtk_path_priority_type_get_type"
34732                  c:type="GtkPathPriorityType">
34733       <member name="lowest"
34734               value="0"
34735               c:identifier="GTK_PATH_PRIO_LOWEST"
34736               glib:nick="lowest"/>
34737       <member name="gtk"
34738               value="4"
34739               c:identifier="GTK_PATH_PRIO_GTK"
34740               glib:nick="gtk"/>
34741       <member name="application"
34742               value="8"
34743               c:identifier="GTK_PATH_PRIO_APPLICATION"
34744               glib:nick="application"/>
34745       <member name="theme"
34746               value="10"
34747               c:identifier="GTK_PATH_PRIO_THEME"
34748               glib:nick="theme"/>
34749       <member name="rc"
34750               value="12"
34751               c:identifier="GTK_PATH_PRIO_RC"
34752               glib:nick="rc"/>
34753       <member name="highest"
34754               value="15"
34755               c:identifier="GTK_PATH_PRIO_HIGHEST"
34756               glib:nick="highest"/>
34757     </enumeration>
34758     <enumeration name="PathType"
34759                  glib:type-name="GtkPathType"
34760                  glib:get-type="gtk_path_type_get_type"
34761                  c:type="GtkPathType">
34762       <member name="widget"
34763               value="0"
34764               c:identifier="GTK_PATH_WIDGET"
34765               glib:nick="widget"/>
34766       <member name="widget_class"
34767               value="1"
34768               c:identifier="GTK_PATH_WIDGET_CLASS"
34769               glib:nick="widget-class"/>
34770       <member name="class"
34771               value="2"
34772               c:identifier="GTK_PATH_CLASS"
34773               glib:nick="class"/>
34774     </enumeration>
34775     <class name="Plug"
34776            c:symbol-prefix="plug"
34777            c:type="GtkPlug"
34778            parent="Window"
34779            glib:type-name="GtkPlug"
34780            glib:get-type="gtk_plug_get_type"
34781            glib:type-struct="PlugClass">
34782       <implements name="Atk.ImplementorIface"/>
34783       <implements name="Buildable"/>
34784       <implements name="SizeRequest"/>
34785       <constructor name="new" c:identifier="gtk_plug_new">
34786         <doc xml:whitespace="preserve">Creates a new plug widget inside the #GtkSocket identified
34787 by @socket_id. If @socket_id is 0, the plug is left "unplugged" and
34788 can later be plugged into a #GtkSocket by  gtk_socket_add_id().</doc>
34789         <return-value transfer-ownership="none">
34790           <doc xml:whitespace="preserve">the new #GtkPlug widget.</doc>
34791           <type name="Widget" c:type="GtkWidget*"/>
34792         </return-value>
34793         <parameters>
34794           <parameter name="socket_id" transfer-ownership="none">
34795             <doc xml:whitespace="preserve">the window ID of the socket, or 0.</doc>
34796             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
34797           </parameter>
34798         </parameters>
34799       </constructor>
34800       <constructor name="new_for_display"
34801                    c:identifier="gtk_plug_new_for_display"
34802                    version="2.2">
34803         <doc xml:whitespace="preserve">Create a new plug widget inside the #GtkSocket identified by socket_id.</doc>
34804         <return-value transfer-ownership="none">
34805           <doc xml:whitespace="preserve">the new #GtkPlug widget.</doc>
34806           <type name="Widget" c:type="GtkWidget*"/>
34807         </return-value>
34808         <parameters>
34809           <parameter name="display" transfer-ownership="none">
34810             <doc xml:whitespace="preserve">the #GdkDisplay on which @socket_id is displayed</doc>
34811             <type name="Gdk.Display" c:type="GdkDisplay*"/>
34812           </parameter>
34813           <parameter name="socket_id" transfer-ownership="none">
34814             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
34815             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
34816           </parameter>
34817         </parameters>
34818       </constructor>
34819       <method name="construct" c:identifier="gtk_plug_construct">
34820         <doc xml:whitespace="preserve">Finish the initialization of @plug for a given #GtkSocket identified by</doc>
34821         <return-value transfer-ownership="none">
34822           <type name="none" c:type="void"/>
34823         </return-value>
34824         <parameters>
34825           <parameter name="socket_id" transfer-ownership="none">
34826             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
34827             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
34828           </parameter>
34829         </parameters>
34830       </method>
34831       <method name="construct_for_display"
34832               c:identifier="gtk_plug_construct_for_display"
34833               version="2.2">
34834         <doc xml:whitespace="preserve">Finish the initialization of @plug for a given #GtkSocket identified by
34835 This function will generally only be used by classes deriving from #GtkPlug.</doc>
34836         <return-value transfer-ownership="none">
34837           <type name="none" c:type="void"/>
34838         </return-value>
34839         <parameters>
34840           <parameter name="display" transfer-ownership="none">
34841             <doc xml:whitespace="preserve">the #GdkDisplay associated with @socket_id's #GtkSocket.</doc>
34842             <type name="Gdk.Display" c:type="GdkDisplay*"/>
34843           </parameter>
34844           <parameter name="socket_id" transfer-ownership="none">
34845             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
34846             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
34847           </parameter>
34848         </parameters>
34849       </method>
34850       <method name="get_embedded"
34851               c:identifier="gtk_plug_get_embedded"
34852               version="2.14">
34853         <doc xml:whitespace="preserve">Determines whether the plug is embedded in a socket.</doc>
34854         <return-value transfer-ownership="none">
34855           <doc xml:whitespace="preserve">%TRUE if the plug is embedded in a socket</doc>
34856           <type name="gboolean" c:type="gboolean"/>
34857         </return-value>
34858       </method>
34859       <method name="get_id" c:identifier="gtk_plug_get_id">
34860         <doc xml:whitespace="preserve">Gets the window ID of a #GtkPlug widget, which can then
34861 be used to embed this window inside another window, for
34862 instance with gtk_socket_add_id().</doc>
34863         <return-value transfer-ownership="none">
34864           <doc xml:whitespace="preserve">the window ID for the plug</doc>
34865           <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
34866         </return-value>
34867       </method>
34868       <method name="get_socket_window"
34869               c:identifier="gtk_plug_get_socket_window"
34870               version="2.14">
34871         <doc xml:whitespace="preserve">Retrieves the socket the plug is embedded in.</doc>
34872         <return-value transfer-ownership="none">
34873           <doc xml:whitespace="preserve">the window of the socket, or %NULL</doc>
34874           <type name="Gdk.Window" c:type="GdkWindow*"/>
34875         </return-value>
34876       </method>
34877       <property name="embedded" version="2.12" transfer-ownership="none">
34878         <doc xml:whitespace="preserve">%TRUE if the plug is embedded in a socket.</doc>
34879         <type name="gboolean"/>
34880       </property>
34881       <property name="socket-window" version="2.14" transfer-ownership="none">
34882         <doc xml:whitespace="preserve">The window of the socket the plug is embedded in.</doc>
34883         <type name="Gdk.Window"/>
34884       </property>
34885       <field name="window">
34886         <type name="Window" c:type="GtkWindow"/>
34887       </field>
34888       <field name="priv">
34889         <type name="PlugPrivate" c:type="GtkPlugPrivate*"/>
34890       </field>
34891       <glib:signal name="embedded">
34892         <doc xml:whitespace="preserve">Gets emitted when the plug becomes embedded in a socket.</doc>
34893         <return-value transfer-ownership="none">
34894           <type name="none"/>
34895         </return-value>
34896       </glib:signal>
34897     </class>
34898     <record name="PlugClass"
34899             c:type="GtkPlugClass"
34900             glib:is-gtype-struct-for="Plug">
34901       <field name="parent_class">
34902         <type name="WindowClass" c:type="GtkWindowClass"/>
34903       </field>
34904       <field name="embedded">
34905         <callback name="embedded">
34906           <return-value transfer-ownership="none">
34907             <type name="none" c:type="void"/>
34908           </return-value>
34909           <parameters>
34910             <parameter name="plug" transfer-ownership="none">
34911               <type name="Plug" c:type="GtkPlug*"/>
34912             </parameter>
34913           </parameters>
34914         </callback>
34915       </field>
34916       <field name="_gtk_reserved1" introspectable="0">
34917         <callback name="_gtk_reserved1">
34918           <return-value transfer-ownership="none">
34919             <type name="none" c:type="void"/>
34920           </return-value>
34921         </callback>
34922       </field>
34923       <field name="_gtk_reserved2" introspectable="0">
34924         <callback name="_gtk_reserved2">
34925           <return-value transfer-ownership="none">
34926             <type name="none" c:type="void"/>
34927           </return-value>
34928         </callback>
34929       </field>
34930       <field name="_gtk_reserved3" introspectable="0">
34931         <callback name="_gtk_reserved3">
34932           <return-value transfer-ownership="none">
34933             <type name="none" c:type="void"/>
34934           </return-value>
34935         </callback>
34936       </field>
34937       <field name="_gtk_reserved4" introspectable="0">
34938         <callback name="_gtk_reserved4">
34939           <return-value transfer-ownership="none">
34940             <type name="none" c:type="void"/>
34941           </return-value>
34942         </callback>
34943       </field>
34944     </record>
34945     <record name="PlugPrivate" c:type="GtkPlugPrivate" disguised="1">
34946     </record>
34947     <enumeration name="PolicyType"
34948                  glib:type-name="GtkPolicyType"
34949                  glib:get-type="gtk_policy_type_get_type"
34950                  c:type="GtkPolicyType">
34951       <member name="always"
34952               value="0"
34953               c:identifier="GTK_POLICY_ALWAYS"
34954               glib:nick="always"/>
34955       <member name="automatic"
34956               value="1"
34957               c:identifier="GTK_POLICY_AUTOMATIC"
34958               glib:nick="automatic"/>
34959       <member name="never"
34960               value="2"
34961               c:identifier="GTK_POLICY_NEVER"
34962               glib:nick="never"/>
34963     </enumeration>
34964     <enumeration name="PositionType"
34965                  glib:type-name="GtkPositionType"
34966                  glib:get-type="gtk_position_type_get_type"
34967                  c:type="GtkPositionType">
34968       <member name="left"
34969               value="0"
34970               c:identifier="GTK_POS_LEFT"
34971               glib:nick="left"/>
34972       <member name="right"
34973               value="1"
34974               c:identifier="GTK_POS_RIGHT"
34975               glib:nick="right"/>
34976       <member name="top" value="2" c:identifier="GTK_POS_TOP" glib:nick="top"/>
34977       <member name="bottom"
34978               value="3"
34979               c:identifier="GTK_POS_BOTTOM"
34980               glib:nick="bottom"/>
34981     </enumeration>
34982     <class name="PrintContext"
34983            c:symbol-prefix="print_context"
34984            c:type="GtkPrintContext"
34985            parent="GObject.Object"
34986            glib:type-name="GtkPrintContext"
34987            glib:get-type="gtk_print_context_get_type">
34988       <method name="create_pango_context"
34989               c:identifier="gtk_print_context_create_pango_context"
34990               version="2.10">
34991         <doc xml:whitespace="preserve">Creates a new #PangoContext that can be used with the
34992 #GtkPrintContext.</doc>
34993         <return-value transfer-ownership="full">
34994           <doc xml:whitespace="preserve">a new Pango context for @context</doc>
34995           <type name="Pango.Context" c:type="PangoContext*"/>
34996         </return-value>
34997       </method>
34998       <method name="create_pango_layout"
34999               c:identifier="gtk_print_context_create_pango_layout"
35000               version="2.10">
35001         <doc xml:whitespace="preserve">Creates a new #PangoLayout that is suitable for use
35002 with the #GtkPrintContext.</doc>
35003         <return-value transfer-ownership="full">
35004           <doc xml:whitespace="preserve">a new Pango layout for @context</doc>
35005           <type name="Pango.Layout" c:type="PangoLayout*"/>
35006         </return-value>
35007       </method>
35008       <method name="get_cairo_context"
35009               c:identifier="gtk_print_context_get_cairo_context"
35010               version="2.10">
35011         <doc xml:whitespace="preserve">Obtains the cairo context that is associated with the
35012 #GtkPrintContext.</doc>
35013         <return-value transfer-ownership="full">
35014           <doc xml:whitespace="preserve">the cairo context of @context</doc>
35015           <type name="cairo.Context" c:type="cairo_t*"/>
35016         </return-value>
35017       </method>
35018       <method name="get_dpi_x"
35019               c:identifier="gtk_print_context_get_dpi_x"
35020               version="2.10">
35021         <doc xml:whitespace="preserve">Obtains the horizontal resolution of the #GtkPrintContext,
35022 in dots per inch.</doc>
35023         <return-value transfer-ownership="none">
35024           <doc xml:whitespace="preserve">the horizontal resolution of @context</doc>
35025           <type name="gdouble" c:type="gdouble"/>
35026         </return-value>
35027       </method>
35028       <method name="get_dpi_y"
35029               c:identifier="gtk_print_context_get_dpi_y"
35030               version="2.10">
35031         <doc xml:whitespace="preserve">Obtains the vertical resolution of the #GtkPrintContext,
35032 in dots per inch.</doc>
35033         <return-value transfer-ownership="none">
35034           <doc xml:whitespace="preserve">the vertical resolution of @context</doc>
35035           <type name="gdouble" c:type="gdouble"/>
35036         </return-value>
35037       </method>
35038       <method name="get_hard_margins"
35039               c:identifier="gtk_print_context_get_hard_margins"
35040               version="2.20">
35041         <doc xml:whitespace="preserve">Obtains the hardware printer margins of the #GtkPrintContext, in units.</doc>
35042         <return-value transfer-ownership="none">
35043           <doc xml:whitespace="preserve">%TRUE if the hard margins were retrieved</doc>
35044           <type name="gboolean" c:type="gboolean"/>
35045         </return-value>
35046         <parameters>
35047           <parameter name="top" transfer-ownership="none">
35048             <doc xml:whitespace="preserve">top hardware printer margin</doc>
35049             <type name="gdouble" c:type="gdouble*"/>
35050           </parameter>
35051           <parameter name="bottom" transfer-ownership="none">
35052             <doc xml:whitespace="preserve">bottom hardware printer margin</doc>
35053             <type name="gdouble" c:type="gdouble*"/>
35054           </parameter>
35055           <parameter name="left" transfer-ownership="none">
35056             <doc xml:whitespace="preserve">left hardware printer margin</doc>
35057             <type name="gdouble" c:type="gdouble*"/>
35058           </parameter>
35059           <parameter name="right" transfer-ownership="none">
35060             <doc xml:whitespace="preserve">right hardware printer margin</doc>
35061             <type name="gdouble" c:type="gdouble*"/>
35062           </parameter>
35063         </parameters>
35064       </method>
35065       <method name="get_height"
35066               c:identifier="gtk_print_context_get_height"
35067               version="2.10">
35068         <doc xml:whitespace="preserve">Obtains the height of the #GtkPrintContext, in pixels.</doc>
35069         <return-value transfer-ownership="none">
35070           <doc xml:whitespace="preserve">the height of @context</doc>
35071           <type name="gdouble" c:type="gdouble"/>
35072         </return-value>
35073       </method>
35074       <method name="get_page_setup"
35075               c:identifier="gtk_print_context_get_page_setup"
35076               version="2.10">
35077         <doc xml:whitespace="preserve">Obtains the #GtkPageSetup that determines the page
35078 dimensions of the #GtkPrintContext.</doc>
35079         <return-value transfer-ownership="none">
35080           <doc xml:whitespace="preserve">the page setup of @context</doc>
35081           <type name="PageSetup" c:type="GtkPageSetup*"/>
35082         </return-value>
35083       </method>
35084       <method name="get_pango_fontmap"
35085               c:identifier="gtk_print_context_get_pango_fontmap"
35086               version="2.10">
35087         <doc xml:whitespace="preserve">Returns a #PangoFontMap that is suitable for use
35088 with the #GtkPrintContext.</doc>
35089         <return-value transfer-ownership="none">
35090           <doc xml:whitespace="preserve">the font map of @context</doc>
35091           <type name="Pango.FontMap" c:type="PangoFontMap*"/>
35092         </return-value>
35093       </method>
35094       <method name="get_width"
35095               c:identifier="gtk_print_context_get_width"
35096               version="2.10">
35097         <doc xml:whitespace="preserve">Obtains the width of the #GtkPrintContext, in pixels.</doc>
35098         <return-value transfer-ownership="none">
35099           <doc xml:whitespace="preserve">the width of @context</doc>
35100           <type name="gdouble" c:type="gdouble"/>
35101         </return-value>
35102       </method>
35103       <method name="set_cairo_context"
35104               c:identifier="gtk_print_context_set_cairo_context"
35105               version="2.10">
35106         <doc xml:whitespace="preserve">Sets a new cairo context on a print context. 
35107 This function is intended to be used when implementing
35108 an internal print preview, it is not needed for printing,
35109 since GTK+ itself creates a suitable cairo context in that
35110 case.</doc>
35111         <return-value transfer-ownership="none">
35112           <type name="none" c:type="void"/>
35113         </return-value>
35114         <parameters>
35115           <parameter name="cr" transfer-ownership="none">
35116             <doc xml:whitespace="preserve">the cairo context</doc>
35117             <type name="cairo.Context" c:type="cairo_t*"/>
35118           </parameter>
35119           <parameter name="dpi_x" transfer-ownership="none">
35120             <doc xml:whitespace="preserve">the horizontal resolution to use with @cr</doc>
35121             <type name="gdouble" c:type="double"/>
35122           </parameter>
35123           <parameter name="dpi_y" transfer-ownership="none">
35124             <doc xml:whitespace="preserve">the vertical resolution to use with @cr</doc>
35125             <type name="gdouble" c:type="double"/>
35126           </parameter>
35127         </parameters>
35128       </method>
35129     </class>
35130     <enumeration name="PrintDuplex"
35131                  glib:type-name="GtkPrintDuplex"
35132                  glib:get-type="gtk_print_duplex_get_type"
35133                  c:type="GtkPrintDuplex">
35134       <member name="simplex"
35135               value="0"
35136               c:identifier="GTK_PRINT_DUPLEX_SIMPLEX"
35137               glib:nick="simplex"/>
35138       <member name="horizontal"
35139               value="1"
35140               c:identifier="GTK_PRINT_DUPLEX_HORIZONTAL"
35141               glib:nick="horizontal"/>
35142       <member name="vertical"
35143               value="2"
35144               c:identifier="GTK_PRINT_DUPLEX_VERTICAL"
35145               glib:nick="vertical"/>
35146     </enumeration>
35147     <enumeration name="PrintError"
35148                  glib:type-name="GtkPrintError"
35149                  glib:get-type="gtk_print_error_get_type"
35150                  c:type="GtkPrintError"
35151                  glib:error-quark="gtk_print_error_quark">
35152       <member name="general"
35153               value="0"
35154               c:identifier="GTK_PRINT_ERROR_GENERAL"
35155               glib:nick="general"/>
35156       <member name="internal_error"
35157               value="1"
35158               c:identifier="GTK_PRINT_ERROR_INTERNAL_ERROR"
35159               glib:nick="internal-error"/>
35160       <member name="nomem"
35161               value="2"
35162               c:identifier="GTK_PRINT_ERROR_NOMEM"
35163               glib:nick="nomem"/>
35164       <member name="invalid_file"
35165               value="3"
35166               c:identifier="GTK_PRINT_ERROR_INVALID_FILE"
35167               glib:nick="invalid-file"/>
35168     </enumeration>
35169     <class name="PrintOperation"
35170            c:symbol-prefix="print_operation"
35171            c:type="GtkPrintOperation"
35172            parent="GObject.Object"
35173            glib:type-name="GtkPrintOperation"
35174            glib:get-type="gtk_print_operation_get_type"
35175            glib:type-struct="PrintOperationClass">
35176       <implements name="PrintOperationPreview"/>
35177       <constructor name="new"
35178                    c:identifier="gtk_print_operation_new"
35179                    version="2.10">
35180         <doc xml:whitespace="preserve">Creates a new #GtkPrintOperation.</doc>
35181         <return-value transfer-ownership="full">
35182           <doc xml:whitespace="preserve">a new #GtkPrintOperation</doc>
35183           <type name="PrintOperation" c:type="GtkPrintOperation*"/>
35184         </return-value>
35185       </constructor>
35186       <method name="cancel"
35187               c:identifier="gtk_print_operation_cancel"
35188               version="2.10">
35189         <doc xml:whitespace="preserve">Cancels a running print operation. This function may
35190 be called from a #GtkPrintOperation::begin-print, 
35191 #GtkPrintOperation::paginate or #GtkPrintOperation::draw-page
35192 signal handler to stop the currently running print 
35193 operation.</doc>
35194         <return-value transfer-ownership="none">
35195           <type name="none" c:type="void"/>
35196         </return-value>
35197       </method>
35198       <method name="draw_page_finish"
35199               c:identifier="gtk_print_operation_draw_page_finish"
35200               version="2.16">
35201         <doc xml:whitespace="preserve">Signalize that drawing of particular page is complete.
35202 It is called after completion of page drawing (e.g. drawing in another
35203 thread).
35204 If gtk_print_operation_set_defer_drawing() was called before, then this function
35205 has to be called by application. In another case it is called by the library
35206 itself.</doc>
35207         <return-value transfer-ownership="none">
35208           <type name="none" c:type="void"/>
35209         </return-value>
35210       </method>
35211       <method name="get_default_page_setup"
35212               c:identifier="gtk_print_operation_get_default_page_setup"
35213               version="2.10">
35214         <doc xml:whitespace="preserve">Returns the default page setup, see
35215 gtk_print_operation_set_default_page_setup().</doc>
35216         <return-value transfer-ownership="none">
35217           <doc xml:whitespace="preserve">the default page setup</doc>
35218           <type name="PageSetup" c:type="GtkPageSetup*"/>
35219         </return-value>
35220       </method>
35221       <method name="get_embed_page_setup"
35222               c:identifier="gtk_print_operation_get_embed_page_setup"
35223               version="2.18">
35224         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::embed-page-setup property.</doc>
35225         <return-value transfer-ownership="none">
35226           <doc xml:whitespace="preserve">whether page setup selection combos are embedded</doc>
35227           <type name="gboolean" c:type="gboolean"/>
35228         </return-value>
35229       </method>
35230       <method name="get_error"
35231               c:identifier="gtk_print_operation_get_error"
35232               version="2.10"
35233               throws="1">
35234         <doc xml:whitespace="preserve">Call this when the result of a print operation is
35235 %GTK_PRINT_OPERATION_RESULT_ERROR, either as returned by 
35236 gtk_print_operation_run(), or in the #GtkPrintOperation::done signal 
35237 handler. The returned #GError will contain more details on what went wrong.</doc>
35238         <return-value transfer-ownership="none">
35239           <type name="none" c:type="void"/>
35240         </return-value>
35241       </method>
35242       <method name="get_has_selection"
35243               c:identifier="gtk_print_operation_get_has_selection"
35244               version="2.18">
35245         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::has-selection property.</doc>
35246         <return-value transfer-ownership="none">
35247           <doc xml:whitespace="preserve">whether there is a selection</doc>
35248           <type name="gboolean" c:type="gboolean"/>
35249         </return-value>
35250       </method>
35251       <method name="get_n_pages_to_print"
35252               c:identifier="gtk_print_operation_get_n_pages_to_print"
35253               version="2.18">
35254         <doc xml:whitespace="preserve">Returns the number of pages that will be printed.
35255 Note that this value is set during print preparation phase
35256 (%GTK_PRINT_STATUS_PREPARING), so this function should never be
35257 called before the data generation phase (%GTK_PRINT_STATUS_GENERATING_DATA).
35258 You can connect to the #GtkPrintOperation::status-changed signal
35259 and call gtk_print_operation_get_n_pages_to_print() when
35260 print status is %GTK_PRINT_STATUS_GENERATING_DATA.
35261 This is typically used to track the progress of print operation.</doc>
35262         <return-value transfer-ownership="none">
35263           <doc xml:whitespace="preserve">the number of pages that will be printed</doc>
35264           <type name="gint" c:type="gint"/>
35265         </return-value>
35266       </method>
35267       <method name="get_print_settings"
35268               c:identifier="gtk_print_operation_get_print_settings"
35269               version="2.10">
35270         <doc xml:whitespace="preserve">Returns the current print settings.
35271 Note that the return value is %NULL until either
35272 gtk_print_operation_set_print_settings() or
35273 gtk_print_operation_run() have been called.</doc>
35274         <return-value transfer-ownership="none">
35275           <doc xml:whitespace="preserve">the current print settings of @op.</doc>
35276           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
35277         </return-value>
35278       </method>
35279       <method name="get_status"
35280               c:identifier="gtk_print_operation_get_status"
35281               version="2.10">
35282         <doc xml:whitespace="preserve">Returns the status of the print operation. 
35283 Also see gtk_print_operation_get_status_string().</doc>
35284         <return-value transfer-ownership="none">
35285           <doc xml:whitespace="preserve">the status of the print operation</doc>
35286           <type name="PrintStatus" c:type="GtkPrintStatus"/>
35287         </return-value>
35288       </method>
35289       <method name="get_status_string"
35290               c:identifier="gtk_print_operation_get_status_string"
35291               version="2.10">
35292         <doc xml:whitespace="preserve">Returns a string representation of the status of the 
35293 print operation. The string is translated and suitable
35294 for displaying the print status e.g. in a #GtkStatusbar.
35295 Use gtk_print_operation_get_status() to obtain a status
35296 value that is suitable for programmatic use. 
35297 of the print operation</doc>
35298         <return-value transfer-ownership="none">
35299           <doc xml:whitespace="preserve">a string representation of the status</doc>
35300           <type name="utf8" c:type="gchar*"/>
35301         </return-value>
35302       </method>
35303       <method name="get_support_selection"
35304               c:identifier="gtk_print_operation_get_support_selection"
35305               version="2.18">
35306         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::support-selection property.</doc>
35307         <return-value transfer-ownership="none">
35308           <doc xml:whitespace="preserve">whether the application supports print of selection</doc>
35309           <type name="gboolean" c:type="gboolean"/>
35310         </return-value>
35311       </method>
35312       <method name="is_finished"
35313               c:identifier="gtk_print_operation_is_finished"
35314               version="2.10">
35315         <doc xml:whitespace="preserve">A convenience function to find out if the print operation
35316 is finished, either successfully (%GTK_PRINT_STATUS_FINISHED)
35317 or unsuccessfully (%GTK_PRINT_STATUS_FINISHED_ABORTED).
35318 can be in a non-finished state even after done has been called, as
35319 the operation status then tracks the print job status on the printer.</doc>
35320         <return-value transfer-ownership="none">
35321           <doc xml:whitespace="preserve">%TRUE, if the print operation is finished.</doc>
35322           <type name="gboolean" c:type="gboolean"/>
35323         </return-value>
35324       </method>
35325       <method name="run"
35326               c:identifier="gtk_print_operation_run"
35327               version="2.10"
35328               throws="1">
35329         <doc xml:whitespace="preserve">Runs the print operation, by first letting the user modify
35330 print settings in the print dialog, and then print the document.
35331 Normally that this function does not return until the rendering of all 
35332 pages is complete. You can connect to the 
35333 #GtkPrintOperation::status-changed signal on @op to obtain some 
35334 information about the progress of the print operation. 
35335 Furthermore, it may use a recursive mainloop to show the print dialog.
35336 If you call gtk_print_operation_set_allow_async() or set the 
35337 #GtkPrintOperation:allow-async property the operation will run 
35338 asynchronously if this is supported on the platform. The 
35339 #GtkPrintOperation::done signal will be emitted with the result of the 
35340 operation when the it is done (i.e. when the dialog is canceled, or when 
35341 the print succeeds or fails).
35342 |[
35343 if (settings != NULL)
35344 gtk_print_operation_set_print_settings (print, settings);
35345 if (page_setup != NULL)
35346 gtk_print_operation_set_default_page_setup (print, page_setup);
35347 g_signal_connect (print, "begin-print", 
35348 G_CALLBACK (begin_print), &amp;data);
35349 g_signal_connect (print, "draw-page", 
35350 G_CALLBACK (draw_page), &amp;data);
35351 res = gtk_print_operation_run (print, 
35352 GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG, 
35353 parent, 
35354 &amp;error);
35355 if (res == GTK_PRINT_OPERATION_RESULT_ERROR)
35356 {
35357 error_dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
35358 GTK_DIALOG_DESTROY_WITH_PARENT,
35359 GTK_MESSAGE_ERROR,
35360 GTK_BUTTONS_CLOSE,
35361 "Error printing file:\n%s",
35362 error-&gt;message);
35363 g_signal_connect (error_dialog, "response", 
35364 G_CALLBACK (gtk_widget_destroy), NULL);
35365 gtk_widget_show (error_dialog);
35366 g_error_free (error);
35367 }
35368 else if (res == GTK_PRINT_OPERATION_RESULT_APPLY)
35369 {
35370 if (settings != NULL)
35371 g_object_unref (settings);
35372 settings = g_object_ref (gtk_print_operation_get_print_settings (print));
35373 }
35374 ]|
35375 Note that gtk_print_operation_run() can only be called once on a
35376 given #GtkPrintOperation.
35377 %GTK_PRINT_OPERATION_RESULT_APPLY indicates that the printing was
35378 completed successfully. In this case, it is a good idea to obtain 
35379 the used print settings with gtk_print_operation_get_print_settings() 
35380 and store them for reuse with the next print operation. A value of
35381 %GTK_PRINT_OPERATION_RESULT_IN_PROGRESS means the operation is running
35382 asynchronously, and will emit the #GtkPrintOperation::done signal when 
35383 done.</doc>
35384         <return-value transfer-ownership="none">
35385           <doc xml:whitespace="preserve">the result of the print operation. A return value of</doc>
35386           <type name="PrintOperationResult" c:type="GtkPrintOperationResult"/>
35387         </return-value>
35388         <parameters>
35389           <parameter name="action" transfer-ownership="none">
35390             <doc xml:whitespace="preserve">the action to start</doc>
35391             <type name="PrintOperationAction"
35392                   c:type="GtkPrintOperationAction"/>
35393           </parameter>
35394           <parameter name="parent" transfer-ownership="none" allow-none="1">
35395             <doc xml:whitespace="preserve">Transient parent of the dialog</doc>
35396             <type name="Window" c:type="GtkWindow*"/>
35397           </parameter>
35398         </parameters>
35399       </method>
35400       <method name="set_allow_async"
35401               c:identifier="gtk_print_operation_set_allow_async"
35402               version="2.10">
35403         <doc xml:whitespace="preserve">Sets whether the gtk_print_operation_run() may return
35404 before the print operation is completed. Note that
35405 some platforms may not allow asynchronous operation.</doc>
35406         <return-value transfer-ownership="none">
35407           <type name="none" c:type="void"/>
35408         </return-value>
35409         <parameters>
35410           <parameter name="allow_async" transfer-ownership="none">
35411             <doc xml:whitespace="preserve">%TRUE to allow asynchronous operation</doc>
35412             <type name="gboolean" c:type="gboolean"/>
35413           </parameter>
35414         </parameters>
35415       </method>
35416       <method name="set_current_page"
35417               c:identifier="gtk_print_operation_set_current_page"
35418               version="2.10">
35419         <doc xml:whitespace="preserve">Sets the current page.
35420 If this is called before gtk_print_operation_run(), 
35421 the user will be able to select to print only the current page.
35422 Note that this only makes sense for pre-paginated documents.</doc>
35423         <return-value transfer-ownership="none">
35424           <type name="none" c:type="void"/>
35425         </return-value>
35426         <parameters>
35427           <parameter name="current_page" transfer-ownership="none">
35428             <doc xml:whitespace="preserve">the current page, 0-based</doc>
35429             <type name="gint" c:type="gint"/>
35430           </parameter>
35431         </parameters>
35432       </method>
35433       <method name="set_custom_tab_label"
35434               c:identifier="gtk_print_operation_set_custom_tab_label"
35435               version="2.10">
35436         <doc xml:whitespace="preserve">Sets the label for the tab holding custom widgets.</doc>
35437         <return-value transfer-ownership="none">
35438           <type name="none" c:type="void"/>
35439         </return-value>
35440         <parameters>
35441           <parameter name="label" transfer-ownership="none" allow-none="1">
35442             <doc xml:whitespace="preserve">the label to use, or %NULL to use the default label</doc>
35443             <type name="utf8" c:type="gchar*"/>
35444           </parameter>
35445         </parameters>
35446       </method>
35447       <method name="set_default_page_setup"
35448               c:identifier="gtk_print_operation_set_default_page_setup"
35449               version="2.10">
35450         <doc xml:whitespace="preserve">Makes @default_page_setup the default page setup for @op.
35451 This page setup will be used by gtk_print_operation_run(),
35452 but it can be overridden on a per-page basis by connecting
35453 to the #GtkPrintOperation::request-page-setup signal.</doc>
35454         <return-value transfer-ownership="none">
35455           <type name="none" c:type="void"/>
35456         </return-value>
35457         <parameters>
35458           <parameter name="default_page_setup"
35459                      transfer-ownership="none"
35460                      allow-none="1">
35461             <doc xml:whitespace="preserve">a #GtkPageSetup, or %NULL</doc>
35462             <type name="PageSetup" c:type="GtkPageSetup*"/>
35463           </parameter>
35464         </parameters>
35465       </method>
35466       <method name="set_defer_drawing"
35467               c:identifier="gtk_print_operation_set_defer_drawing"
35468               version="2.16">
35469         <doc xml:whitespace="preserve">Sets up the #GtkPrintOperation to wait for calling of
35470 gtk_print_operation_draw_page_finish() from application. It can
35471 be used for drawing page in another thread.
35472 This function must be called in the callback of "draw-page" signal.</doc>
35473         <return-value transfer-ownership="none">
35474           <type name="none" c:type="void"/>
35475         </return-value>
35476       </method>
35477       <method name="set_embed_page_setup"
35478               c:identifier="gtk_print_operation_set_embed_page_setup"
35479               version="2.18">
35480         <doc xml:whitespace="preserve">Embed page size combo box and orientation combo box into page setup page.
35481 Selected page setup is stored as default page setup in #GtkPrintOperation.</doc>
35482         <return-value transfer-ownership="none">
35483           <type name="none" c:type="void"/>
35484         </return-value>
35485         <parameters>
35486           <parameter name="embed" transfer-ownership="none">
35487             <doc xml:whitespace="preserve">%TRUE to embed page setup selection in the #GtkPrintDialog</doc>
35488             <type name="gboolean" c:type="gboolean"/>
35489           </parameter>
35490         </parameters>
35491       </method>
35492       <method name="set_export_filename"
35493               c:identifier="gtk_print_operation_set_export_filename"
35494               version="2.10">
35495         <doc xml:whitespace="preserve">Sets up the #GtkPrintOperation to generate a file instead
35496 of showing the print dialog. The indended use of this function
35497 is for implementing "Export to PDF" actions. Currently, PDF
35498 is the only supported format.
35499 "Print to PDF" support is independent of this and is done
35500 by letting the user pick the "Print to PDF" item from the list
35501 of printers in the print dialog.</doc>
35502         <return-value transfer-ownership="none">
35503           <type name="none" c:type="void"/>
35504         </return-value>
35505         <parameters>
35506           <parameter name="filename" transfer-ownership="none">
35507             <doc xml:whitespace="preserve">the filename for the exported file</doc>
35508             <type name="utf8" c:type="gchar*"/>
35509           </parameter>
35510         </parameters>
35511       </method>
35512       <method name="set_has_selection"
35513               c:identifier="gtk_print_operation_set_has_selection"
35514               version="2.18">
35515         <doc xml:whitespace="preserve">Sets whether there is a selection to print.
35516 Application has to set number of pages to which the selection
35517 will draw by gtk_print_operation_set_n_pages() in a callback of
35518 #GtkPrintOperation::begin-print.</doc>
35519         <return-value transfer-ownership="none">
35520           <type name="none" c:type="void"/>
35521         </return-value>
35522         <parameters>
35523           <parameter name="has_selection" transfer-ownership="none">
35524             <doc xml:whitespace="preserve">%TRUE indicates that a selection exists</doc>
35525             <type name="gboolean" c:type="gboolean"/>
35526           </parameter>
35527         </parameters>
35528       </method>
35529       <method name="set_job_name"
35530               c:identifier="gtk_print_operation_set_job_name"
35531               version="2.10">
35532         <doc xml:whitespace="preserve">Sets the name of the print job. The name is used to identify 
35533 the job (e.g. in monitoring applications like eggcups). 
35534 If you don't set a job name, GTK+ picks a default one by 
35535 numbering successive print jobs.</doc>
35536         <return-value transfer-ownership="none">
35537           <type name="none" c:type="void"/>
35538         </return-value>
35539         <parameters>
35540           <parameter name="job_name" transfer-ownership="none">
35541             <doc xml:whitespace="preserve">a string that identifies the print job</doc>
35542             <type name="utf8" c:type="gchar*"/>
35543           </parameter>
35544         </parameters>
35545       </method>
35546       <method name="set_n_pages"
35547               c:identifier="gtk_print_operation_set_n_pages"
35548               version="2.10">
35549         <doc xml:whitespace="preserve">Sets the number of pages in the document. 
35550 This &lt;emphasis&gt;must&lt;/emphasis&gt; be set to a positive number
35551 before the rendering starts. It may be set in a 
35552 #GtkPrintOperation::begin-print signal hander.
35553 Note that the page numbers passed to the 
35554 #GtkPrintOperation::request-page-setup 
35555 and #GtkPrintOperation::draw-page signals are 0-based, i.e. if 
35556 the user chooses to print all pages, the last ::draw-page signal 
35557 will be for page @n_pages - 1.</doc>
35558         <return-value transfer-ownership="none">
35559           <type name="none" c:type="void"/>
35560         </return-value>
35561         <parameters>
35562           <parameter name="n_pages" transfer-ownership="none">
35563             <doc xml:whitespace="preserve">the number of pages</doc>
35564             <type name="gint" c:type="gint"/>
35565           </parameter>
35566         </parameters>
35567       </method>
35568       <method name="set_print_settings"
35569               c:identifier="gtk_print_operation_set_print_settings"
35570               version="2.10">
35571         <doc xml:whitespace="preserve">Sets the print settings for @op. This is typically used to
35572 re-establish print settings from a previous print operation,
35573 see gtk_print_operation_run().</doc>
35574         <return-value transfer-ownership="none">
35575           <type name="none" c:type="void"/>
35576         </return-value>
35577         <parameters>
35578           <parameter name="print_settings"
35579                      transfer-ownership="none"
35580                      allow-none="1">
35581             <doc xml:whitespace="preserve">#GtkPrintSettings</doc>
35582             <type name="PrintSettings" c:type="GtkPrintSettings*"/>
35583           </parameter>
35584         </parameters>
35585       </method>
35586       <method name="set_show_progress"
35587               c:identifier="gtk_print_operation_set_show_progress"
35588               version="2.10">
35589         <doc xml:whitespace="preserve">If @show_progress is %TRUE, the print operation will show a 
35590 progress dialog during the print operation.</doc>
35591         <return-value transfer-ownership="none">
35592           <type name="none" c:type="void"/>
35593         </return-value>
35594         <parameters>
35595           <parameter name="show_progress" transfer-ownership="none">
35596             <doc xml:whitespace="preserve">%TRUE to show a progress dialog</doc>
35597             <type name="gboolean" c:type="gboolean"/>
35598           </parameter>
35599         </parameters>
35600       </method>
35601       <method name="set_support_selection"
35602               c:identifier="gtk_print_operation_set_support_selection"
35603               version="2.18">
35604         <doc xml:whitespace="preserve">Sets whether selection is supported by #GtkPrintOperation.</doc>
35605         <return-value transfer-ownership="none">
35606           <type name="none" c:type="void"/>
35607         </return-value>
35608         <parameters>
35609           <parameter name="support_selection" transfer-ownership="none">
35610             <doc xml:whitespace="preserve">%TRUE to support selection</doc>
35611             <type name="gboolean" c:type="gboolean"/>
35612           </parameter>
35613         </parameters>
35614       </method>
35615       <method name="set_track_print_status"
35616               c:identifier="gtk_print_operation_set_track_print_status"
35617               version="2.10">
35618         <doc xml:whitespace="preserve">If track_status is %TRUE, the print operation will try to continue report
35619 on the status of the print job in the printer queues and printer. This
35620 can allow your application to show things like "out of paper" issues,
35621 and when the print job actually reaches the printer.
35622 This function is often implemented using some form of polling, so it should
35623 not be enabled unless needed.</doc>
35624         <return-value transfer-ownership="none">
35625           <type name="none" c:type="void"/>
35626         </return-value>
35627         <parameters>
35628           <parameter name="track_status" transfer-ownership="none">
35629             <doc xml:whitespace="preserve">%TRUE to track status after printing</doc>
35630             <type name="gboolean" c:type="gboolean"/>
35631           </parameter>
35632         </parameters>
35633       </method>
35634       <method name="set_unit"
35635               c:identifier="gtk_print_operation_set_unit"
35636               version="2.10">
35637         <doc xml:whitespace="preserve">Sets up the transformation for the cairo context obtained from
35638 #GtkPrintContext in such a way that distances are measured in 
35639 units of @unit.</doc>
35640         <return-value transfer-ownership="none">
35641           <type name="none" c:type="void"/>
35642         </return-value>
35643         <parameters>
35644           <parameter name="unit" transfer-ownership="none">
35645             <doc xml:whitespace="preserve">the unit to use</doc>
35646             <type name="Unit" c:type="GtkUnit"/>
35647           </parameter>
35648         </parameters>
35649       </method>
35650       <method name="set_use_full_page"
35651               c:identifier="gtk_print_operation_set_use_full_page"
35652               version="2.10">
35653         <doc xml:whitespace="preserve">If @full_page is %TRUE, the transformation for the cairo context 
35654 obtained from #GtkPrintContext puts the origin at the top left 
35655 corner of the page (which may not be the top left corner of the 
35656 sheet, depending on page orientation and the number of pages per 
35657 sheet). Otherwise, the origin is at the top left corner of the
35658 imageable area (i.e. inside the margins).</doc>
35659         <return-value transfer-ownership="none">
35660           <type name="none" c:type="void"/>
35661         </return-value>
35662         <parameters>
35663           <parameter name="full_page" transfer-ownership="none">
35664             <doc xml:whitespace="preserve">%TRUE to set up the #GtkPrintContext for the full page</doc>
35665             <type name="gboolean" c:type="gboolean"/>
35666           </parameter>
35667         </parameters>
35668       </method>
35669       <property name="allow-async"
35670                 version="2.10"
35671                 writable="1"
35672                 transfer-ownership="none">
35673         <doc xml:whitespace="preserve">Determines whether the print operation may run asynchronously or not.
35674 Some systems don't support asynchronous printing, but those that do
35675 will return %GTK_PRINT_OPERATION_RESULT_IN_PROGRESS as the status, and
35676 emit the #GtkPrintOperation::done signal when the operation is actually 
35677 done.
35678 The Windows port does not support asynchronous operation at all (this 
35679 is unlikely to change). On other platforms, all actions except for 
35680 %GTK_PRINT_OPERATION_ACTION_EXPORT support asynchronous operation.</doc>
35681         <type name="gboolean"/>
35682       </property>
35683       <property name="current-page"
35684                 version="2.10"
35685                 writable="1"
35686                 transfer-ownership="none">
35687         <doc xml:whitespace="preserve">The current page in the document.
35688 If this is set before gtk_print_operation_run(), 
35689 the user will be able to select to print only the current page.
35690 Note that this only makes sense for pre-paginated documents.</doc>
35691         <type name="gint"/>
35692       </property>
35693       <property name="custom-tab-label"
35694                 version="2.10"
35695                 writable="1"
35696                 transfer-ownership="none">
35697         <doc xml:whitespace="preserve">Used as the label of the tab containing custom widgets.
35698 Note that this property may be ignored on some platforms.
35699 If this is %NULL, GTK+ uses a default label.</doc>
35700         <type name="utf8"/>
35701       </property>
35702       <property name="default-page-setup"
35703                 version="2.10"
35704                 writable="1"
35705                 transfer-ownership="none">
35706         <doc xml:whitespace="preserve">The #GtkPageSetup used by default.
35707 This page setup will be used by gtk_print_operation_run(),
35708 but it can be overridden on a per-page basis by connecting
35709 to the #GtkPrintOperation::request-page-setup signal.</doc>
35710         <type name="PageSetup"/>
35711       </property>
35712       <property name="embed-page-setup"
35713                 version="2.18"
35714                 writable="1"
35715                 transfer-ownership="none">
35716         <doc xml:whitespace="preserve">If %TRUE, page size combo box and orientation combo box are embedded into page setup page.</doc>
35717         <type name="gboolean"/>
35718       </property>
35719       <property name="export-filename"
35720                 version="2.10"
35721                 writable="1"
35722                 transfer-ownership="none">
35723         <doc xml:whitespace="preserve">The name of a file to generate instead of showing the print dialog. 
35724 Currently, PDF is the only supported format.
35725 The intended use of this property is for implementing 
35726 "Export to PDF" actions.
35727 "Print to PDF" support is independent of this and is done
35728 by letting the user pick the "Print to PDF" item from the 
35729 list of printers in the print dialog.</doc>
35730         <type name="utf8"/>
35731       </property>
35732       <property name="has-selection"
35733                 version="2.18"
35734                 writable="1"
35735                 transfer-ownership="none">
35736         <doc xml:whitespace="preserve">Determines whether there is a selection in your application.
35737 This can allow your application to print the selection.
35738 This is typically used to make a "Selection" button sensitive.</doc>
35739         <type name="gboolean"/>
35740       </property>
35741       <property name="job-name"
35742                 version="2.10"
35743                 writable="1"
35744                 transfer-ownership="none">
35745         <doc xml:whitespace="preserve">A string used to identify the job (e.g. in monitoring 
35746 applications like eggcups). 
35747 If you don't set a job name, GTK+ picks a default one 
35748 by numbering successive print jobs.</doc>
35749         <type name="utf8"/>
35750       </property>
35751       <property name="n-pages"
35752                 version="2.10"
35753                 writable="1"
35754                 transfer-ownership="none">
35755         <doc xml:whitespace="preserve">The number of pages in the document. 
35756 This &lt;emphasis&gt;must&lt;/emphasis&gt; be set to a positive number
35757 before the rendering starts. It may be set in a 
35758 #GtkPrintOperation::begin-print signal hander.
35759 Note that the page numbers passed to the 
35760 #GtkPrintOperation::request-page-setup and 
35761 #GtkPrintOperation::draw-page signals are 0-based, i.e. if 
35762 the user chooses to print all pages, the last ::draw-page signal 
35763 will be for page @n_pages - 1.</doc>
35764         <type name="gint"/>
35765       </property>
35766       <property name="n-pages-to-print"
35767                 version="2.18"
35768                 transfer-ownership="none">
35769         <doc xml:whitespace="preserve">The number of pages that will be printed.
35770 Note that this value is set during print preparation phase
35771 (%GTK_PRINT_STATUS_PREPARING), so this value should never be
35772 get before the data generation phase (%GTK_PRINT_STATUS_GENERATING_DATA).
35773 You can connect to the #GtkPrintOperation::status-changed signal
35774 and call gtk_print_operation_get_n_pages_to_print() when
35775 print status is %GTK_PRINT_STATUS_GENERATING_DATA.
35776 This is typically used to track the progress of print operation.</doc>
35777         <type name="gint"/>
35778       </property>
35779       <property name="print-settings"
35780                 version="2.10"
35781                 writable="1"
35782                 transfer-ownership="none">
35783         <doc xml:whitespace="preserve">The #GtkPrintSettings used for initializing the dialog.
35784 Setting this property is typically used to re-establish 
35785 print settings from a previous print operation, see 
35786 gtk_print_operation_run().</doc>
35787         <type name="PrintSettings"/>
35788       </property>
35789       <property name="show-progress"
35790                 version="2.10"
35791                 writable="1"
35792                 transfer-ownership="none">
35793         <doc xml:whitespace="preserve">Determines whether to show a progress dialog during the 
35794 print operation.</doc>
35795         <type name="gboolean"/>
35796       </property>
35797       <property name="status" version="2.10" transfer-ownership="none">
35798         <doc xml:whitespace="preserve">The status of the print operation.</doc>
35799         <type name="PrintStatus"/>
35800       </property>
35801       <property name="status-string" version="2.10" transfer-ownership="none">
35802         <doc xml:whitespace="preserve">A string representation of the status of the print operation. 
35803 The string is translated and suitable for displaying the print 
35804 status e.g. in a #GtkStatusbar.
35805 See the #GtkPrintOperation:status property for a status value that 
35806 is suitable for programmatic use.</doc>
35807         <type name="utf8"/>
35808       </property>
35809       <property name="support-selection"
35810                 version="2.18"
35811                 writable="1"
35812                 transfer-ownership="none">
35813         <doc xml:whitespace="preserve">If %TRUE, the print operation will support print of selection.
35814 This allows the print dialog to show a "Selection" button.</doc>
35815         <type name="gboolean"/>
35816       </property>
35817       <property name="track-print-status"
35818                 version="2.10"
35819                 writable="1"
35820                 transfer-ownership="none">
35821         <doc xml:whitespace="preserve">If %TRUE, the print operation will try to continue report on 
35822 the status of the print job in the printer queues and printer. 
35823 This can allow your application to show things like "out of paper" 
35824 issues, and when the print job actually reaches the printer. 
35825 However, this is often implemented using polling, and should 
35826 not be enabled unless needed.</doc>
35827         <type name="gboolean"/>
35828       </property>
35829       <property name="unit"
35830                 version="2.10"
35831                 writable="1"
35832                 transfer-ownership="none">
35833         <doc xml:whitespace="preserve">The transformation for the cairo context obtained from
35834 #GtkPrintContext is set up in such a way that distances 
35835 are measured in units of @unit.</doc>
35836         <type name="Unit"/>
35837       </property>
35838       <property name="use-full-page"
35839                 version="2.10"
35840                 writable="1"
35841                 transfer-ownership="none">
35842         <doc xml:whitespace="preserve">If %TRUE, the transformation for the cairo context obtained 
35843 from #GtkPrintContext puts the origin at the top left corner 
35844 of the page (which may not be the top left corner of the sheet, 
35845 depending on page orientation and the number of pages per sheet). 
35846 Otherwise, the origin is at the top left corner of the imageable 
35847 area (i.e. inside the margins).</doc>
35848         <type name="gboolean"/>
35849       </property>
35850       <field name="parent_instance">
35851         <type name="GObject.Object" c:type="GObject"/>
35852       </field>
35853       <field name="priv" readable="0" private="1">
35854         <type name="PrintOperationPrivate" c:type="GtkPrintOperationPrivate*"/>
35855       </field>
35856       <glib:signal name="begin-print" version="2.10">
35857         <doc xml:whitespace="preserve">Emitted after the user has finished changing print settings
35858 in the dialog, before the actual rendering starts. 
35859 A typical use for ::begin-print is to use the parameters from the
35860 #GtkPrintContext and paginate the document accordingly, and then
35861 set the number of pages with gtk_print_operation_set_n_pages().</doc>
35862         <return-value transfer-ownership="none">
35863           <type name="none"/>
35864         </return-value>
35865         <parameters>
35866           <parameter name="object" transfer-ownership="none">
35867             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
35868             <type name="PrintContext"/>
35869           </parameter>
35870         </parameters>
35871       </glib:signal>
35872       <glib:signal name="create-custom-widget"
35873                    version="2.10"
35874                    introspectable="0">
35875         <doc xml:whitespace="preserve">Emitted when displaying the print dialog. If you return a
35876 widget in a handler for this signal it will be added to a custom
35877 tab in the print dialog. You typically return a container widget
35878 with multiple widgets in it.
35879 The print dialog owns the returned widget, and its lifetime is not 
35880 controlled by the application. However, the widget is guaranteed 
35881 to stay around until the #GtkPrintOperation::custom-widget-apply 
35882 signal is emitted on the operation. Then you can read out any 
35883 information you need from the widgets.
35884 or %NULL</doc>
35885         <return-value>
35886           <doc xml:whitespace="preserve">A custom widget that gets embedded in the print dialog,</doc>
35887           <type name="GObject.Object"/>
35888         </return-value>
35889       </glib:signal>
35890       <glib:signal name="custom-widget-apply" version="2.10">
35891         <doc xml:whitespace="preserve">Emitted right before #GtkPrintOperation::begin-print if you added
35892 a custom widget in the #GtkPrintOperation::create-custom-widget handler. 
35893 When you get this signal you should read the information from the 
35894 custom widgets, as the widgets are not guaraneed to be around at a 
35895 later time.</doc>
35896         <return-value transfer-ownership="none">
35897           <type name="none"/>
35898         </return-value>
35899         <parameters>
35900           <parameter name="object" transfer-ownership="none">
35901             <doc xml:whitespace="preserve">the custom widget added in create-custom-widget</doc>
35902             <type name="Widget"/>
35903           </parameter>
35904         </parameters>
35905       </glib:signal>
35906       <glib:signal name="done" version="2.10">
35907         <doc xml:whitespace="preserve">Emitted when the print operation run has finished doing
35908 everything required for printing. 
35909 If @result is %GTK_PRINT_OPERATION_RESULT_ERROR then you can call
35910 gtk_print_operation_get_error() for more information.
35911 If you enabled print status tracking then 
35912 gtk_print_operation_is_finished() may still return %FALSE 
35913 after #GtkPrintOperation::done was emitted.</doc>
35914         <return-value transfer-ownership="none">
35915           <type name="none"/>
35916         </return-value>
35917         <parameters>
35918           <parameter name="object" transfer-ownership="none">
35919             <doc xml:whitespace="preserve">the result of the print operation</doc>
35920             <type name="PrintOperationResult"/>
35921           </parameter>
35922         </parameters>
35923       </glib:signal>
35924       <glib:signal name="draw-page" version="2.10">
35925         <doc xml:whitespace="preserve">Emitted for every page that is printed. The signal handler
35926 must render the @page_nr's page onto the cairo context obtained
35927 from @context using gtk_print_context_get_cairo_context().
35928 |[
35929 static void
35930 draw_page (GtkPrintOperation *operation,
35931 GtkPrintContext   *context,
35932 gint               page_nr,
35933 gpointer           user_data)
35934 {
35935 cairo_t *cr;
35936 PangoLayout *layout;
35937 gdouble width, text_height;
35938 gint layout_height;
35939 PangoFontDescription *desc;
35940 cr = gtk_print_context_get_cairo_context (context);
35941 width = gtk_print_context_get_width (context);
35942 cairo_rectangle (cr, 0, 0, width, HEADER_HEIGHT);
35943 cairo_set_source_rgb (cr, 0.8, 0.8, 0.8);
35944 cairo_fill (cr);
35945 layout = gtk_print_context_create_pango_layout (context);
35946 desc = pango_font_description_from_string ("sans 14");
35947 pango_layout_set_font_description (layout, desc);
35948 pango_font_description_free (desc);
35949 pango_layout_set_text (layout, "some text", -1);
35950 pango_layout_set_width (layout, width * PANGO_SCALE);
35951 pango_layout_set_alignment (layout, PANGO_ALIGN_CENTER);
35952 pango_layout_get_size (layout, NULL, &amp;layout_height);
35953 text_height = (gdouble)layout_height / PANGO_SCALE;
35954 cairo_move_to (cr, width / 2,  (HEADER_HEIGHT - text_height) / 2);
35955 pango_cairo_show_layout (cr, layout);
35956 g_object_unref (layout);
35957 }
35958 ]|
35959 Use gtk_print_operation_set_use_full_page() and 
35960 gtk_print_operation_set_unit() before starting the print operation
35961 to set up the transformation of the cairo context according to your
35962 needs.</doc>
35963         <return-value transfer-ownership="none">
35964           <type name="none"/>
35965         </return-value>
35966         <parameters>
35967           <parameter name="object" transfer-ownership="none">
35968             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
35969             <type name="PrintContext"/>
35970           </parameter>
35971           <parameter name="p0" transfer-ownership="none">
35972             <doc xml:whitespace="preserve">the number of the currently printed page (0-based)</doc>
35973             <type name="gint"/>
35974           </parameter>
35975         </parameters>
35976       </glib:signal>
35977       <glib:signal name="end-print" version="2.10">
35978         <doc xml:whitespace="preserve">Emitted after all pages have been rendered. 
35979 A handler for this signal can clean up any resources that have
35980 been allocated in the #GtkPrintOperation::begin-print handler.</doc>
35981         <return-value transfer-ownership="none">
35982           <type name="none"/>
35983         </return-value>
35984         <parameters>
35985           <parameter name="object" transfer-ownership="none">
35986             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
35987             <type name="PrintContext"/>
35988           </parameter>
35989         </parameters>
35990       </glib:signal>
35991       <glib:signal name="paginate" version="2.10">
35992         <doc xml:whitespace="preserve">Emitted after the #GtkPrintOperation::begin-print signal, but before 
35993 the actual rendering starts. It keeps getting emitted until a connected 
35994 signal handler returns %TRUE.
35995 The ::paginate signal is intended to be used for paginating a document
35996 in small chunks, to avoid blocking the user interface for a long
35997 time. The signal handler should update the number of pages using
35998 gtk_print_operation_set_n_pages(), and return %TRUE if the document
35999 has been completely paginated.
36000 If you don't need to do pagination in chunks, you can simply do
36001 it all in the ::begin-print handler, and set the number of pages
36002 from there.</doc>
36003         <return-value transfer-ownership="none">
36004           <doc xml:whitespace="preserve">%TRUE if pagination is complete</doc>
36005           <type name="gboolean"/>
36006         </return-value>
36007         <parameters>
36008           <parameter name="object" transfer-ownership="none">
36009             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
36010             <type name="PrintContext"/>
36011           </parameter>
36012         </parameters>
36013       </glib:signal>
36014       <glib:signal name="preview" version="2.10">
36015         <doc xml:whitespace="preserve">Gets emitted when a preview is requested from the native dialog.
36016 The default handler for this signal uses an external viewer 
36017 application to preview.
36018 To implement a custom print preview, an application must return
36019 %TRUE from its handler for this signal. In order to use the
36020 provided @context for the preview implementation, it must be
36021 given a suitable cairo context with gtk_print_context_set_cairo_context().
36022 The custom preview implementation can use 
36023 gtk_print_operation_preview_is_selected() and 
36024 gtk_print_operation_preview_render_page() to find pages which
36025 are selected for print and render them. The preview must be
36026 finished by calling gtk_print_operation_preview_end_preview()
36027 (typically in response to the user clicking a close button).</doc>
36028         <return-value transfer-ownership="none">
36029           <doc xml:whitespace="preserve">%TRUE if the listener wants to take over control of the preview</doc>
36030           <type name="gboolean"/>
36031         </return-value>
36032         <parameters>
36033           <parameter name="object" transfer-ownership="none">
36034             <doc xml:whitespace="preserve">the #GtkPrintPreviewOperation for the current operation</doc>
36035             <type name="PrintOperationPreview"/>
36036           </parameter>
36037           <parameter name="p0" transfer-ownership="none">
36038             <doc xml:whitespace="preserve">the #GtkPrintContext that will be used</doc>
36039             <type name="PrintContext"/>
36040           </parameter>
36041           <parameter name="p1" transfer-ownership="none" allow-none="1">
36042             <doc xml:whitespace="preserve">the #GtkWindow to use as window parent, or %NULL</doc>
36043             <type name="Window"/>
36044           </parameter>
36045         </parameters>
36046       </glib:signal>
36047       <glib:signal name="request-page-setup" version="2.10">
36048         <doc xml:whitespace="preserve">Emitted once for every page that is printed, to give
36049 the application a chance to modify the page setup. Any changes 
36050 done to @setup will be in force only for printing this page.</doc>
36051         <return-value transfer-ownership="none">
36052           <type name="none"/>
36053         </return-value>
36054         <parameters>
36055           <parameter name="object" transfer-ownership="none">
36056             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
36057             <type name="PrintContext"/>
36058           </parameter>
36059           <parameter name="p0" transfer-ownership="none">
36060             <doc xml:whitespace="preserve">the number of the currently printed page (0-based)</doc>
36061             <type name="gint"/>
36062           </parameter>
36063           <parameter name="p1" transfer-ownership="none">
36064             <doc xml:whitespace="preserve">the #GtkPageSetup</doc>
36065             <type name="PageSetup"/>
36066           </parameter>
36067         </parameters>
36068       </glib:signal>
36069       <glib:signal name="status-changed" version="2.10">
36070         <doc xml:whitespace="preserve">Emitted at between the various phases of the print operation.
36071 See #GtkPrintStatus for the phases that are being discriminated.
36072 Use gtk_print_operation_get_status() to find out the current
36073 status.</doc>
36074         <return-value transfer-ownership="none">
36075           <type name="none"/>
36076         </return-value>
36077       </glib:signal>
36078       <glib:signal name="update-custom-widget" version="2.18">
36079         <doc xml:whitespace="preserve">Emitted after change of selected printer. The actual page setup and
36080 print settings are passed to the custom widget, which can actualize
36081 itself according to this change.</doc>
36082         <return-value transfer-ownership="none">
36083           <type name="none"/>
36084         </return-value>
36085         <parameters>
36086           <parameter name="object" transfer-ownership="none">
36087             <doc xml:whitespace="preserve">the custom widget added in create-custom-widget</doc>
36088             <type name="Widget"/>
36089           </parameter>
36090           <parameter name="p0" transfer-ownership="none">
36091             <doc xml:whitespace="preserve">actual page setup</doc>
36092             <type name="PageSetup"/>
36093           </parameter>
36094           <parameter name="p1" transfer-ownership="none">
36095             <doc xml:whitespace="preserve">actual print settings</doc>
36096             <type name="PrintSettings"/>
36097           </parameter>
36098         </parameters>
36099       </glib:signal>
36100     </class>
36101     <enumeration name="PrintOperationAction"
36102                  glib:type-name="GtkPrintOperationAction"
36103                  glib:get-type="gtk_print_operation_action_get_type"
36104                  c:type="GtkPrintOperationAction">
36105       <member name="print_dialog"
36106               value="0"
36107               c:identifier="GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG"
36108               glib:nick="print-dialog"/>
36109       <member name="print"
36110               value="1"
36111               c:identifier="GTK_PRINT_OPERATION_ACTION_PRINT"
36112               glib:nick="print"/>
36113       <member name="preview"
36114               value="2"
36115               c:identifier="GTK_PRINT_OPERATION_ACTION_PREVIEW"
36116               glib:nick="preview"/>
36117       <member name="export"
36118               value="3"
36119               c:identifier="GTK_PRINT_OPERATION_ACTION_EXPORT"
36120               glib:nick="export"/>
36121     </enumeration>
36122     <record name="PrintOperationClass"
36123             c:type="GtkPrintOperationClass"
36124             glib:is-gtype-struct-for="PrintOperation">
36125       <field name="parent_class">
36126         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
36127       </field>
36128       <field name="done">
36129         <callback name="done">
36130           <return-value transfer-ownership="none">
36131             <type name="none" c:type="void"/>
36132           </return-value>
36133           <parameters>
36134             <parameter name="operation" transfer-ownership="none">
36135               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36136             </parameter>
36137             <parameter name="result" transfer-ownership="none">
36138               <type name="PrintOperationResult"
36139                     c:type="GtkPrintOperationResult"/>
36140             </parameter>
36141           </parameters>
36142         </callback>
36143       </field>
36144       <field name="begin_print">
36145         <callback name="begin_print">
36146           <return-value transfer-ownership="none">
36147             <type name="none" c:type="void"/>
36148           </return-value>
36149           <parameters>
36150             <parameter name="operation" transfer-ownership="none">
36151               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36152             </parameter>
36153             <parameter name="context" transfer-ownership="none">
36154               <type name="PrintContext" c:type="GtkPrintContext*"/>
36155             </parameter>
36156           </parameters>
36157         </callback>
36158       </field>
36159       <field name="paginate">
36160         <callback name="paginate">
36161           <return-value transfer-ownership="none">
36162             <type name="gboolean" c:type="gboolean"/>
36163           </return-value>
36164           <parameters>
36165             <parameter name="operation" transfer-ownership="none">
36166               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36167             </parameter>
36168             <parameter name="context" transfer-ownership="none">
36169               <type name="PrintContext" c:type="GtkPrintContext*"/>
36170             </parameter>
36171           </parameters>
36172         </callback>
36173       </field>
36174       <field name="request_page_setup">
36175         <callback name="request_page_setup">
36176           <return-value transfer-ownership="none">
36177             <type name="none" c:type="void"/>
36178           </return-value>
36179           <parameters>
36180             <parameter name="operation" transfer-ownership="none">
36181               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36182             </parameter>
36183             <parameter name="context" transfer-ownership="none">
36184               <type name="PrintContext" c:type="GtkPrintContext*"/>
36185             </parameter>
36186             <parameter name="page_nr" transfer-ownership="none">
36187               <type name="gint" c:type="gint"/>
36188             </parameter>
36189             <parameter name="setup" transfer-ownership="none">
36190               <type name="PageSetup" c:type="GtkPageSetup*"/>
36191             </parameter>
36192           </parameters>
36193         </callback>
36194       </field>
36195       <field name="draw_page">
36196         <callback name="draw_page">
36197           <return-value transfer-ownership="none">
36198             <type name="none" c:type="void"/>
36199           </return-value>
36200           <parameters>
36201             <parameter name="operation" transfer-ownership="none">
36202               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36203             </parameter>
36204             <parameter name="context" transfer-ownership="none">
36205               <type name="PrintContext" c:type="GtkPrintContext*"/>
36206             </parameter>
36207             <parameter name="page_nr" transfer-ownership="none">
36208               <type name="gint" c:type="gint"/>
36209             </parameter>
36210           </parameters>
36211         </callback>
36212       </field>
36213       <field name="end_print">
36214         <callback name="end_print">
36215           <return-value transfer-ownership="none">
36216             <type name="none" c:type="void"/>
36217           </return-value>
36218           <parameters>
36219             <parameter name="operation" transfer-ownership="none">
36220               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36221             </parameter>
36222             <parameter name="context" transfer-ownership="none">
36223               <type name="PrintContext" c:type="GtkPrintContext*"/>
36224             </parameter>
36225           </parameters>
36226         </callback>
36227       </field>
36228       <field name="status_changed">
36229         <callback name="status_changed">
36230           <return-value transfer-ownership="none">
36231             <type name="none" c:type="void"/>
36232           </return-value>
36233           <parameters>
36234             <parameter name="operation" transfer-ownership="none">
36235               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36236             </parameter>
36237           </parameters>
36238         </callback>
36239       </field>
36240       <field name="create_custom_widget" introspectable="0">
36241         <callback name="create_custom_widget" introspectable="0">
36242           <return-value>
36243             <type name="Widget" c:type="GtkWidget*"/>
36244           </return-value>
36245           <parameters>
36246             <parameter name="operation" transfer-ownership="none">
36247               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36248             </parameter>
36249           </parameters>
36250         </callback>
36251       </field>
36252       <field name="custom_widget_apply">
36253         <callback name="custom_widget_apply">
36254           <return-value transfer-ownership="none">
36255             <type name="none" c:type="void"/>
36256           </return-value>
36257           <parameters>
36258             <parameter name="operation" transfer-ownership="none">
36259               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36260             </parameter>
36261             <parameter name="widget" transfer-ownership="none">
36262               <type name="Widget" c:type="GtkWidget*"/>
36263             </parameter>
36264           </parameters>
36265         </callback>
36266       </field>
36267       <field name="preview">
36268         <callback name="preview">
36269           <return-value transfer-ownership="none">
36270             <type name="gboolean" c:type="gboolean"/>
36271           </return-value>
36272           <parameters>
36273             <parameter name="operation" transfer-ownership="none">
36274               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36275             </parameter>
36276             <parameter name="preview" transfer-ownership="none">
36277               <type name="PrintOperationPreview"
36278                     c:type="GtkPrintOperationPreview*"/>
36279             </parameter>
36280             <parameter name="context" transfer-ownership="none">
36281               <type name="PrintContext" c:type="GtkPrintContext*"/>
36282             </parameter>
36283             <parameter name="parent" transfer-ownership="none">
36284               <type name="Window" c:type="GtkWindow*"/>
36285             </parameter>
36286           </parameters>
36287         </callback>
36288       </field>
36289       <field name="update_custom_widget">
36290         <callback name="update_custom_widget">
36291           <return-value transfer-ownership="none">
36292             <type name="none" c:type="void"/>
36293           </return-value>
36294           <parameters>
36295             <parameter name="operation" transfer-ownership="none">
36296               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
36297             </parameter>
36298             <parameter name="widget" transfer-ownership="none">
36299               <type name="Widget" c:type="GtkWidget*"/>
36300             </parameter>
36301             <parameter name="setup" transfer-ownership="none">
36302               <type name="PageSetup" c:type="GtkPageSetup*"/>
36303             </parameter>
36304             <parameter name="settings" transfer-ownership="none">
36305               <type name="PrintSettings" c:type="GtkPrintSettings*"/>
36306             </parameter>
36307           </parameters>
36308         </callback>
36309       </field>
36310       <field name="_gtk_reserved1" introspectable="0">
36311         <callback name="_gtk_reserved1">
36312           <return-value transfer-ownership="none">
36313             <type name="none" c:type="void"/>
36314           </return-value>
36315         </callback>
36316       </field>
36317       <field name="_gtk_reserved2" introspectable="0">
36318         <callback name="_gtk_reserved2">
36319           <return-value transfer-ownership="none">
36320             <type name="none" c:type="void"/>
36321           </return-value>
36322         </callback>
36323       </field>
36324       <field name="_gtk_reserved3" introspectable="0">
36325         <callback name="_gtk_reserved3">
36326           <return-value transfer-ownership="none">
36327             <type name="none" c:type="void"/>
36328           </return-value>
36329         </callback>
36330       </field>
36331       <field name="_gtk_reserved4" introspectable="0">
36332         <callback name="_gtk_reserved4">
36333           <return-value transfer-ownership="none">
36334             <type name="none" c:type="void"/>
36335           </return-value>
36336         </callback>
36337       </field>
36338       <field name="_gtk_reserved5" introspectable="0">
36339         <callback name="_gtk_reserved5">
36340           <return-value transfer-ownership="none">
36341             <type name="none" c:type="void"/>
36342           </return-value>
36343         </callback>
36344       </field>
36345       <field name="_gtk_reserved6" introspectable="0">
36346         <callback name="_gtk_reserved6">
36347           <return-value transfer-ownership="none">
36348             <type name="none" c:type="void"/>
36349           </return-value>
36350         </callback>
36351       </field>
36352     </record>
36353     <interface name="PrintOperationPreview"
36354                c:symbol-prefix="print_operation_preview"
36355                c:type="GtkPrintOperationPreview"
36356                glib:type-name="GtkPrintOperationPreview"
36357                glib:get-type="gtk_print_operation_preview_get_type"
36358                glib:type-struct="PrintOperationPreviewIface">
36359       <virtual-method name="end_preview" invoker="end_preview" version="2.10">
36360         <doc xml:whitespace="preserve">Ends a preview. 
36361 This function must be called to finish a custom print preview.</doc>
36362         <return-value transfer-ownership="none">
36363           <type name="none" c:type="void"/>
36364         </return-value>
36365       </virtual-method>
36366       <virtual-method name="is_selected" invoker="is_selected" version="2.10">
36367         <doc xml:whitespace="preserve">Returns whether the given page is included in the set of pages that
36368 have been selected for printing.</doc>
36369         <return-value transfer-ownership="none">
36370           <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
36371           <type name="gboolean" c:type="gboolean"/>
36372         </return-value>
36373         <parameters>
36374           <parameter name="page_nr" transfer-ownership="none">
36375             <doc xml:whitespace="preserve">a page number</doc>
36376             <type name="gint" c:type="gint"/>
36377           </parameter>
36378         </parameters>
36379       </virtual-method>
36380       <virtual-method name="render_page" invoker="render_page" version="2.10">
36381         <doc xml:whitespace="preserve">Renders a page to the preview, using the print context that
36382 was passed to the #GtkPrintOperation::preview handler together
36383 with @preview.
36384 A custom iprint preview should use this function in its ::expose
36385 handler to render the currently selected page.
36386 Note that this function requires a suitable cairo context to 
36387 be associated with the print context.</doc>
36388         <return-value transfer-ownership="none">
36389           <type name="none" c:type="void"/>
36390         </return-value>
36391         <parameters>
36392           <parameter name="page_nr" transfer-ownership="none">
36393             <doc xml:whitespace="preserve">the page to render</doc>
36394             <type name="gint" c:type="gint"/>
36395           </parameter>
36396         </parameters>
36397       </virtual-method>
36398       <method name="end_preview"
36399               c:identifier="gtk_print_operation_preview_end_preview"
36400               version="2.10">
36401         <doc xml:whitespace="preserve">Ends a preview. 
36402 This function must be called to finish a custom print preview.</doc>
36403         <return-value transfer-ownership="none">
36404           <type name="none" c:type="void"/>
36405         </return-value>
36406       </method>
36407       <method name="is_selected"
36408               c:identifier="gtk_print_operation_preview_is_selected"
36409               version="2.10">
36410         <doc xml:whitespace="preserve">Returns whether the given page is included in the set of pages that
36411 have been selected for printing.</doc>
36412         <return-value transfer-ownership="none">
36413           <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
36414           <type name="gboolean" c:type="gboolean"/>
36415         </return-value>
36416         <parameters>
36417           <parameter name="page_nr" transfer-ownership="none">
36418             <doc xml:whitespace="preserve">a page number</doc>
36419             <type name="gint" c:type="gint"/>
36420           </parameter>
36421         </parameters>
36422       </method>
36423       <method name="render_page"
36424               c:identifier="gtk_print_operation_preview_render_page"
36425               version="2.10">
36426         <doc xml:whitespace="preserve">Renders a page to the preview, using the print context that
36427 was passed to the #GtkPrintOperation::preview handler together
36428 with @preview.
36429 A custom iprint preview should use this function in its ::expose
36430 handler to render the currently selected page.
36431 Note that this function requires a suitable cairo context to 
36432 be associated with the print context.</doc>
36433         <return-value transfer-ownership="none">
36434           <type name="none" c:type="void"/>
36435         </return-value>
36436         <parameters>
36437           <parameter name="page_nr" transfer-ownership="none">
36438             <doc xml:whitespace="preserve">the page to render</doc>
36439             <type name="gint" c:type="gint"/>
36440           </parameter>
36441         </parameters>
36442       </method>
36443       <glib:signal name="got-page-size">
36444         <doc xml:whitespace="preserve">The ::got-page-size signal is emitted once for each page
36445 that gets rendered to the preview. 
36446 A handler for this signal should update the @context
36447 according to @page_setup and set up a suitable cairo
36448 context, using gtk_print_context_set_cairo_context().</doc>
36449         <return-value transfer-ownership="none">
36450           <type name="none"/>
36451         </return-value>
36452         <parameters>
36453           <parameter name="object" transfer-ownership="none">
36454             <doc xml:whitespace="preserve">the current #GtkPrintContext</doc>
36455             <type name="PrintContext"/>
36456           </parameter>
36457           <parameter name="p0" transfer-ownership="none">
36458             <doc xml:whitespace="preserve">the #GtkPageSetup for the current page</doc>
36459             <type name="PageSetup"/>
36460           </parameter>
36461         </parameters>
36462       </glib:signal>
36463       <glib:signal name="ready">
36464         <doc xml:whitespace="preserve">The ::ready signal gets emitted once per preview operation,
36465 before the first page is rendered.
36466 A handler for this signal can be used for setup tasks.</doc>
36467         <return-value transfer-ownership="none">
36468           <type name="none"/>
36469         </return-value>
36470         <parameters>
36471           <parameter name="object" transfer-ownership="none">
36472             <doc xml:whitespace="preserve">the current #GtkPrintContext</doc>
36473             <type name="PrintContext"/>
36474           </parameter>
36475         </parameters>
36476       </glib:signal>
36477     </interface>
36478     <record name="PrintOperationPreviewIface"
36479             c:type="GtkPrintOperationPreviewIface"
36480             glib:is-gtype-struct-for="PrintOperationPreview">
36481       <field name="g_iface">
36482         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
36483       </field>
36484       <field name="ready">
36485         <callback name="ready">
36486           <return-value transfer-ownership="none">
36487             <type name="none" c:type="void"/>
36488           </return-value>
36489           <parameters>
36490             <parameter name="preview" transfer-ownership="none">
36491               <type name="PrintOperationPreview"
36492                     c:type="GtkPrintOperationPreview*"/>
36493             </parameter>
36494             <parameter name="context" transfer-ownership="none">
36495               <type name="PrintContext" c:type="GtkPrintContext*"/>
36496             </parameter>
36497           </parameters>
36498         </callback>
36499       </field>
36500       <field name="got_page_size">
36501         <callback name="got_page_size">
36502           <return-value transfer-ownership="none">
36503             <type name="none" c:type="void"/>
36504           </return-value>
36505           <parameters>
36506             <parameter name="preview" transfer-ownership="none">
36507               <type name="PrintOperationPreview"
36508                     c:type="GtkPrintOperationPreview*"/>
36509             </parameter>
36510             <parameter name="context" transfer-ownership="none">
36511               <type name="PrintContext" c:type="GtkPrintContext*"/>
36512             </parameter>
36513             <parameter name="page_setup" transfer-ownership="none">
36514               <type name="PageSetup" c:type="GtkPageSetup*"/>
36515             </parameter>
36516           </parameters>
36517         </callback>
36518       </field>
36519       <field name="render_page">
36520         <callback name="render_page">
36521           <return-value transfer-ownership="none">
36522             <type name="none" c:type="void"/>
36523           </return-value>
36524           <parameters>
36525             <parameter name="preview" transfer-ownership="none">
36526               <type name="PrintOperationPreview"
36527                     c:type="GtkPrintOperationPreview*"/>
36528             </parameter>
36529             <parameter name="page_nr" transfer-ownership="none">
36530               <doc xml:whitespace="preserve">the page to render</doc>
36531               <type name="gint" c:type="gint"/>
36532             </parameter>
36533           </parameters>
36534         </callback>
36535       </field>
36536       <field name="is_selected">
36537         <callback name="is_selected">
36538           <return-value transfer-ownership="none">
36539             <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
36540             <type name="gboolean" c:type="gboolean"/>
36541           </return-value>
36542           <parameters>
36543             <parameter name="preview" transfer-ownership="none">
36544               <type name="PrintOperationPreview"
36545                     c:type="GtkPrintOperationPreview*"/>
36546             </parameter>
36547             <parameter name="page_nr" transfer-ownership="none">
36548               <doc xml:whitespace="preserve">a page number</doc>
36549               <type name="gint" c:type="gint"/>
36550             </parameter>
36551           </parameters>
36552         </callback>
36553       </field>
36554       <field name="end_preview">
36555         <callback name="end_preview">
36556           <return-value transfer-ownership="none">
36557             <type name="none" c:type="void"/>
36558           </return-value>
36559           <parameters>
36560             <parameter name="preview" transfer-ownership="none">
36561               <type name="PrintOperationPreview"
36562                     c:type="GtkPrintOperationPreview*"/>
36563             </parameter>
36564           </parameters>
36565         </callback>
36566       </field>
36567       <field name="_gtk_reserved1" introspectable="0">
36568         <callback name="_gtk_reserved1">
36569           <return-value transfer-ownership="none">
36570             <type name="none" c:type="void"/>
36571           </return-value>
36572         </callback>
36573       </field>
36574       <field name="_gtk_reserved2" introspectable="0">
36575         <callback name="_gtk_reserved2">
36576           <return-value transfer-ownership="none">
36577             <type name="none" c:type="void"/>
36578           </return-value>
36579         </callback>
36580       </field>
36581       <field name="_gtk_reserved3" introspectable="0">
36582         <callback name="_gtk_reserved3">
36583           <return-value transfer-ownership="none">
36584             <type name="none" c:type="void"/>
36585           </return-value>
36586         </callback>
36587       </field>
36588       <field name="_gtk_reserved4" introspectable="0">
36589         <callback name="_gtk_reserved4">
36590           <return-value transfer-ownership="none">
36591             <type name="none" c:type="void"/>
36592           </return-value>
36593         </callback>
36594       </field>
36595       <field name="_gtk_reserved5" introspectable="0">
36596         <callback name="_gtk_reserved5">
36597           <return-value transfer-ownership="none">
36598             <type name="none" c:type="void"/>
36599           </return-value>
36600         </callback>
36601       </field>
36602       <field name="_gtk_reserved6" introspectable="0">
36603         <callback name="_gtk_reserved6">
36604           <return-value transfer-ownership="none">
36605             <type name="none" c:type="void"/>
36606           </return-value>
36607         </callback>
36608       </field>
36609       <field name="_gtk_reserved7" introspectable="0">
36610         <callback name="_gtk_reserved7">
36611           <return-value transfer-ownership="none">
36612             <type name="none" c:type="void"/>
36613           </return-value>
36614         </callback>
36615       </field>
36616     </record>
36617     <record name="PrintOperationPrivate"
36618             c:type="GtkPrintOperationPrivate"
36619             disguised="1">
36620     </record>
36621     <enumeration name="PrintOperationResult"
36622                  glib:type-name="GtkPrintOperationResult"
36623                  glib:get-type="gtk_print_operation_result_get_type"
36624                  c:type="GtkPrintOperationResult">
36625       <member name="error"
36626               value="0"
36627               c:identifier="GTK_PRINT_OPERATION_RESULT_ERROR"
36628               glib:nick="error"/>
36629       <member name="apply"
36630               value="1"
36631               c:identifier="GTK_PRINT_OPERATION_RESULT_APPLY"
36632               glib:nick="apply"/>
36633       <member name="cancel"
36634               value="2"
36635               c:identifier="GTK_PRINT_OPERATION_RESULT_CANCEL"
36636               glib:nick="cancel"/>
36637       <member name="in_progress"
36638               value="3"
36639               c:identifier="GTK_PRINT_OPERATION_RESULT_IN_PROGRESS"
36640               glib:nick="in-progress"/>
36641     </enumeration>
36642     <enumeration name="PrintPages"
36643                  glib:type-name="GtkPrintPages"
36644                  glib:get-type="gtk_print_pages_get_type"
36645                  c:type="GtkPrintPages">
36646       <member name="all"
36647               value="0"
36648               c:identifier="GTK_PRINT_PAGES_ALL"
36649               glib:nick="all"/>
36650       <member name="current"
36651               value="1"
36652               c:identifier="GTK_PRINT_PAGES_CURRENT"
36653               glib:nick="current"/>
36654       <member name="ranges"
36655               value="2"
36656               c:identifier="GTK_PRINT_PAGES_RANGES"
36657               glib:nick="ranges"/>
36658       <member name="selection"
36659               value="3"
36660               c:identifier="GTK_PRINT_PAGES_SELECTION"
36661               glib:nick="selection"/>
36662     </enumeration>
36663     <enumeration name="PrintQuality"
36664                  glib:type-name="GtkPrintQuality"
36665                  glib:get-type="gtk_print_quality_get_type"
36666                  c:type="GtkPrintQuality">
36667       <member name="low"
36668               value="0"
36669               c:identifier="GTK_PRINT_QUALITY_LOW"
36670               glib:nick="low"/>
36671       <member name="normal"
36672               value="1"
36673               c:identifier="GTK_PRINT_QUALITY_NORMAL"
36674               glib:nick="normal"/>
36675       <member name="high"
36676               value="2"
36677               c:identifier="GTK_PRINT_QUALITY_HIGH"
36678               glib:nick="high"/>
36679       <member name="draft"
36680               value="3"
36681               c:identifier="GTK_PRINT_QUALITY_DRAFT"
36682               glib:nick="draft"/>
36683     </enumeration>
36684     <class name="PrintSettings"
36685            c:symbol-prefix="print_settings"
36686            c:type="GtkPrintSettings"
36687            parent="GObject.Object"
36688            glib:type-name="GtkPrintSettings"
36689            glib:get-type="gtk_print_settings_get_type">
36690       <constructor name="new"
36691                    c:identifier="gtk_print_settings_new"
36692                    version="2.10">
36693         <doc xml:whitespace="preserve">Creates a new #GtkPrintSettings object.</doc>
36694         <return-value transfer-ownership="full">
36695           <doc xml:whitespace="preserve">a new #GtkPrintSettings object</doc>
36696           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
36697         </return-value>
36698       </constructor>
36699       <constructor name="new_from_file"
36700                    c:identifier="gtk_print_settings_new_from_file"
36701                    version="2.12"
36702                    throws="1">
36703         <doc xml:whitespace="preserve">Reads the print settings from @file_name. Returns a new #GtkPrintSettings
36704 object with the restored settings, or %NULL if an error occurred. If the
36705 file could not be loaded then error is set to either a #GFileError or
36706 #GKeyFileError.  See gtk_print_settings_to_file().</doc>
36707         <return-value transfer-ownership="full">
36708           <doc xml:whitespace="preserve">the restored #GtkPrintSettings</doc>
36709           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
36710         </return-value>
36711         <parameters>
36712           <parameter name="file_name" transfer-ownership="none">
36713             <doc xml:whitespace="preserve">the filename to read the settings from</doc>
36714             <type name="utf8" c:type="gchar*"/>
36715           </parameter>
36716         </parameters>
36717       </constructor>
36718       <constructor name="new_from_key_file"
36719                    c:identifier="gtk_print_settings_new_from_key_file"
36720                    version="2.12"
36721                    throws="1">
36722         <doc xml:whitespace="preserve">Reads the print settings from the group @group_name in @key_file.  Returns a
36723 new #GtkPrintSettings object with the restored settings, or %NULL if an
36724 error occurred. If the file could not be loaded then error is set to either
36725 a #GFileError or #GKeyFileError.</doc>
36726         <return-value transfer-ownership="full">
36727           <doc xml:whitespace="preserve">the restored #GtkPrintSettings</doc>
36728           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
36729         </return-value>
36730         <parameters>
36731           <parameter name="key_file" transfer-ownership="none">
36732             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the settings from</doc>
36733             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
36734           </parameter>
36735           <parameter name="group_name"
36736                      transfer-ownership="none"
36737                      allow-none="1">
36738             <doc xml:whitespace="preserve">the name of the group to use, or %NULL to use the default "Print Settings"</doc>
36739             <type name="utf8" c:type="gchar*"/>
36740           </parameter>
36741         </parameters>
36742       </constructor>
36743       <method name="copy"
36744               c:identifier="gtk_print_settings_copy"
36745               version="2.10">
36746         <doc xml:whitespace="preserve">Copies a #GtkPrintSettings object.</doc>
36747         <return-value transfer-ownership="full">
36748           <doc xml:whitespace="preserve">a newly allocated copy of @other</doc>
36749           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
36750         </return-value>
36751       </method>
36752       <method name="foreach"
36753               c:identifier="gtk_print_settings_foreach"
36754               version="2.10">
36755         <doc xml:whitespace="preserve">Calls @func for each key-value pair of @settings.</doc>
36756         <return-value transfer-ownership="none">
36757           <type name="none" c:type="void"/>
36758         </return-value>
36759         <parameters>
36760           <parameter name="func"
36761                      transfer-ownership="none"
36762                      scope="call"
36763                      closure="1">
36764             <doc xml:whitespace="preserve">the function to call</doc>
36765             <type name="PrintSettingsFunc" c:type="GtkPrintSettingsFunc"/>
36766           </parameter>
36767           <parameter name="user_data" transfer-ownership="none">
36768             <doc xml:whitespace="preserve">user data for @func</doc>
36769             <type name="gpointer" c:type="gpointer"/>
36770           </parameter>
36771         </parameters>
36772       </method>
36773       <method name="get" c:identifier="gtk_print_settings_get" version="2.10">
36774         <doc xml:whitespace="preserve">Looks up the string value associated with @key.</doc>
36775         <return-value transfer-ownership="none">
36776           <doc xml:whitespace="preserve">the string value for @key</doc>
36777           <type name="utf8" c:type="gchar*"/>
36778         </return-value>
36779         <parameters>
36780           <parameter name="key" transfer-ownership="none">
36781             <doc xml:whitespace="preserve">a key</doc>
36782             <type name="utf8" c:type="gchar*"/>
36783           </parameter>
36784         </parameters>
36785       </method>
36786       <method name="get_bool"
36787               c:identifier="gtk_print_settings_get_bool"
36788               version="2.10">
36789         <doc xml:whitespace="preserve">Returns the boolean represented by the value
36790 that is associated with @key. 
36791 The string "true" represents %TRUE, any other 
36792 string %FALSE.</doc>
36793         <return-value transfer-ownership="none">
36794           <doc xml:whitespace="preserve">%TRUE, if @key maps to a true value.</doc>
36795           <type name="gboolean" c:type="gboolean"/>
36796         </return-value>
36797         <parameters>
36798           <parameter name="key" transfer-ownership="none">
36799             <doc xml:whitespace="preserve">a key</doc>
36800             <type name="utf8" c:type="gchar*"/>
36801           </parameter>
36802         </parameters>
36803       </method>
36804       <method name="get_collate"
36805               c:identifier="gtk_print_settings_get_collate"
36806               version="2.10">
36807         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_COLLATE.</doc>
36808         <return-value transfer-ownership="none">
36809           <doc xml:whitespace="preserve">whether to collate the printed pages</doc>
36810           <type name="gboolean" c:type="gboolean"/>
36811         </return-value>
36812       </method>
36813       <method name="get_default_source"
36814               c:identifier="gtk_print_settings_get_default_source"
36815               version="2.10">
36816         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DEFAULT_SOURCE.</doc>
36817         <return-value transfer-ownership="none">
36818           <doc xml:whitespace="preserve">the default source</doc>
36819           <type name="utf8" c:type="gchar*"/>
36820         </return-value>
36821       </method>
36822       <method name="get_dither"
36823               c:identifier="gtk_print_settings_get_dither"
36824               version="2.10">
36825         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DITHER.</doc>
36826         <return-value transfer-ownership="none">
36827           <doc xml:whitespace="preserve">the dithering that is used</doc>
36828           <type name="utf8" c:type="gchar*"/>
36829         </return-value>
36830       </method>
36831       <method name="get_double"
36832               c:identifier="gtk_print_settings_get_double"
36833               version="2.10">
36834         <doc xml:whitespace="preserve">Returns the double value associated with @key, or 0.</doc>
36835         <return-value transfer-ownership="none">
36836           <doc xml:whitespace="preserve">the double value of @key</doc>
36837           <type name="gdouble" c:type="gdouble"/>
36838         </return-value>
36839         <parameters>
36840           <parameter name="key" transfer-ownership="none">
36841             <doc xml:whitespace="preserve">a key</doc>
36842             <type name="utf8" c:type="gchar*"/>
36843           </parameter>
36844         </parameters>
36845       </method>
36846       <method name="get_double_with_default"
36847               c:identifier="gtk_print_settings_get_double_with_default"
36848               version="2.10">
36849         <doc xml:whitespace="preserve">Returns the floating point number represented by 
36850 the value that is associated with @key, or @default_val
36851 if the value does not represent a floating point number.
36852 Floating point numbers are parsed with g_ascii_strtod().</doc>
36853         <return-value transfer-ownership="none">
36854           <doc xml:whitespace="preserve">the floating point number associated with @key</doc>
36855           <type name="gdouble" c:type="gdouble"/>
36856         </return-value>
36857         <parameters>
36858           <parameter name="key" transfer-ownership="none">
36859             <doc xml:whitespace="preserve">a key</doc>
36860             <type name="utf8" c:type="gchar*"/>
36861           </parameter>
36862           <parameter name="def" transfer-ownership="none">
36863             <doc xml:whitespace="preserve">the default value</doc>
36864             <type name="gdouble" c:type="gdouble"/>
36865           </parameter>
36866         </parameters>
36867       </method>
36868       <method name="get_duplex"
36869               c:identifier="gtk_print_settings_get_duplex"
36870               version="2.10">
36871         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DUPLEX.</doc>
36872         <return-value transfer-ownership="none">
36873           <doc xml:whitespace="preserve">whether to print the output in duplex.</doc>
36874           <type name="PrintDuplex" c:type="GtkPrintDuplex"/>
36875         </return-value>
36876       </method>
36877       <method name="get_finishings"
36878               c:identifier="gtk_print_settings_get_finishings"
36879               version="2.10">
36880         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_FINISHINGS.</doc>
36881         <return-value transfer-ownership="none">
36882           <doc xml:whitespace="preserve">the finishings</doc>
36883           <type name="utf8" c:type="gchar*"/>
36884         </return-value>
36885       </method>
36886       <method name="get_int"
36887               c:identifier="gtk_print_settings_get_int"
36888               version="2.10">
36889         <doc xml:whitespace="preserve">Returns the integer value of @key, or 0.</doc>
36890         <return-value transfer-ownership="none">
36891           <doc xml:whitespace="preserve">the integer value of @key</doc>
36892           <type name="gint" c:type="gint"/>
36893         </return-value>
36894         <parameters>
36895           <parameter name="key" transfer-ownership="none">
36896             <doc xml:whitespace="preserve">a key</doc>
36897             <type name="utf8" c:type="gchar*"/>
36898           </parameter>
36899         </parameters>
36900       </method>
36901       <method name="get_int_with_default"
36902               c:identifier="gtk_print_settings_get_int_with_default"
36903               version="2.10">
36904         <doc xml:whitespace="preserve">Returns the value of @key, interpreted as
36905 an integer, or the default value.</doc>
36906         <return-value transfer-ownership="none">
36907           <doc xml:whitespace="preserve">the integer value of @key</doc>
36908           <type name="gint" c:type="gint"/>
36909         </return-value>
36910         <parameters>
36911           <parameter name="key" transfer-ownership="none">
36912             <doc xml:whitespace="preserve">a key</doc>
36913             <type name="utf8" c:type="gchar*"/>
36914           </parameter>
36915           <parameter name="def" transfer-ownership="none">
36916             <doc xml:whitespace="preserve">the default value</doc>
36917             <type name="gint" c:type="gint"/>
36918           </parameter>
36919         </parameters>
36920       </method>
36921       <method name="get_length"
36922               c:identifier="gtk_print_settings_get_length"
36923               version="2.10">
36924         <doc xml:whitespace="preserve">Returns the value associated with @key, interpreted
36925 as a length. The returned value is converted to @units.</doc>
36926         <return-value transfer-ownership="none">
36927           <doc xml:whitespace="preserve">the length value of @key, converted to @unit</doc>
36928           <type name="gdouble" c:type="gdouble"/>
36929         </return-value>
36930         <parameters>
36931           <parameter name="key" transfer-ownership="none">
36932             <doc xml:whitespace="preserve">a key</doc>
36933             <type name="utf8" c:type="gchar*"/>
36934           </parameter>
36935           <parameter name="unit" transfer-ownership="none">
36936             <doc xml:whitespace="preserve">the unit of the return value</doc>
36937             <type name="Unit" c:type="GtkUnit"/>
36938           </parameter>
36939         </parameters>
36940       </method>
36941       <method name="get_media_type"
36942               c:identifier="gtk_print_settings_get_media_type"
36943               version="2.10">
36944         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_MEDIA_TYPE.
36945 The set of media types is defined in PWG 5101.1-2002 PWG.
36946 &lt;!-- FIXME link here --&gt;</doc>
36947         <return-value transfer-ownership="none">
36948           <doc xml:whitespace="preserve">the media type</doc>
36949           <type name="utf8" c:type="gchar*"/>
36950         </return-value>
36951       </method>
36952       <method name="get_n_copies"
36953               c:identifier="gtk_print_settings_get_n_copies"
36954               version="2.10">
36955         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_N_COPIES.</doc>
36956         <return-value transfer-ownership="none">
36957           <doc xml:whitespace="preserve">the number of copies to print</doc>
36958           <type name="gint" c:type="gint"/>
36959         </return-value>
36960       </method>
36961       <method name="get_number_up"
36962               c:identifier="gtk_print_settings_get_number_up"
36963               version="2.10">
36964         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_NUMBER_UP.</doc>
36965         <return-value transfer-ownership="none">
36966           <doc xml:whitespace="preserve">the number of pages per sheet</doc>
36967           <type name="gint" c:type="gint"/>
36968         </return-value>
36969       </method>
36970       <method name="get_number_up_layout"
36971               c:identifier="gtk_print_settings_get_number_up_layout"
36972               version="2.14">
36973         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT.</doc>
36974         <return-value transfer-ownership="none">
36975           <doc xml:whitespace="preserve">layout of page in number-up mode</doc>
36976           <type name="NumberUpLayout" c:type="GtkNumberUpLayout"/>
36977         </return-value>
36978       </method>
36979       <method name="get_orientation"
36980               c:identifier="gtk_print_settings_get_orientation"
36981               version="2.10">
36982         <doc xml:whitespace="preserve">Get the value of %GTK_PRINT_SETTINGS_ORIENTATION, 
36983 converted to a #GtkPageOrientation.</doc>
36984         <return-value transfer-ownership="none">
36985           <doc xml:whitespace="preserve">the orientation</doc>
36986           <type name="PageOrientation" c:type="GtkPageOrientation"/>
36987         </return-value>
36988       </method>
36989       <method name="get_output_bin"
36990               c:identifier="gtk_print_settings_get_output_bin"
36991               version="2.10">
36992         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_OUTPUT_BIN.</doc>
36993         <return-value transfer-ownership="none">
36994           <doc xml:whitespace="preserve">the output bin</doc>
36995           <type name="utf8" c:type="gchar*"/>
36996         </return-value>
36997       </method>
36998       <method name="get_page_ranges"
36999               c:identifier="gtk_print_settings_get_page_ranges"
37000               version="2.10"
37001               introspectable="0">
37002         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAGE_RANGES.
37003 Use g_free() to free the array when it is no longer needed.</doc>
37004         <return-value transfer-ownership="full">
37005           <doc xml:whitespace="preserve">an array of #GtkPageRange&lt;!-- --&gt;s.</doc>
37006           <type name="PageRange" c:type="GtkPageRange*"/>
37007         </return-value>
37008         <parameters>
37009           <parameter name="num_ranges" transfer-ownership="none">
37010             <doc xml:whitespace="preserve">return location for the length of the returned array</doc>
37011             <type name="gint" c:type="gint*"/>
37012           </parameter>
37013         </parameters>
37014       </method>
37015       <method name="get_page_set"
37016               c:identifier="gtk_print_settings_get_page_set"
37017               version="2.10">
37018         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAGE_SET.</doc>
37019         <return-value transfer-ownership="none">
37020           <doc xml:whitespace="preserve">the set of pages to print</doc>
37021           <type name="PageSet" c:type="GtkPageSet"/>
37022         </return-value>
37023       </method>
37024       <method name="get_paper_height"
37025               c:identifier="gtk_print_settings_get_paper_height"
37026               version="2.10">
37027         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_HEIGHT,
37028 converted to @unit.</doc>
37029         <return-value transfer-ownership="none">
37030           <doc xml:whitespace="preserve">the paper height, in units of @unit</doc>
37031           <type name="gdouble" c:type="gdouble"/>
37032         </return-value>
37033         <parameters>
37034           <parameter name="unit" transfer-ownership="none">
37035             <doc xml:whitespace="preserve">the unit for the return value</doc>
37036             <type name="Unit" c:type="GtkUnit"/>
37037           </parameter>
37038         </parameters>
37039       </method>
37040       <method name="get_paper_size"
37041               c:identifier="gtk_print_settings_get_paper_size"
37042               version="2.10">
37043         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_FORMAT, 
37044 converted to a #GtkPaperSize.</doc>
37045         <return-value transfer-ownership="full">
37046           <doc xml:whitespace="preserve">the paper size</doc>
37047           <type name="PaperSize" c:type="GtkPaperSize*"/>
37048         </return-value>
37049       </method>
37050       <method name="get_paper_width"
37051               c:identifier="gtk_print_settings_get_paper_width"
37052               version="2.10">
37053         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_WIDTH,
37054 converted to @unit.</doc>
37055         <return-value transfer-ownership="none">
37056           <doc xml:whitespace="preserve">the paper width, in units of @unit</doc>
37057           <type name="gdouble" c:type="gdouble"/>
37058         </return-value>
37059         <parameters>
37060           <parameter name="unit" transfer-ownership="none">
37061             <doc xml:whitespace="preserve">the unit for the return value</doc>
37062             <type name="Unit" c:type="GtkUnit"/>
37063           </parameter>
37064         </parameters>
37065       </method>
37066       <method name="get_print_pages"
37067               c:identifier="gtk_print_settings_get_print_pages"
37068               version="2.10">
37069         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PRINT_PAGES.</doc>
37070         <return-value transfer-ownership="none">
37071           <doc xml:whitespace="preserve">which pages to print</doc>
37072           <type name="PrintPages" c:type="GtkPrintPages"/>
37073         </return-value>
37074       </method>
37075       <method name="get_printer"
37076               c:identifier="gtk_print_settings_get_printer"
37077               version="2.10">
37078         <doc xml:whitespace="preserve">Convenience function to obtain the value of 
37079 %GTK_PRINT_SETTINGS_PRINTER.</doc>
37080         <return-value transfer-ownership="none">
37081           <doc xml:whitespace="preserve">the printer name</doc>
37082           <type name="utf8" c:type="gchar*"/>
37083         </return-value>
37084       </method>
37085       <method name="get_printer_lpi"
37086               c:identifier="gtk_print_settings_get_printer_lpi"
37087               version="2.16">
37088         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PRINTER_LPI.</doc>
37089         <return-value transfer-ownership="none">
37090           <doc xml:whitespace="preserve">the resolution in lpi (lines per inch)</doc>
37091           <type name="gdouble" c:type="gdouble"/>
37092         </return-value>
37093       </method>
37094       <method name="get_quality"
37095               c:identifier="gtk_print_settings_get_quality"
37096               version="2.10">
37097         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_QUALITY.</doc>
37098         <return-value transfer-ownership="none">
37099           <doc xml:whitespace="preserve">the print quality</doc>
37100           <type name="PrintQuality" c:type="GtkPrintQuality"/>
37101         </return-value>
37102       </method>
37103       <method name="get_resolution"
37104               c:identifier="gtk_print_settings_get_resolution"
37105               version="2.10">
37106         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION.</doc>
37107         <return-value transfer-ownership="none">
37108           <doc xml:whitespace="preserve">the resolution in dpi</doc>
37109           <type name="gint" c:type="gint"/>
37110         </return-value>
37111       </method>
37112       <method name="get_resolution_x"
37113               c:identifier="gtk_print_settings_get_resolution_x"
37114               version="2.16">
37115         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION_X.</doc>
37116         <return-value transfer-ownership="none">
37117           <doc xml:whitespace="preserve">the horizontal resolution in dpi</doc>
37118           <type name="gint" c:type="gint"/>
37119         </return-value>
37120       </method>
37121       <method name="get_resolution_y"
37122               c:identifier="gtk_print_settings_get_resolution_y"
37123               version="2.16">
37124         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
37125         <return-value transfer-ownership="none">
37126           <doc xml:whitespace="preserve">the vertical resolution in dpi</doc>
37127           <type name="gint" c:type="gint"/>
37128         </return-value>
37129       </method>
37130       <method name="get_reverse"
37131               c:identifier="gtk_print_settings_get_reverse"
37132               version="2.10">
37133         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_REVERSE.</doc>
37134         <return-value transfer-ownership="none">
37135           <doc xml:whitespace="preserve">whether to reverse the order of the printed pages</doc>
37136           <type name="gboolean" c:type="gboolean"/>
37137         </return-value>
37138       </method>
37139       <method name="get_scale"
37140               c:identifier="gtk_print_settings_get_scale"
37141               version="2.10">
37142         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_SCALE.</doc>
37143         <return-value transfer-ownership="none">
37144           <doc xml:whitespace="preserve">the scale in percent</doc>
37145           <type name="gdouble" c:type="gdouble"/>
37146         </return-value>
37147       </method>
37148       <method name="get_use_color"
37149               c:identifier="gtk_print_settings_get_use_color"
37150               version="2.10">
37151         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_USE_COLOR.</doc>
37152         <return-value transfer-ownership="none">
37153           <doc xml:whitespace="preserve">whether to use color</doc>
37154           <type name="gboolean" c:type="gboolean"/>
37155         </return-value>
37156       </method>
37157       <method name="has_key"
37158               c:identifier="gtk_print_settings_has_key"
37159               version="2.10">
37160         <doc xml:whitespace="preserve">Returns %TRUE, if a value is associated with @key.</doc>
37161         <return-value transfer-ownership="none">
37162           <doc xml:whitespace="preserve">%TRUE, if @key has a value</doc>
37163           <type name="gboolean" c:type="gboolean"/>
37164         </return-value>
37165         <parameters>
37166           <parameter name="key" transfer-ownership="none">
37167             <doc xml:whitespace="preserve">a key</doc>
37168             <type name="utf8" c:type="gchar*"/>
37169           </parameter>
37170         </parameters>
37171       </method>
37172       <method name="load_file"
37173               c:identifier="gtk_print_settings_load_file"
37174               version="2.14"
37175               throws="1">
37176         <doc xml:whitespace="preserve">Reads the print settings from @file_name. If the file could not be loaded
37177 then error is set to either a #GFileError or #GKeyFileError.
37178 See gtk_print_settings_to_file().</doc>
37179         <return-value transfer-ownership="none">
37180           <doc xml:whitespace="preserve">%TRUE on success</doc>
37181           <type name="gboolean" c:type="gboolean"/>
37182         </return-value>
37183         <parameters>
37184           <parameter name="file_name" transfer-ownership="none">
37185             <doc xml:whitespace="preserve">the filename to read the settings from</doc>
37186             <type name="utf8" c:type="gchar*"/>
37187           </parameter>
37188         </parameters>
37189       </method>
37190       <method name="load_key_file"
37191               c:identifier="gtk_print_settings_load_key_file"
37192               version="2.14"
37193               throws="1">
37194         <doc xml:whitespace="preserve">Reads the print settings from the group @group_name in @key_file. If the
37195 file could not be loaded then error is set to either a #GFileError or
37196 #GKeyFileError.</doc>
37197         <return-value transfer-ownership="none">
37198           <doc xml:whitespace="preserve">%TRUE on success</doc>
37199           <type name="gboolean" c:type="gboolean"/>
37200         </return-value>
37201         <parameters>
37202           <parameter name="key_file" transfer-ownership="none">
37203             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the settings from</doc>
37204             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
37205           </parameter>
37206           <parameter name="group_name"
37207                      transfer-ownership="none"
37208                      allow-none="1">
37209             <doc xml:whitespace="preserve">the name of the group to use, or %NULL to use the default "Print Settings"</doc>
37210             <type name="utf8" c:type="gchar*"/>
37211           </parameter>
37212         </parameters>
37213       </method>
37214       <method name="set" c:identifier="gtk_print_settings_set" version="2.10">
37215         <doc xml:whitespace="preserve">Associates @value with @key.</doc>
37216         <return-value transfer-ownership="none">
37217           <type name="none" c:type="void"/>
37218         </return-value>
37219         <parameters>
37220           <parameter name="key" transfer-ownership="none">
37221             <doc xml:whitespace="preserve">a key</doc>
37222             <type name="utf8" c:type="gchar*"/>
37223           </parameter>
37224           <parameter name="value" transfer-ownership="none" allow-none="1">
37225             <doc xml:whitespace="preserve">a string value, or %NULL</doc>
37226             <type name="utf8" c:type="gchar*"/>
37227           </parameter>
37228         </parameters>
37229       </method>
37230       <method name="set_bool"
37231               c:identifier="gtk_print_settings_set_bool"
37232               version="2.10">
37233         <doc xml:whitespace="preserve">Sets @key to a boolean value.</doc>
37234         <return-value transfer-ownership="none">
37235           <type name="none" c:type="void"/>
37236         </return-value>
37237         <parameters>
37238           <parameter name="key" transfer-ownership="none">
37239             <doc xml:whitespace="preserve">a key</doc>
37240             <type name="utf8" c:type="gchar*"/>
37241           </parameter>
37242           <parameter name="value" transfer-ownership="none">
37243             <doc xml:whitespace="preserve">a boolean</doc>
37244             <type name="gboolean" c:type="gboolean"/>
37245           </parameter>
37246         </parameters>
37247       </method>
37248       <method name="set_collate"
37249               c:identifier="gtk_print_settings_set_collate"
37250               version="2.10">
37251         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_COLLATE.</doc>
37252         <return-value transfer-ownership="none">
37253           <type name="none" c:type="void"/>
37254         </return-value>
37255         <parameters>
37256           <parameter name="collate" transfer-ownership="none">
37257             <doc xml:whitespace="preserve">whether to collate the output</doc>
37258             <type name="gboolean" c:type="gboolean"/>
37259           </parameter>
37260         </parameters>
37261       </method>
37262       <method name="set_default_source"
37263               c:identifier="gtk_print_settings_set_default_source"
37264               version="2.10">
37265         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DEFAULT_SOURCE.</doc>
37266         <return-value transfer-ownership="none">
37267           <type name="none" c:type="void"/>
37268         </return-value>
37269         <parameters>
37270           <parameter name="default_source" transfer-ownership="none">
37271             <doc xml:whitespace="preserve">the default source</doc>
37272             <type name="utf8" c:type="gchar*"/>
37273           </parameter>
37274         </parameters>
37275       </method>
37276       <method name="set_dither"
37277               c:identifier="gtk_print_settings_set_dither"
37278               version="2.10">
37279         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DITHER.</doc>
37280         <return-value transfer-ownership="none">
37281           <type name="none" c:type="void"/>
37282         </return-value>
37283         <parameters>
37284           <parameter name="dither" transfer-ownership="none">
37285             <doc xml:whitespace="preserve">the dithering that is used</doc>
37286             <type name="utf8" c:type="gchar*"/>
37287           </parameter>
37288         </parameters>
37289       </method>
37290       <method name="set_double"
37291               c:identifier="gtk_print_settings_set_double"
37292               version="2.10">
37293         <doc xml:whitespace="preserve">Sets @key to a double value.</doc>
37294         <return-value transfer-ownership="none">
37295           <type name="none" c:type="void"/>
37296         </return-value>
37297         <parameters>
37298           <parameter name="key" transfer-ownership="none">
37299             <doc xml:whitespace="preserve">a key</doc>
37300             <type name="utf8" c:type="gchar*"/>
37301           </parameter>
37302           <parameter name="value" transfer-ownership="none">
37303             <doc xml:whitespace="preserve">a double value</doc>
37304             <type name="gdouble" c:type="gdouble"/>
37305           </parameter>
37306         </parameters>
37307       </method>
37308       <method name="set_duplex"
37309               c:identifier="gtk_print_settings_set_duplex"
37310               version="2.10">
37311         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DUPLEX.</doc>
37312         <return-value transfer-ownership="none">
37313           <type name="none" c:type="void"/>
37314         </return-value>
37315         <parameters>
37316           <parameter name="duplex" transfer-ownership="none">
37317             <doc xml:whitespace="preserve">a #GtkPrintDuplex value</doc>
37318             <type name="PrintDuplex" c:type="GtkPrintDuplex"/>
37319           </parameter>
37320         </parameters>
37321       </method>
37322       <method name="set_finishings"
37323               c:identifier="gtk_print_settings_set_finishings"
37324               version="2.10">
37325         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_FINISHINGS.</doc>
37326         <return-value transfer-ownership="none">
37327           <type name="none" c:type="void"/>
37328         </return-value>
37329         <parameters>
37330           <parameter name="finishings" transfer-ownership="none">
37331             <doc xml:whitespace="preserve">the finishings</doc>
37332             <type name="utf8" c:type="gchar*"/>
37333           </parameter>
37334         </parameters>
37335       </method>
37336       <method name="set_int"
37337               c:identifier="gtk_print_settings_set_int"
37338               version="2.10">
37339         <doc xml:whitespace="preserve">Sets @key to an integer value.</doc>
37340         <return-value transfer-ownership="none">
37341           <type name="none" c:type="void"/>
37342         </return-value>
37343         <parameters>
37344           <parameter name="key" transfer-ownership="none">
37345             <doc xml:whitespace="preserve">a key</doc>
37346             <type name="utf8" c:type="gchar*"/>
37347           </parameter>
37348           <parameter name="value" transfer-ownership="none">
37349             <doc xml:whitespace="preserve">an integer</doc>
37350             <type name="gint" c:type="gint"/>
37351           </parameter>
37352         </parameters>
37353       </method>
37354       <method name="set_length"
37355               c:identifier="gtk_print_settings_set_length"
37356               version="2.10">
37357         <doc xml:whitespace="preserve">Associates a length in units of @unit with @key.</doc>
37358         <return-value transfer-ownership="none">
37359           <type name="none" c:type="void"/>
37360         </return-value>
37361         <parameters>
37362           <parameter name="key" transfer-ownership="none">
37363             <doc xml:whitespace="preserve">a key</doc>
37364             <type name="utf8" c:type="gchar*"/>
37365           </parameter>
37366           <parameter name="value" transfer-ownership="none">
37367             <doc xml:whitespace="preserve">a length</doc>
37368             <type name="gdouble" c:type="gdouble"/>
37369           </parameter>
37370           <parameter name="unit" transfer-ownership="none">
37371             <doc xml:whitespace="preserve">the unit of @length</doc>
37372             <type name="Unit" c:type="GtkUnit"/>
37373           </parameter>
37374         </parameters>
37375       </method>
37376       <method name="set_media_type"
37377               c:identifier="gtk_print_settings_set_media_type"
37378               version="2.10">
37379         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_MEDIA_TYPE.
37380 The set of media types is defined in PWG 5101.1-2002 PWG.
37381 &lt;!-- FIXME link here --&gt;</doc>
37382         <return-value transfer-ownership="none">
37383           <type name="none" c:type="void"/>
37384         </return-value>
37385         <parameters>
37386           <parameter name="media_type" transfer-ownership="none">
37387             <doc xml:whitespace="preserve">the media type</doc>
37388             <type name="utf8" c:type="gchar*"/>
37389           </parameter>
37390         </parameters>
37391       </method>
37392       <method name="set_n_copies"
37393               c:identifier="gtk_print_settings_set_n_copies"
37394               version="2.10">
37395         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_N_COPIES.</doc>
37396         <return-value transfer-ownership="none">
37397           <type name="none" c:type="void"/>
37398         </return-value>
37399         <parameters>
37400           <parameter name="num_copies" transfer-ownership="none">
37401             <doc xml:whitespace="preserve">the number of copies</doc>
37402             <type name="gint" c:type="gint"/>
37403           </parameter>
37404         </parameters>
37405       </method>
37406       <method name="set_number_up"
37407               c:identifier="gtk_print_settings_set_number_up"
37408               version="2.10">
37409         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_NUMBER_UP.</doc>
37410         <return-value transfer-ownership="none">
37411           <type name="none" c:type="void"/>
37412         </return-value>
37413         <parameters>
37414           <parameter name="number_up" transfer-ownership="none">
37415             <doc xml:whitespace="preserve">the number of pages per sheet</doc>
37416             <type name="gint" c:type="gint"/>
37417           </parameter>
37418         </parameters>
37419       </method>
37420       <method name="set_number_up_layout"
37421               c:identifier="gtk_print_settings_set_number_up_layout"
37422               version="2.14">
37423         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT.</doc>
37424         <return-value transfer-ownership="none">
37425           <type name="none" c:type="void"/>
37426         </return-value>
37427         <parameters>
37428           <parameter name="number_up_layout" transfer-ownership="none">
37429             <doc xml:whitespace="preserve">a #GtkNumberUpLayout value</doc>
37430             <type name="NumberUpLayout" c:type="GtkNumberUpLayout"/>
37431           </parameter>
37432         </parameters>
37433       </method>
37434       <method name="set_orientation"
37435               c:identifier="gtk_print_settings_set_orientation"
37436               version="2.10">
37437         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_ORIENTATION.</doc>
37438         <return-value transfer-ownership="none">
37439           <type name="none" c:type="void"/>
37440         </return-value>
37441         <parameters>
37442           <parameter name="orientation" transfer-ownership="none">
37443             <doc xml:whitespace="preserve">a page orientation</doc>
37444             <type name="PageOrientation" c:type="GtkPageOrientation"/>
37445           </parameter>
37446         </parameters>
37447       </method>
37448       <method name="set_output_bin"
37449               c:identifier="gtk_print_settings_set_output_bin"
37450               version="2.10">
37451         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_OUTPUT_BIN.</doc>
37452         <return-value transfer-ownership="none">
37453           <type name="none" c:type="void"/>
37454         </return-value>
37455         <parameters>
37456           <parameter name="output_bin" transfer-ownership="none">
37457             <doc xml:whitespace="preserve">the output bin</doc>
37458             <type name="utf8" c:type="gchar*"/>
37459           </parameter>
37460         </parameters>
37461       </method>
37462       <method name="set_page_ranges"
37463               c:identifier="gtk_print_settings_set_page_ranges"
37464               version="2.10">
37465         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAGE_RANGES.</doc>
37466         <return-value transfer-ownership="none">
37467           <type name="none" c:type="void"/>
37468         </return-value>
37469         <parameters>
37470           <parameter name="page_ranges" transfer-ownership="none">
37471             <doc xml:whitespace="preserve">an array of #GtkPageRange&lt;!-- --&gt;s</doc>
37472             <type name="PageRange" c:type="GtkPageRange*"/>
37473           </parameter>
37474           <parameter name="num_ranges" transfer-ownership="none">
37475             <doc xml:whitespace="preserve">the length of @page_ranges</doc>
37476             <type name="gint" c:type="gint"/>
37477           </parameter>
37478         </parameters>
37479       </method>
37480       <method name="set_page_set"
37481               c:identifier="gtk_print_settings_set_page_set"
37482               version="2.10">
37483         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAGE_SET.</doc>
37484         <return-value transfer-ownership="none">
37485           <type name="none" c:type="void"/>
37486         </return-value>
37487         <parameters>
37488           <parameter name="page_set" transfer-ownership="none">
37489             <doc xml:whitespace="preserve">a #GtkPageSet value</doc>
37490             <type name="PageSet" c:type="GtkPageSet"/>
37491           </parameter>
37492         </parameters>
37493       </method>
37494       <method name="set_paper_height"
37495               c:identifier="gtk_print_settings_set_paper_height"
37496               version="2.10">
37497         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_HEIGHT.</doc>
37498         <return-value transfer-ownership="none">
37499           <type name="none" c:type="void"/>
37500         </return-value>
37501         <parameters>
37502           <parameter name="height" transfer-ownership="none">
37503             <doc xml:whitespace="preserve">the paper height</doc>
37504             <type name="gdouble" c:type="gdouble"/>
37505           </parameter>
37506           <parameter name="unit" transfer-ownership="none">
37507             <doc xml:whitespace="preserve">the units of @height</doc>
37508             <type name="Unit" c:type="GtkUnit"/>
37509           </parameter>
37510         </parameters>
37511       </method>
37512       <method name="set_paper_size"
37513               c:identifier="gtk_print_settings_set_paper_size"
37514               version="2.10">
37515         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_FORMAT,
37516 %GTK_PRINT_SETTINGS_PAPER_WIDTH and
37517 %GTK_PRINT_SETTINGS_PAPER_HEIGHT.</doc>
37518         <return-value transfer-ownership="none">
37519           <type name="none" c:type="void"/>
37520         </return-value>
37521         <parameters>
37522           <parameter name="paper_size" transfer-ownership="none">
37523             <doc xml:whitespace="preserve">a paper size</doc>
37524             <type name="PaperSize" c:type="GtkPaperSize*"/>
37525           </parameter>
37526         </parameters>
37527       </method>
37528       <method name="set_paper_width"
37529               c:identifier="gtk_print_settings_set_paper_width"
37530               version="2.10">
37531         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_WIDTH.</doc>
37532         <return-value transfer-ownership="none">
37533           <type name="none" c:type="void"/>
37534         </return-value>
37535         <parameters>
37536           <parameter name="width" transfer-ownership="none">
37537             <doc xml:whitespace="preserve">the paper width</doc>
37538             <type name="gdouble" c:type="gdouble"/>
37539           </parameter>
37540           <parameter name="unit" transfer-ownership="none">
37541             <doc xml:whitespace="preserve">the units of @width</doc>
37542             <type name="Unit" c:type="GtkUnit"/>
37543           </parameter>
37544         </parameters>
37545       </method>
37546       <method name="set_print_pages"
37547               c:identifier="gtk_print_settings_set_print_pages"
37548               version="2.10">
37549         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PRINT_PAGES.</doc>
37550         <return-value transfer-ownership="none">
37551           <type name="none" c:type="void"/>
37552         </return-value>
37553         <parameters>
37554           <parameter name="pages" transfer-ownership="none">
37555             <doc xml:whitespace="preserve">a #GtkPrintPages value</doc>
37556             <type name="PrintPages" c:type="GtkPrintPages"/>
37557           </parameter>
37558         </parameters>
37559       </method>
37560       <method name="set_printer"
37561               c:identifier="gtk_print_settings_set_printer"
37562               version="2.10">
37563         <doc xml:whitespace="preserve">Convenience function to set %GTK_PRINT_SETTINGS_PRINTER
37564 to @printer.</doc>
37565         <return-value transfer-ownership="none">
37566           <type name="none" c:type="void"/>
37567         </return-value>
37568         <parameters>
37569           <parameter name="printer" transfer-ownership="none">
37570             <doc xml:whitespace="preserve">the printer name</doc>
37571             <type name="utf8" c:type="gchar*"/>
37572           </parameter>
37573         </parameters>
37574       </method>
37575       <method name="set_printer_lpi"
37576               c:identifier="gtk_print_settings_set_printer_lpi"
37577               version="2.16">
37578         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PRINTER_LPI.</doc>
37579         <return-value transfer-ownership="none">
37580           <type name="none" c:type="void"/>
37581         </return-value>
37582         <parameters>
37583           <parameter name="lpi" transfer-ownership="none">
37584             <doc xml:whitespace="preserve">the resolution in lpi (lines per inch)</doc>
37585             <type name="gdouble" c:type="gdouble"/>
37586           </parameter>
37587         </parameters>
37588       </method>
37589       <method name="set_quality"
37590               c:identifier="gtk_print_settings_set_quality"
37591               version="2.10">
37592         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_QUALITY.</doc>
37593         <return-value transfer-ownership="none">
37594           <type name="none" c:type="void"/>
37595         </return-value>
37596         <parameters>
37597           <parameter name="quality" transfer-ownership="none">
37598             <doc xml:whitespace="preserve">a #GtkPrintQuality value</doc>
37599             <type name="PrintQuality" c:type="GtkPrintQuality"/>
37600           </parameter>
37601         </parameters>
37602       </method>
37603       <method name="set_resolution"
37604               c:identifier="gtk_print_settings_set_resolution"
37605               version="2.10">
37606         <doc xml:whitespace="preserve">Sets the values of %GTK_PRINT_SETTINGS_RESOLUTION,
37607 %GTK_PRINT_SETTINGS_RESOLUTION_X and 
37608 %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
37609         <return-value transfer-ownership="none">
37610           <type name="none" c:type="void"/>
37611         </return-value>
37612         <parameters>
37613           <parameter name="resolution" transfer-ownership="none">
37614             <doc xml:whitespace="preserve">the resolution in dpi</doc>
37615             <type name="gint" c:type="gint"/>
37616           </parameter>
37617         </parameters>
37618       </method>
37619       <method name="set_resolution_xy"
37620               c:identifier="gtk_print_settings_set_resolution_xy"
37621               version="2.16">
37622         <doc xml:whitespace="preserve">Sets the values of %GTK_PRINT_SETTINGS_RESOLUTION,
37623 %GTK_PRINT_SETTINGS_RESOLUTION_X and
37624 %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
37625         <return-value transfer-ownership="none">
37626           <type name="none" c:type="void"/>
37627         </return-value>
37628         <parameters>
37629           <parameter name="resolution_x" transfer-ownership="none">
37630             <doc xml:whitespace="preserve">the horizontal resolution in dpi</doc>
37631             <type name="gint" c:type="gint"/>
37632           </parameter>
37633           <parameter name="resolution_y" transfer-ownership="none">
37634             <doc xml:whitespace="preserve">the vertical resolution in dpi</doc>
37635             <type name="gint" c:type="gint"/>
37636           </parameter>
37637         </parameters>
37638       </method>
37639       <method name="set_reverse"
37640               c:identifier="gtk_print_settings_set_reverse"
37641               version="2.10">
37642         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_REVERSE.</doc>
37643         <return-value transfer-ownership="none">
37644           <type name="none" c:type="void"/>
37645         </return-value>
37646         <parameters>
37647           <parameter name="reverse" transfer-ownership="none">
37648             <doc xml:whitespace="preserve">whether to reverse the output</doc>
37649             <type name="gboolean" c:type="gboolean"/>
37650           </parameter>
37651         </parameters>
37652       </method>
37653       <method name="set_scale"
37654               c:identifier="gtk_print_settings_set_scale"
37655               version="2.10">
37656         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_SCALE.</doc>
37657         <return-value transfer-ownership="none">
37658           <type name="none" c:type="void"/>
37659         </return-value>
37660         <parameters>
37661           <parameter name="scale" transfer-ownership="none">
37662             <doc xml:whitespace="preserve">the scale in percent</doc>
37663             <type name="gdouble" c:type="gdouble"/>
37664           </parameter>
37665         </parameters>
37666       </method>
37667       <method name="set_use_color"
37668               c:identifier="gtk_print_settings_set_use_color"
37669               version="2.10">
37670         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_USE_COLOR.</doc>
37671         <return-value transfer-ownership="none">
37672           <type name="none" c:type="void"/>
37673         </return-value>
37674         <parameters>
37675           <parameter name="use_color" transfer-ownership="none">
37676             <doc xml:whitespace="preserve">whether to use color</doc>
37677             <type name="gboolean" c:type="gboolean"/>
37678           </parameter>
37679         </parameters>
37680       </method>
37681       <method name="to_file"
37682               c:identifier="gtk_print_settings_to_file"
37683               version="2.12"
37684               throws="1">
37685         <doc xml:whitespace="preserve">This function saves the print settings from @settings to @file_name. If the
37686 file could not be loaded then error is set to either a #GFileError or
37687 #GKeyFileError.</doc>
37688         <return-value transfer-ownership="none">
37689           <doc xml:whitespace="preserve">%TRUE on success</doc>
37690           <type name="gboolean" c:type="gboolean"/>
37691         </return-value>
37692         <parameters>
37693           <parameter name="file_name" transfer-ownership="none">
37694             <doc xml:whitespace="preserve">the file to save to</doc>
37695             <type name="utf8" c:type="gchar*"/>
37696           </parameter>
37697         </parameters>
37698       </method>
37699       <method name="to_key_file"
37700               c:identifier="gtk_print_settings_to_key_file"
37701               version="2.12">
37702         <doc xml:whitespace="preserve">This function adds the print settings from @settings to @key_file.</doc>
37703         <return-value transfer-ownership="none">
37704           <type name="none" c:type="void"/>
37705         </return-value>
37706         <parameters>
37707           <parameter name="key_file" transfer-ownership="none">
37708             <doc xml:whitespace="preserve">the #GKeyFile to save the print settings to</doc>
37709             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
37710           </parameter>
37711           <parameter name="group_name" transfer-ownership="none">
37712             <doc xml:whitespace="preserve">the group to add the settings to in @key_file, or %NULL to use the default "Print Settings"</doc>
37713             <type name="utf8" c:type="gchar*"/>
37714           </parameter>
37715         </parameters>
37716       </method>
37717       <method name="unset"
37718               c:identifier="gtk_print_settings_unset"
37719               version="2.10">
37720         <doc xml:whitespace="preserve">Removes any value associated with @key. 
37721 This has the same effect as setting the value to %NULL.</doc>
37722         <return-value transfer-ownership="none">
37723           <type name="none" c:type="void"/>
37724         </return-value>
37725         <parameters>
37726           <parameter name="key" transfer-ownership="none">
37727             <doc xml:whitespace="preserve">a key</doc>
37728             <type name="utf8" c:type="gchar*"/>
37729           </parameter>
37730         </parameters>
37731       </method>
37732     </class>
37733     <callback name="PrintSettingsFunc" c:type="GtkPrintSettingsFunc">
37734       <return-value transfer-ownership="none">
37735         <type name="none" c:type="void"/>
37736       </return-value>
37737       <parameters>
37738         <parameter name="key" transfer-ownership="none">
37739           <type name="utf8" c:type="gchar*"/>
37740         </parameter>
37741         <parameter name="value" transfer-ownership="none">
37742           <type name="utf8" c:type="gchar*"/>
37743         </parameter>
37744         <parameter name="user_data" transfer-ownership="none" closure="2">
37745           <type name="gpointer" c:type="gpointer"/>
37746         </parameter>
37747       </parameters>
37748     </callback>
37749     <enumeration name="PrintStatus"
37750                  glib:type-name="GtkPrintStatus"
37751                  glib:get-type="gtk_print_status_get_type"
37752                  c:type="GtkPrintStatus">
37753       <member name="initial"
37754               value="0"
37755               c:identifier="GTK_PRINT_STATUS_INITIAL"
37756               glib:nick="initial"/>
37757       <member name="preparing"
37758               value="1"
37759               c:identifier="GTK_PRINT_STATUS_PREPARING"
37760               glib:nick="preparing"/>
37761       <member name="generating_data"
37762               value="2"
37763               c:identifier="GTK_PRINT_STATUS_GENERATING_DATA"
37764               glib:nick="generating-data"/>
37765       <member name="sending_data"
37766               value="3"
37767               c:identifier="GTK_PRINT_STATUS_SENDING_DATA"
37768               glib:nick="sending-data"/>
37769       <member name="pending"
37770               value="4"
37771               c:identifier="GTK_PRINT_STATUS_PENDING"
37772               glib:nick="pending"/>
37773       <member name="pending_issue"
37774               value="5"
37775               c:identifier="GTK_PRINT_STATUS_PENDING_ISSUE"
37776               glib:nick="pending-issue"/>
37777       <member name="printing"
37778               value="6"
37779               c:identifier="GTK_PRINT_STATUS_PRINTING"
37780               glib:nick="printing"/>
37781       <member name="finished"
37782               value="7"
37783               c:identifier="GTK_PRINT_STATUS_FINISHED"
37784               glib:nick="finished"/>
37785       <member name="finished_aborted"
37786               value="8"
37787               c:identifier="GTK_PRINT_STATUS_FINISHED_ABORTED"
37788               glib:nick="finished-aborted"/>
37789     </enumeration>
37790     <bitfield name="PrivateFlags"
37791               glib:type-name="GtkPrivateFlags"
37792               glib:get-type="gtk_private_flags_get_type"
37793               c:type="GtkPrivateFlags">
37794       <member name="user_style"
37795               value="1"
37796               c:identifier="PRIVATE_GTK_USER_STYLE"
37797               glib:nick="user-style"/>
37798       <member name="resize_pending"
37799               value="4"
37800               c:identifier="PRIVATE_GTK_RESIZE_PENDING"
37801               glib:nick="resize-pending"/>
37802       <member name="has_pointer"
37803               value="8"
37804               c:identifier="PRIVATE_GTK_HAS_POINTER"
37805               glib:nick="has-pointer"/>
37806       <member name="shadowed"
37807               value="16"
37808               c:identifier="PRIVATE_GTK_SHADOWED"
37809               glib:nick="shadowed"/>
37810       <member name="has_shape_mask"
37811               value="32"
37812               c:identifier="PRIVATE_GTK_HAS_SHAPE_MASK"
37813               glib:nick="has-shape-mask"/>
37814       <member name="in_reparent"
37815               value="64"
37816               c:identifier="PRIVATE_GTK_IN_REPARENT"
37817               glib:nick="in-reparent"/>
37818       <member name="direction_set"
37819               value="128"
37820               c:identifier="PRIVATE_GTK_DIRECTION_SET"
37821               glib:nick="direction-set"/>
37822       <member name="direction_ltr"
37823               value="256"
37824               c:identifier="PRIVATE_GTK_DIRECTION_LTR"
37825               glib:nick="direction-ltr"/>
37826       <member name="anchored"
37827               value="512"
37828               c:identifier="PRIVATE_GTK_ANCHORED"
37829               glib:nick="anchored"/>
37830       <member name="child_visible"
37831               value="1024"
37832               c:identifier="PRIVATE_GTK_CHILD_VISIBLE"
37833               glib:nick="child-visible"/>
37834       <member name="redraw_on_alloc"
37835               value="2048"
37836               c:identifier="PRIVATE_GTK_REDRAW_ON_ALLOC"
37837               glib:nick="redraw-on-alloc"/>
37838       <member name="alloc_needed"
37839               value="4096"
37840               c:identifier="PRIVATE_GTK_ALLOC_NEEDED"
37841               glib:nick="alloc-needed"/>
37842       <member name="width_request_needed"
37843               value="8192"
37844               c:identifier="PRIVATE_GTK_WIDTH_REQUEST_NEEDED"
37845               glib:nick="width-request-needed"/>
37846       <member name="height_request_needed"
37847               value="16384"
37848               c:identifier="PRIVATE_GTK_HEIGHT_REQUEST_NEEDED"
37849               glib:nick="height-request-needed"/>
37850     </bitfield>
37851     <class name="ProgressBar"
37852            c:symbol-prefix="progress_bar"
37853            c:type="GtkProgressBar"
37854            parent="Widget"
37855            glib:type-name="GtkProgressBar"
37856            glib:get-type="gtk_progress_bar_get_type"
37857            glib:type-struct="ProgressBarClass">
37858       <implements name="Atk.ImplementorIface"/>
37859       <implements name="Buildable"/>
37860       <implements name="Orientable"/>
37861       <implements name="SizeRequest"/>
37862       <constructor name="new" c:identifier="gtk_progress_bar_new">
37863         <return-value transfer-ownership="none">
37864           <type name="Widget" c:type="GtkWidget*"/>
37865         </return-value>
37866       </constructor>
37867       <method name="get_ellipsize"
37868               c:identifier="gtk_progress_bar_get_ellipsize"
37869               version="2.6">
37870         <doc xml:whitespace="preserve">Returns the ellipsizing position of the progressbar.
37871 See gtk_progress_bar_set_ellipsize().</doc>
37872         <return-value transfer-ownership="none">
37873           <doc xml:whitespace="preserve">#PangoEllipsizeMode</doc>
37874           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
37875         </return-value>
37876       </method>
37877       <method name="get_fraction" c:identifier="gtk_progress_bar_get_fraction">
37878         <doc xml:whitespace="preserve">Returns the current fraction of the task that's been completed.</doc>
37879         <return-value transfer-ownership="none">
37880           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
37881           <type name="gdouble" c:type="gdouble"/>
37882         </return-value>
37883       </method>
37884       <method name="get_inverted" c:identifier="gtk_progress_bar_get_inverted">
37885         <doc xml:whitespace="preserve">Gets the value set by gtk_progress_bar_set_inverted()</doc>
37886         <return-value transfer-ownership="none">
37887           <doc xml:whitespace="preserve">%TRUE if the progress bar is inverted</doc>
37888           <type name="gboolean" c:type="gboolean"/>
37889         </return-value>
37890       </method>
37891       <method name="get_pulse_step"
37892               c:identifier="gtk_progress_bar_get_pulse_step">
37893         <doc xml:whitespace="preserve">Retrieves the pulse step set with gtk_progress_bar_set_pulse_step()</doc>
37894         <return-value transfer-ownership="none">
37895           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
37896           <type name="gdouble" c:type="gdouble"/>
37897         </return-value>
37898       </method>
37899       <method name="get_show_text"
37900               c:identifier="gtk_progress_bar_get_show_text"
37901               version="3.0">
37902         <doc xml:whitespace="preserve">Gets the value of the #GtkProgressBar::show-text property.
37903 See gtk_progress_bar_set_show_text().</doc>
37904         <return-value transfer-ownership="none">
37905           <doc xml:whitespace="preserve">%TRUE if text is shown in the progress bar</doc>
37906           <type name="gboolean" c:type="gboolean"/>
37907         </return-value>
37908       </method>
37909       <method name="get_text" c:identifier="gtk_progress_bar_get_text">
37910         <doc xml:whitespace="preserve">Retrieves the text displayed superimposed on the progress bar,
37911 if any, otherwise %NULL. The return value is a reference
37912 to the text, not a copy of it, so will become invalid
37913 if you change the text in the progress bar.
37914 and should not be modified or freed.</doc>
37915         <return-value transfer-ownership="none">
37916           <doc xml:whitespace="preserve">text, or %NULL; this string is owned by the widget</doc>
37917           <type name="utf8" c:type="gchar*"/>
37918         </return-value>
37919       </method>
37920       <method name="pulse" c:identifier="gtk_progress_bar_pulse">
37921         <doc xml:whitespace="preserve">Indicates that some progress is made, but you don't know how much.
37922 Causes the progress bar to enter "activity mode," where a block
37923 bounces back and forth. Each call to gtk_progress_bar_pulse()
37924 causes the block to move by a little bit (the amount of movement
37925 per pulse is determined by gtk_progress_bar_set_pulse_step()).</doc>
37926         <return-value transfer-ownership="none">
37927           <type name="none" c:type="void"/>
37928         </return-value>
37929       </method>
37930       <method name="set_ellipsize"
37931               c:identifier="gtk_progress_bar_set_ellipsize"
37932               version="2.6">
37933         <doc xml:whitespace="preserve">if there is not enough space to render the entire string.</doc>
37934         <return-value transfer-ownership="none">
37935           <type name="none" c:type="void"/>
37936         </return-value>
37937         <parameters>
37938           <parameter name="mode" transfer-ownership="none">
37939             <doc xml:whitespace="preserve">a #PangoEllipsizeMode</doc>
37940             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
37941           </parameter>
37942         </parameters>
37943       </method>
37944       <method name="set_fraction" c:identifier="gtk_progress_bar_set_fraction">
37945         <doc xml:whitespace="preserve">Causes the progress bar to "fill in" the given fraction
37946 of the bar. The fraction should be between 0.0 and 1.0,
37947 inclusive.</doc>
37948         <return-value transfer-ownership="none">
37949           <type name="none" c:type="void"/>
37950         </return-value>
37951         <parameters>
37952           <parameter name="fraction" transfer-ownership="none">
37953             <doc xml:whitespace="preserve">fraction of the task that's been completed</doc>
37954             <type name="gdouble" c:type="gdouble"/>
37955           </parameter>
37956         </parameters>
37957       </method>
37958       <method name="set_inverted" c:identifier="gtk_progress_bar_set_inverted">
37959         <doc xml:whitespace="preserve">Progress bars normally grow from top to bottom or left to right.
37960 Inverted progress bars grow in the opposite direction.</doc>
37961         <return-value transfer-ownership="none">
37962           <type name="none" c:type="void"/>
37963         </return-value>
37964         <parameters>
37965           <parameter name="inverted" transfer-ownership="none">
37966             <doc xml:whitespace="preserve">%TRUE to invert the progress bar</doc>
37967             <type name="gboolean" c:type="gboolean"/>
37968           </parameter>
37969         </parameters>
37970       </method>
37971       <method name="set_pulse_step"
37972               c:identifier="gtk_progress_bar_set_pulse_step">
37973         <doc xml:whitespace="preserve">Sets the fraction of total progress bar length to move the
37974 bouncing block for each call to gtk_progress_bar_pulse().</doc>
37975         <return-value transfer-ownership="none">
37976           <type name="none" c:type="void"/>
37977         </return-value>
37978         <parameters>
37979           <parameter name="fraction" transfer-ownership="none">
37980             <doc xml:whitespace="preserve">fraction between 0.0 and 1.0</doc>
37981             <type name="gdouble" c:type="gdouble"/>
37982           </parameter>
37983         </parameters>
37984       </method>
37985       <method name="set_show_text"
37986               c:identifier="gtk_progress_bar_set_show_text"
37987               version="3.0">
37988         <doc xml:whitespace="preserve">Sets whether the progressbar will show text superimposed
37989 over the bar. The shown text is either the value of
37990 the #GtkProgressBar::text property or, if that is %NULL,
37991 the #GtkProgressBar::fraction value, as a percentage.</doc>
37992         <return-value transfer-ownership="none">
37993           <type name="none" c:type="void"/>
37994         </return-value>
37995         <parameters>
37996           <parameter name="show_text" transfer-ownership="none">
37997             <doc xml:whitespace="preserve">whether to show superimposed text</doc>
37998             <type name="gboolean" c:type="gboolean"/>
37999           </parameter>
38000         </parameters>
38001       </method>
38002       <method name="set_text" c:identifier="gtk_progress_bar_set_text">
38003         <doc xml:whitespace="preserve">Causes the given @text to appear superimposed on the progress bar.</doc>
38004         <return-value transfer-ownership="none">
38005           <type name="none" c:type="void"/>
38006         </return-value>
38007         <parameters>
38008           <parameter name="text" transfer-ownership="none" allow-none="1">
38009             <doc xml:whitespace="preserve">a UTF-8 string, or %NULL</doc>
38010             <type name="utf8" c:type="gchar*"/>
38011           </parameter>
38012         </parameters>
38013       </method>
38014       <property name="ellipsize"
38015                 version="2.6"
38016                 writable="1"
38017                 transfer-ownership="none">
38018         <doc xml:whitespace="preserve">The preferred place to ellipsize the string, if the progressbar does
38019 not have enough room to display the entire string, specified as a
38020 #PangoEllisizeMode.
38021 Note that setting this property to a value other than
38022 %PANGO_ELLIPSIZE_NONE has the side-effect that the progressbar requests
38023 only enough space to display the ellipsis "...". Another means to set a
38024 progressbar's width is gtk_widget_set_size_request().</doc>
38025         <type name="Pango.EllipsizeMode"/>
38026       </property>
38027       <property name="fraction" writable="1" transfer-ownership="none">
38028         <type name="gdouble"/>
38029       </property>
38030       <property name="inverted" writable="1" transfer-ownership="none">
38031         <type name="gboolean"/>
38032       </property>
38033       <property name="pulse-step" writable="1" transfer-ownership="none">
38034         <type name="gdouble"/>
38035       </property>
38036       <property name="show-text" writable="1" transfer-ownership="none">
38037         <type name="gboolean"/>
38038       </property>
38039       <property name="text" writable="1" transfer-ownership="none">
38040         <type name="utf8"/>
38041       </property>
38042       <field name="parent">
38043         <type name="Widget" c:type="GtkWidget"/>
38044       </field>
38045       <field name="priv" readable="0" private="1">
38046         <type name="ProgressBarPrivate" c:type="GtkProgressBarPrivate*"/>
38047       </field>
38048     </class>
38049     <record name="ProgressBarClass"
38050             c:type="GtkProgressBarClass"
38051             glib:is-gtype-struct-for="ProgressBar">
38052       <field name="parent_class">
38053         <type name="WidgetClass" c:type="GtkWidgetClass"/>
38054       </field>
38055       <field name="_gtk_reserved1" introspectable="0">
38056         <callback name="_gtk_reserved1">
38057           <return-value transfer-ownership="none">
38058             <type name="none" c:type="void"/>
38059           </return-value>
38060         </callback>
38061       </field>
38062       <field name="_gtk_reserved2" introspectable="0">
38063         <callback name="_gtk_reserved2">
38064           <return-value transfer-ownership="none">
38065             <type name="none" c:type="void"/>
38066           </return-value>
38067         </callback>
38068       </field>
38069       <field name="_gtk_reserved3" introspectable="0">
38070         <callback name="_gtk_reserved3">
38071           <return-value transfer-ownership="none">
38072             <type name="none" c:type="void"/>
38073           </return-value>
38074         </callback>
38075       </field>
38076       <field name="_gtk_reserved4" introspectable="0">
38077         <callback name="_gtk_reserved4">
38078           <return-value transfer-ownership="none">
38079             <type name="none" c:type="void"/>
38080           </return-value>
38081         </callback>
38082       </field>
38083       <field name="_gtk_reserved5" introspectable="0">
38084         <callback name="_gtk_reserved5">
38085           <return-value transfer-ownership="none">
38086             <type name="none" c:type="void"/>
38087           </return-value>
38088         </callback>
38089       </field>
38090       <field name="_gtk_reserved6" introspectable="0">
38091         <callback name="_gtk_reserved6">
38092           <return-value transfer-ownership="none">
38093             <type name="none" c:type="void"/>
38094           </return-value>
38095         </callback>
38096       </field>
38097       <field name="_gtk_reserved7" introspectable="0">
38098         <callback name="_gtk_reserved7">
38099           <return-value transfer-ownership="none">
38100             <type name="none" c:type="void"/>
38101           </return-value>
38102         </callback>
38103       </field>
38104       <field name="_gtk_reserved8" introspectable="0">
38105         <callback name="_gtk_reserved8">
38106           <return-value transfer-ownership="none">
38107             <type name="none" c:type="void"/>
38108           </return-value>
38109         </callback>
38110       </field>
38111     </record>
38112     <record name="ProgressBarPrivate"
38113             c:type="GtkProgressBarPrivate"
38114             disguised="1">
38115     </record>
38116     <class name="RadioAction"
38117            c:symbol-prefix="radio_action"
38118            c:type="GtkRadioAction"
38119            parent="ToggleAction"
38120            glib:type-name="GtkRadioAction"
38121            glib:get-type="gtk_radio_action_get_type"
38122            glib:type-struct="RadioActionClass">
38123       <implements name="Buildable"/>
38124       <constructor name="new"
38125                    c:identifier="gtk_radio_action_new"
38126                    version="2.4">
38127         <doc xml:whitespace="preserve">Creates a new #GtkRadioAction object. To add the action to
38128 a #GtkActionGroup and set the accelerator for the action,
38129 call gtk_action_group_add_action_with_accel().</doc>
38130         <return-value transfer-ownership="full">
38131           <doc xml:whitespace="preserve">a new #GtkRadioAction</doc>
38132           <type name="RadioAction" c:type="GtkRadioAction*"/>
38133         </return-value>
38134         <parameters>
38135           <parameter name="name" transfer-ownership="none">
38136             <doc xml:whitespace="preserve">A unique name for the action</doc>
38137             <type name="utf8" c:type="gchar*"/>
38138           </parameter>
38139           <parameter name="label" transfer-ownership="none" allow-none="1">
38140             <doc xml:whitespace="preserve">The label displayed in menu items and on buttons, or %NULL</doc>
38141             <type name="utf8" c:type="gchar*"/>
38142           </parameter>
38143           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
38144             <doc xml:whitespace="preserve">A tooltip for this action, or %NULL</doc>
38145             <type name="utf8" c:type="gchar*"/>
38146           </parameter>
38147           <parameter name="stock_id" transfer-ownership="none">
38148             <doc xml:whitespace="preserve">The stock icon to display in widgets representing this action, or %NULL</doc>
38149             <type name="utf8" c:type="gchar*"/>
38150           </parameter>
38151           <parameter name="value" transfer-ownership="none">
38152             <doc xml:whitespace="preserve">The value which gtk_radio_action_get_current_value() should return if this action is selected.</doc>
38153             <type name="gint" c:type="gint"/>
38154           </parameter>
38155         </parameters>
38156       </constructor>
38157       <method name="get_current_value"
38158               c:identifier="gtk_radio_action_get_current_value"
38159               version="2.4">
38160         <doc xml:whitespace="preserve">Obtains the value property of the currently active member of 
38161 the group to which @action belongs.</doc>
38162         <return-value transfer-ownership="none">
38163           <doc xml:whitespace="preserve">The value of the currently active group member</doc>
38164           <type name="gint" c:type="gint"/>
38165         </return-value>
38166       </method>
38167       <method name="get_group"
38168               c:identifier="gtk_radio_action_get_group"
38169               version="2.4">
38170         <doc xml:whitespace="preserve">Returns the list representing the radio group for this object.
38171 Note that the returned list is only valid until the next change
38172 to the group. 
38173 A common way to set up a group of radio group is the following:
38174 |[
38175 GSList *group = NULL;
38176 GtkRadioAction *action;
38177 while (/&amp;ast; more actions to add &amp;ast;/)
38178 {
38179 action = gtk_radio_action_new (...);
38180 gtk_radio_action_set_group (action, group);
38181 group = gtk_radio_action_get_group (action);
38182 }
38183 ]|</doc>
38184         <return-value transfer-ownership="none">
38185           <doc xml:whitespace="preserve">the list representing the radio group for this object</doc>
38186           <type name="GLib.SList" c:type="GSList*">
38187             <type name="RadioAction"/>
38188           </type>
38189         </return-value>
38190       </method>
38191       <method name="join_group"
38192               c:identifier="gtk_radio_action_join_group"
38193               version="3.0">
38194         <doc xml:whitespace="preserve">Joins a radio action object to the group of another radio action object.
38195 Use this in language bindings instead of the gtk_radio_action_get_group() 
38196 and gtk_radio_action_set_group() methods
38197 A common way to set up a group of radio actions is the following:
38198 |[
38199 GtkRadioAction *action;
38200 GtkRadioAction *last_action;
38201 while (/&amp;ast; more actions to add &amp;ast;/)
38202 {
38203 action = gtk_radio_action_new (...);
38204 gtk_radio_action_join_group (action, last_action);
38205 last_action = action;
38206 }
38207 ]|</doc>
38208         <return-value transfer-ownership="none">
38209           <type name="none" c:type="void"/>
38210         </return-value>
38211         <parameters>
38212           <parameter name="group_source"
38213                      transfer-ownership="none"
38214                      allow-none="1">
38215             <doc xml:whitespace="preserve">a radio action object whos group we are joining, or %NULL to remove the radio action from its group</doc>
38216             <type name="RadioAction" c:type="GtkRadioAction*"/>
38217           </parameter>
38218         </parameters>
38219       </method>
38220       <method name="set_current_value"
38221               c:identifier="gtk_radio_action_set_current_value"
38222               version="2.10">
38223         <doc xml:whitespace="preserve">Sets the currently active group member to the member with value
38224 property @current_value.</doc>
38225         <return-value transfer-ownership="none">
38226           <type name="none" c:type="void"/>
38227         </return-value>
38228         <parameters>
38229           <parameter name="current_value" transfer-ownership="none">
38230             <doc xml:whitespace="preserve">the new value</doc>
38231             <type name="gint" c:type="gint"/>
38232           </parameter>
38233         </parameters>
38234       </method>
38235       <method name="set_group"
38236               c:identifier="gtk_radio_action_set_group"
38237               version="2.4">
38238         <doc xml:whitespace="preserve">Sets the radio group for the radio action object.</doc>
38239         <return-value transfer-ownership="none">
38240           <type name="none" c:type="void"/>
38241         </return-value>
38242         <parameters>
38243           <parameter name="group" transfer-ownership="none">
38244             <doc xml:whitespace="preserve">a list representing a radio group</doc>
38245             <type name="GLib.SList" c:type="GSList*">
38246               <type name="RadioAction"/>
38247             </type>
38248           </parameter>
38249         </parameters>
38250       </method>
38251       <property name="current-value"
38252                 version="2.10"
38253                 writable="1"
38254                 transfer-ownership="none">
38255         <doc xml:whitespace="preserve">The value property of the currently active member of the group to which
38256 this action belongs.</doc>
38257         <type name="gint"/>
38258       </property>
38259       <property name="group"
38260                 version="2.4"
38261                 readable="0"
38262                 writable="1"
38263                 transfer-ownership="none">
38264         <doc xml:whitespace="preserve">Sets a new group for a radio action.</doc>
38265         <type name="RadioAction"/>
38266       </property>
38267       <property name="value"
38268                 version="2.4"
38269                 writable="1"
38270                 transfer-ownership="none">
38271         <doc xml:whitespace="preserve">The value is an arbitrary integer which can be used as a
38272 convenient way to determine which action in the group is 
38273 currently active in an ::activate or ::changed signal handler.
38274 See gtk_radio_action_get_current_value() and #GtkRadioActionEntry
38275 for convenient ways to get and set this property.</doc>
38276         <type name="gint"/>
38277       </property>
38278       <field name="parent">
38279         <type name="ToggleAction" c:type="GtkToggleAction"/>
38280       </field>
38281       <field name="private_data">
38282         <type name="RadioActionPrivate" c:type="GtkRadioActionPrivate*"/>
38283       </field>
38284       <glib:signal name="changed" version="2.4">
38285         <doc xml:whitespace="preserve">The ::changed signal is emitted on every member of a radio group when the
38286 active member is changed. The signal gets emitted after the ::activate signals
38287 for the previous and current active members.</doc>
38288         <return-value transfer-ownership="none">
38289           <type name="none"/>
38290         </return-value>
38291         <parameters>
38292           <parameter name="object" transfer-ownership="none">
38293             <doc xml:whitespace="preserve">the member of @action&lt;!-- --&gt;s group which has just been activated</doc>
38294             <type name="RadioAction"/>
38295           </parameter>
38296         </parameters>
38297       </glib:signal>
38298     </class>
38299     <record name="RadioActionClass"
38300             c:type="GtkRadioActionClass"
38301             glib:is-gtype-struct-for="RadioAction">
38302       <field name="parent_class">
38303         <type name="ToggleActionClass" c:type="GtkToggleActionClass"/>
38304       </field>
38305       <field name="changed">
38306         <callback name="changed">
38307           <return-value transfer-ownership="none">
38308             <type name="none" c:type="void"/>
38309           </return-value>
38310           <parameters>
38311             <parameter name="action" transfer-ownership="none">
38312               <type name="RadioAction" c:type="GtkRadioAction*"/>
38313             </parameter>
38314             <parameter name="current" transfer-ownership="none">
38315               <type name="RadioAction" c:type="GtkRadioAction*"/>
38316             </parameter>
38317           </parameters>
38318         </callback>
38319       </field>
38320       <field name="_gtk_reserved1" introspectable="0">
38321         <callback name="_gtk_reserved1">
38322           <return-value transfer-ownership="none">
38323             <type name="none" c:type="void"/>
38324           </return-value>
38325         </callback>
38326       </field>
38327       <field name="_gtk_reserved2" introspectable="0">
38328         <callback name="_gtk_reserved2">
38329           <return-value transfer-ownership="none">
38330             <type name="none" c:type="void"/>
38331           </return-value>
38332         </callback>
38333       </field>
38334       <field name="_gtk_reserved3" introspectable="0">
38335         <callback name="_gtk_reserved3">
38336           <return-value transfer-ownership="none">
38337             <type name="none" c:type="void"/>
38338           </return-value>
38339         </callback>
38340       </field>
38341       <field name="_gtk_reserved4" introspectable="0">
38342         <callback name="_gtk_reserved4">
38343           <return-value transfer-ownership="none">
38344             <type name="none" c:type="void"/>
38345           </return-value>
38346         </callback>
38347       </field>
38348     </record>
38349     <record name="RadioActionEntry" c:type="GtkRadioActionEntry">
38350       <doc xml:whitespace="preserve">#GtkRadioActionEntry structs are used with
38351 gtk_action_group_add_radio_actions() to construct groups of radio actions.</doc>
38352       <field name="name" writable="1">
38353         <type name="utf8" c:type="gchar*"/>
38354       </field>
38355       <field name="stock_id" writable="1">
38356         <type name="utf8" c:type="gchar*"/>
38357       </field>
38358       <field name="label" writable="1">
38359         <type name="utf8" c:type="gchar*"/>
38360       </field>
38361       <field name="accelerator" writable="1">
38362         <type name="utf8" c:type="gchar*"/>
38363       </field>
38364       <field name="tooltip" writable="1">
38365         <type name="utf8" c:type="gchar*"/>
38366       </field>
38367       <field name="value" writable="1">
38368         <type name="gint" c:type="gint"/>
38369       </field>
38370     </record>
38371     <record name="RadioActionPrivate"
38372             c:type="GtkRadioActionPrivate"
38373             disguised="1">
38374     </record>
38375     <class name="RadioButton"
38376            c:symbol-prefix="radio_button"
38377            c:type="GtkRadioButton"
38378            parent="CheckButton"
38379            glib:type-name="GtkRadioButton"
38380            glib:get-type="gtk_radio_button_get_type"
38381            glib:type-struct="RadioButtonClass">
38382       <implements name="Atk.ImplementorIface"/>
38383       <implements name="Activatable"/>
38384       <implements name="Buildable"/>
38385       <implements name="SizeRequest"/>
38386       <constructor name="new" c:identifier="gtk_radio_button_new">
38387         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton. To be of any practical value, a widget should
38388 then be packed into the radio button.</doc>
38389         <return-value transfer-ownership="none">
38390           <doc xml:whitespace="preserve">a new radio button</doc>
38391           <type name="Widget" c:type="GtkWidget*"/>
38392         </return-value>
38393         <parameters>
38394           <parameter name="group" transfer-ownership="none">
38395             <doc xml:whitespace="preserve">an existing radio button group, or %NULL if you are creating a new group.</doc>
38396             <type name="GLib.SList" c:type="GSList*">
38397               <type name="gpointer" c:type="gpointer"/>
38398             </type>
38399           </parameter>
38400         </parameters>
38401       </constructor>
38402       <constructor name="new_with_label"
38403                    c:identifier="gtk_radio_button_new_with_label">
38404         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton with a text label.</doc>
38405         <return-value transfer-ownership="full">
38406           <doc xml:whitespace="preserve">a new radio button.</doc>
38407           <type name="Widget" c:type="GtkWidget*"/>
38408         </return-value>
38409         <parameters>
38410           <parameter name="group" transfer-ownership="none">
38411             <doc xml:whitespace="preserve">an existing radio button group, or %NULL if you are creating a new group.</doc>
38412             <type name="GLib.SList" c:type="GSList*">
38413               <type name="gpointer" c:type="gpointer"/>
38414             </type>
38415           </parameter>
38416           <parameter name="label" transfer-ownership="none">
38417             <doc xml:whitespace="preserve">the text label to display next to the radio button.</doc>
38418             <type name="utf8" c:type="gchar*"/>
38419           </parameter>
38420         </parameters>
38421       </constructor>
38422       <constructor name="new_with_mnemonic"
38423                    c:identifier="gtk_radio_button_new_with_mnemonic">
38424         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton containing a label, adding it to the same
38425 group as @group. The label will be created using
38426 gtk_label_new_with_mnemonic(), so underscores in @label indicate the
38427 mnemonic for the button.</doc>
38428         <return-value transfer-ownership="full">
38429           <doc xml:whitespace="preserve">a new #GtkRadioButton</doc>
38430           <type name="Widget" c:type="GtkWidget*"/>
38431         </return-value>
38432         <parameters>
38433           <parameter name="group" transfer-ownership="none">
38434             <doc xml:whitespace="preserve">the radio button group</doc>
38435             <type name="GLib.SList" c:type="GSList*">
38436               <type name="gpointer" c:type="gpointer"/>
38437             </type>
38438           </parameter>
38439           <parameter name="label" transfer-ownership="none">
38440             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
38441             <type name="utf8" c:type="gchar*"/>
38442           </parameter>
38443         </parameters>
38444       </constructor>
38445       <method name="get_group" c:identifier="gtk_radio_button_get_group">
38446         <doc xml:whitespace="preserve">Retrieves the group assigned to a radio button.
38447 containing all the radio buttons in the same group
38448 as @radio_button. The returned list is owned by the radio button
38449 and must not be modified or freed.</doc>
38450         <return-value transfer-ownership="none">
38451           <doc xml:whitespace="preserve">a linked list</doc>
38452           <type name="GLib.SList" c:type="GSList*">
38453             <type name="RadioButton"/>
38454           </type>
38455         </return-value>
38456       </method>
38457       <method name="join_group"
38458               c:identifier="gtk_radio_button_join_group"
38459               version="3.0">
38460         <doc xml:whitespace="preserve">Joins a #GtkRadioButton object to the group of another #GtkRadioButton object
38461 Use this in language bindings instead of the gtk_radio_button_get_group() 
38462 and gtk_radio_button_set_group() methods
38463 A common way to set up a group of radio buttons is the following:
38464 |[
38465 GtkRadioButton *radio_button;
38466 GtkRadioButton *last_button;
38467 while (/&amp;ast; more buttons to add &amp;ast;/)
38468 {
38469 radio_button = gtk_radio_button_new (...);
38470 gtk_radio_button_join_group (radio_button, last_button);
38471 last_button = radio_button;
38472 }
38473 ]|</doc>
38474         <return-value transfer-ownership="none">
38475           <type name="none" c:type="void"/>
38476         </return-value>
38477         <parameters>
38478           <parameter name="group_source"
38479                      transfer-ownership="none"
38480                      allow-none="1">
38481             <doc xml:whitespace="preserve">a radio button object whos group we are joining, or %NULL to remove the radio button from its group</doc>
38482             <type name="RadioButton" c:type="GtkRadioButton*"/>
38483           </parameter>
38484         </parameters>
38485       </method>
38486       <method name="new_from_widget"
38487               c:identifier="gtk_radio_button_new_from_widget">
38488         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton, adding it to the same group as
38489 should be packed into the radio button.</doc>
38490         <return-value transfer-ownership="full">
38491           <doc xml:whitespace="preserve">a new radio button.</doc>
38492           <type name="Widget" c:type="GtkWidget*"/>
38493         </return-value>
38494       </method>
38495       <method name="new_with_label_from_widget"
38496               c:identifier="gtk_radio_button_new_with_label_from_widget">
38497         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton with a text label, adding it to
38498 the same group as @radio_group_member.</doc>
38499         <return-value transfer-ownership="none">
38500           <doc xml:whitespace="preserve">a new radio button.</doc>
38501           <type name="Widget" c:type="GtkWidget*"/>
38502         </return-value>
38503         <parameters>
38504           <parameter name="label" transfer-ownership="none">
38505             <doc xml:whitespace="preserve">a text string to display next to the radio button.</doc>
38506             <type name="utf8" c:type="gchar*"/>
38507           </parameter>
38508         </parameters>
38509       </method>
38510       <method name="new_with_mnemonic_from_widget"
38511               c:identifier="gtk_radio_button_new_with_mnemonic_from_widget">
38512         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton containing a label. The label
38513 will be created using gtk_label_new_with_mnemonic(), so underscores
38514 in @label indicate the mnemonic for the button.</doc>
38515         <return-value transfer-ownership="full">
38516           <doc xml:whitespace="preserve">a new #GtkRadioButton</doc>
38517           <type name="Widget" c:type="GtkWidget*"/>
38518         </return-value>
38519         <parameters>
38520           <parameter name="label" transfer-ownership="none">
38521             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
38522             <type name="utf8" c:type="gchar*"/>
38523           </parameter>
38524         </parameters>
38525       </method>
38526       <method name="set_group" c:identifier="gtk_radio_button_set_group">
38527         <doc xml:whitespace="preserve">Sets a #GtkRadioButton's group. It should be noted that this does not change
38528 the layout of your interface in any way, so if you are changing the group,
38529 it is likely you will need to re-arrange the user interface to reflect these
38530 changes.</doc>
38531         <return-value transfer-ownership="none">
38532           <type name="none" c:type="void"/>
38533         </return-value>
38534         <parameters>
38535           <parameter name="group" transfer-ownership="none">
38536             <doc xml:whitespace="preserve">an existing radio button group, such as one returned from gtk_radio_button_get_group().</doc>
38537             <type name="GLib.SList" c:type="GSList*">
38538               <type name="RadioButton"/>
38539             </type>
38540           </parameter>
38541         </parameters>
38542       </method>
38543       <property name="group"
38544                 readable="0"
38545                 writable="1"
38546                 transfer-ownership="none">
38547         <doc xml:whitespace="preserve">Sets a new group for a radio button.</doc>
38548         <type name="RadioButton"/>
38549       </property>
38550       <field name="check_button">
38551         <type name="CheckButton" c:type="GtkCheckButton"/>
38552       </field>
38553       <field name="priv" readable="0" private="1">
38554         <type name="RadioButtonPrivate" c:type="GtkRadioButtonPrivate*"/>
38555       </field>
38556       <glib:signal name="group-changed" version="2.4">
38557         <doc xml:whitespace="preserve">Emitted when the group of radio buttons that a radio button belongs
38558 to changes. This is emitted when a radio button switches from
38559 being alone to being part of a group of 2 or more buttons, or
38560 vice-versa, and when a button is moved from one group of 2 or
38561 more buttons to a different one, but not when the composition
38562 of the group that a button belongs to changes.</doc>
38563         <return-value transfer-ownership="none">
38564           <type name="none"/>
38565         </return-value>
38566       </glib:signal>
38567     </class>
38568     <record name="RadioButtonClass"
38569             c:type="GtkRadioButtonClass"
38570             glib:is-gtype-struct-for="RadioButton">
38571       <field name="parent_class">
38572         <type name="CheckButtonClass" c:type="GtkCheckButtonClass"/>
38573       </field>
38574       <field name="group_changed">
38575         <callback name="group_changed">
38576           <return-value transfer-ownership="none">
38577             <type name="none" c:type="void"/>
38578           </return-value>
38579           <parameters>
38580             <parameter name="radio_button" transfer-ownership="none">
38581               <type name="RadioButton" c:type="GtkRadioButton*"/>
38582             </parameter>
38583           </parameters>
38584         </callback>
38585       </field>
38586       <field name="_gtk_reserved2" introspectable="0">
38587         <callback name="_gtk_reserved2">
38588           <return-value transfer-ownership="none">
38589             <type name="none" c:type="void"/>
38590           </return-value>
38591         </callback>
38592       </field>
38593       <field name="_gtk_reserved3" introspectable="0">
38594         <callback name="_gtk_reserved3">
38595           <return-value transfer-ownership="none">
38596             <type name="none" c:type="void"/>
38597           </return-value>
38598         </callback>
38599       </field>
38600       <field name="_gtk_reserved4" introspectable="0">
38601         <callback name="_gtk_reserved4">
38602           <return-value transfer-ownership="none">
38603             <type name="none" c:type="void"/>
38604           </return-value>
38605         </callback>
38606       </field>
38607     </record>
38608     <record name="RadioButtonPrivate"
38609             c:type="GtkRadioButtonPrivate"
38610             disguised="1">
38611     </record>
38612     <class name="RadioMenuItem"
38613            c:symbol-prefix="radio_menu_item"
38614            c:type="GtkRadioMenuItem"
38615            parent="CheckMenuItem"
38616            glib:type-name="GtkRadioMenuItem"
38617            glib:get-type="gtk_radio_menu_item_get_type"
38618            glib:type-struct="RadioMenuItemClass">
38619       <implements name="Atk.ImplementorIface"/>
38620       <implements name="Activatable"/>
38621       <implements name="Buildable"/>
38622       <implements name="SizeRequest"/>
38623       <constructor name="new" c:identifier="gtk_radio_menu_item_new">
38624         <return-value transfer-ownership="none">
38625           <type name="Widget" c:type="GtkWidget*"/>
38626         </return-value>
38627         <parameters>
38628           <parameter name="group" transfer-ownership="none">
38629             <type name="GLib.SList" c:type="GSList*">
38630               <type name="gpointer" c:type="gpointer"/>
38631             </type>
38632           </parameter>
38633         </parameters>
38634       </constructor>
38635       <constructor name="new_with_label"
38636                    c:identifier="gtk_radio_menu_item_new_with_label">
38637         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem whose child is a simple #GtkLabel.</doc>
38638         <return-value transfer-ownership="none">
38639           <doc xml:whitespace="preserve">A new #GtkRadioMenuItem</doc>
38640           <type name="Widget" c:type="GtkWidget*"/>
38641         </return-value>
38642         <parameters>
38643           <parameter name="group" transfer-ownership="full">
38644             <type name="GLib.SList" c:type="GSList*">
38645               <type name="RadioMenuItem"/>
38646             </type>
38647           </parameter>
38648           <parameter name="label" transfer-ownership="none">
38649             <doc xml:whitespace="preserve">the text for the label</doc>
38650             <type name="utf8" c:type="gchar*"/>
38651           </parameter>
38652         </parameters>
38653       </constructor>
38654       <constructor name="new_with_mnemonic"
38655                    c:identifier="gtk_radio_menu_item_new_with_mnemonic">
38656         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem containing a label. The label
38657 will be created using gtk_label_new_with_mnemonic(), so underscores
38658 in @label indicate the mnemonic for the menu item.</doc>
38659         <return-value transfer-ownership="none">
38660           <doc xml:whitespace="preserve">a new #GtkRadioMenuItem</doc>
38661           <type name="Widget" c:type="GtkWidget*"/>
38662         </return-value>
38663         <parameters>
38664           <parameter name="group" transfer-ownership="none">
38665             <doc xml:whitespace="preserve">group the radio menu item is inside</doc>
38666             <type name="GLib.SList" c:type="GSList*">
38667               <type name="gpointer" c:type="gpointer"/>
38668             </type>
38669           </parameter>
38670           <parameter name="label" transfer-ownership="none">
38671             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
38672             <type name="utf8" c:type="gchar*"/>
38673           </parameter>
38674         </parameters>
38675       </constructor>
38676       <method name="get_group" c:identifier="gtk_radio_menu_item_get_group">
38677         <doc xml:whitespace="preserve">Returns the group to which the radio menu item belongs, as a #GList of
38678 #GtkRadioMenuItem. The list belongs to GTK+ and should not be freed.</doc>
38679         <return-value transfer-ownership="none">
38680           <doc xml:whitespace="preserve">the group of @radio_menu_item</doc>
38681           <type name="GLib.SList" c:type="GSList*">
38682             <type name="gpointer" c:type="gpointer"/>
38683           </type>
38684         </return-value>
38685       </method>
38686       <method name="new_from_widget"
38687               c:identifier="gtk_radio_menu_item_new_from_widget"
38688               version="2.4">
38689         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem adding it to the same group as @group.</doc>
38690         <return-value transfer-ownership="full">
38691           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
38692           <type name="Widget" c:type="GtkWidget*"/>
38693         </return-value>
38694       </method>
38695       <method name="new_with_label_from_widget"
38696               c:identifier="gtk_radio_menu_item_new_with_label_from_widget"
38697               version="2.4">
38698         <doc xml:whitespace="preserve">Creates a new GtkRadioMenuItem whose child is a simple GtkLabel.
38699 The new #GtkRadioMenuItem is added to the same group as @group.</doc>
38700         <return-value transfer-ownership="full">
38701           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
38702           <type name="Widget" c:type="GtkWidget*"/>
38703         </return-value>
38704         <parameters>
38705           <parameter name="label" transfer-ownership="none">
38706             <doc xml:whitespace="preserve">the text for the label</doc>
38707             <type name="utf8" c:type="gchar*"/>
38708           </parameter>
38709         </parameters>
38710       </method>
38711       <method name="new_with_mnemonic_from_widget"
38712               c:identifier="gtk_radio_menu_item_new_with_mnemonic_from_widget"
38713               version="2.4">
38714         <doc xml:whitespace="preserve">Creates a new GtkRadioMenuItem containing a label. The label will be
38715 created using gtk_label_new_with_mnemonic(), so underscores in label
38716 indicate the mnemonic for the menu item.
38717 The new #GtkRadioMenuItem is added to the same group as @group.</doc>
38718         <return-value transfer-ownership="full">
38719           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
38720           <type name="Widget" c:type="GtkWidget*"/>
38721         </return-value>
38722         <parameters>
38723           <parameter name="label" transfer-ownership="none">
38724             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
38725             <type name="utf8" c:type="gchar*"/>
38726           </parameter>
38727         </parameters>
38728       </method>
38729       <method name="set_group" c:identifier="gtk_radio_menu_item_set_group">
38730         <return-value transfer-ownership="none">
38731           <type name="none" c:type="void"/>
38732         </return-value>
38733         <parameters>
38734           <parameter name="group" transfer-ownership="none">
38735             <type name="GLib.SList" c:type="GSList*">
38736               <type name="gpointer" c:type="gpointer"/>
38737             </type>
38738           </parameter>
38739         </parameters>
38740       </method>
38741       <property name="group"
38742                 version="2.8"
38743                 readable="0"
38744                 writable="1"
38745                 transfer-ownership="none">
38746         <doc xml:whitespace="preserve">The radio menu item whose group this widget belongs to.</doc>
38747         <type name="RadioMenuItem"/>
38748       </property>
38749       <field name="check_menu_item">
38750         <type name="CheckMenuItem" c:type="GtkCheckMenuItem"/>
38751       </field>
38752       <field name="priv" readable="0" private="1">
38753         <type name="RadioMenuItemPrivate" c:type="GtkRadioMenuItemPrivate*"/>
38754       </field>
38755       <glib:signal name="group-changed">
38756         <return-value transfer-ownership="none">
38757           <type name="none"/>
38758         </return-value>
38759       </glib:signal>
38760     </class>
38761     <record name="RadioMenuItemClass"
38762             c:type="GtkRadioMenuItemClass"
38763             glib:is-gtype-struct-for="RadioMenuItem">
38764       <field name="parent_class">
38765         <type name="CheckMenuItemClass" c:type="GtkCheckMenuItemClass"/>
38766       </field>
38767       <field name="group_changed">
38768         <callback name="group_changed">
38769           <return-value transfer-ownership="none">
38770             <type name="none" c:type="void"/>
38771           </return-value>
38772           <parameters>
38773             <parameter name="radio_menu_item" transfer-ownership="none">
38774               <type name="RadioMenuItem" c:type="GtkRadioMenuItem*"/>
38775             </parameter>
38776           </parameters>
38777         </callback>
38778       </field>
38779       <field name="_gtk_reserved2" introspectable="0">
38780         <callback name="_gtk_reserved2">
38781           <return-value transfer-ownership="none">
38782             <type name="none" c:type="void"/>
38783           </return-value>
38784         </callback>
38785       </field>
38786       <field name="_gtk_reserved3" introspectable="0">
38787         <callback name="_gtk_reserved3">
38788           <return-value transfer-ownership="none">
38789             <type name="none" c:type="void"/>
38790           </return-value>
38791         </callback>
38792       </field>
38793       <field name="_gtk_reserved4" introspectable="0">
38794         <callback name="_gtk_reserved4">
38795           <return-value transfer-ownership="none">
38796             <type name="none" c:type="void"/>
38797           </return-value>
38798         </callback>
38799       </field>
38800     </record>
38801     <record name="RadioMenuItemPrivate"
38802             c:type="GtkRadioMenuItemPrivate"
38803             disguised="1">
38804     </record>
38805     <class name="RadioToolButton"
38806            c:symbol-prefix="radio_tool_button"
38807            c:type="GtkRadioToolButton"
38808            parent="ToggleToolButton"
38809            glib:type-name="GtkRadioToolButton"
38810            glib:get-type="gtk_radio_tool_button_get_type"
38811            glib:type-struct="RadioToolButtonClass">
38812       <implements name="Atk.ImplementorIface"/>
38813       <implements name="Activatable"/>
38814       <implements name="Buildable"/>
38815       <implements name="SizeRequest"/>
38816       <constructor name="new"
38817                    c:identifier="gtk_radio_tool_button_new"
38818                    version="2.4">
38819         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton, adding it to @group.</doc>
38820         <return-value transfer-ownership="none">
38821           <doc xml:whitespace="preserve">The new #GtkRadioToolButton</doc>
38822           <type name="ToolItem" c:type="GtkToolItem*"/>
38823         </return-value>
38824         <parameters>
38825           <parameter name="group" transfer-ownership="none" allow-none="1">
38826             <doc xml:whitespace="preserve">An existing radio button group, or %NULL if you are creating a new group</doc>
38827             <type name="GLib.SList" c:type="GSList*">
38828               <type name="gpointer" c:type="gpointer"/>
38829             </type>
38830           </parameter>
38831         </parameters>
38832       </constructor>
38833       <constructor name="new_from_stock"
38834                    c:identifier="gtk_radio_tool_button_new_from_stock"
38835                    version="2.4">
38836         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton, adding it to @group. 
38837 The new #GtkRadioToolButton will contain an icon and label from the
38838 stock item indicated by @stock_id.</doc>
38839         <return-value transfer-ownership="none">
38840           <doc xml:whitespace="preserve">The new #GtkRadioToolItem</doc>
38841           <type name="ToolItem" c:type="GtkToolItem*"/>
38842         </return-value>
38843         <parameters>
38844           <parameter name="group" transfer-ownership="none" allow-none="1">
38845             <doc xml:whitespace="preserve">an existing radio button group, or %NULL if you are creating a new group</doc>
38846             <type name="GLib.SList" c:type="GSList*">
38847               <type name="gpointer" c:type="gpointer"/>
38848             </type>
38849           </parameter>
38850           <parameter name="stock_id" transfer-ownership="none">
38851             <doc xml:whitespace="preserve">the name of a stock item</doc>
38852             <type name="utf8" c:type="gchar*"/>
38853           </parameter>
38854         </parameters>
38855       </constructor>
38856       <method name="get_group"
38857               c:identifier="gtk_radio_tool_button_get_group"
38858               version="2.4">
38859         <doc xml:whitespace="preserve">Returns the radio button group @button belongs to.</doc>
38860         <return-value transfer-ownership="none">
38861           <doc xml:whitespace="preserve">The group @button belongs to.</doc>
38862           <type name="GLib.SList" c:type="GSList*">
38863             <type name="gpointer" c:type="gpointer"/>
38864           </type>
38865         </return-value>
38866       </method>
38867       <method name="new_from_widget"
38868               c:identifier="gtk_radio_tool_button_new_from_widget"
38869               version="2.4">
38870         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton adding it to the same group as @gruup</doc>
38871         <return-value transfer-ownership="full">
38872           <doc xml:whitespace="preserve">The new #GtkRadioToolButton</doc>
38873           <type name="ToolItem" c:type="GtkToolItem*"/>
38874         </return-value>
38875       </method>
38876       <method name="new_with_stock_from_widget"
38877               c:identifier="gtk_radio_tool_button_new_with_stock_from_widget"
38878               version="2.4">
38879         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton adding it to the same group as @group.
38880 The new #GtkRadioToolButton will contain an icon and label from the
38881 stock item indicated by @stock_id.</doc>
38882         <return-value transfer-ownership="full">
38883           <doc xml:whitespace="preserve">A new #GtkRadioToolButton</doc>
38884           <type name="ToolItem" c:type="GtkToolItem*"/>
38885         </return-value>
38886         <parameters>
38887           <parameter name="stock_id" transfer-ownership="none">
38888             <doc xml:whitespace="preserve">the name of a stock item</doc>
38889             <type name="utf8" c:type="gchar*"/>
38890           </parameter>
38891         </parameters>
38892       </method>
38893       <method name="set_group"
38894               c:identifier="gtk_radio_tool_button_set_group"
38895               version="2.4">
38896         <doc xml:whitespace="preserve">Adds @button to @group, removing it from the group it belonged to before.</doc>
38897         <return-value transfer-ownership="none">
38898           <type name="none" c:type="void"/>
38899         </return-value>
38900         <parameters>
38901           <parameter name="group" transfer-ownership="none">
38902             <doc xml:whitespace="preserve">an existing radio button group</doc>
38903             <type name="GLib.SList" c:type="GSList*">
38904               <type name="gpointer" c:type="gpointer"/>
38905             </type>
38906           </parameter>
38907         </parameters>
38908       </method>
38909       <property name="group"
38910                 version="2.4"
38911                 readable="0"
38912                 writable="1"
38913                 transfer-ownership="none">
38914         <doc xml:whitespace="preserve">Sets a new group for a radio tool button.</doc>
38915         <type name="RadioToolButton"/>
38916       </property>
38917       <field name="parent">
38918         <type name="ToggleToolButton" c:type="GtkToggleToolButton"/>
38919       </field>
38920     </class>
38921     <record name="RadioToolButtonClass"
38922             c:type="GtkRadioToolButtonClass"
38923             glib:is-gtype-struct-for="RadioToolButton">
38924       <field name="parent_class">
38925         <type name="ToggleToolButtonClass" c:type="GtkToggleToolButtonClass"/>
38926       </field>
38927       <field name="_gtk_reserved1" introspectable="0">
38928         <callback name="_gtk_reserved1">
38929           <return-value transfer-ownership="none">
38930             <type name="none" c:type="void"/>
38931           </return-value>
38932         </callback>
38933       </field>
38934       <field name="_gtk_reserved2" introspectable="0">
38935         <callback name="_gtk_reserved2">
38936           <return-value transfer-ownership="none">
38937             <type name="none" c:type="void"/>
38938           </return-value>
38939         </callback>
38940       </field>
38941       <field name="_gtk_reserved3" introspectable="0">
38942         <callback name="_gtk_reserved3">
38943           <return-value transfer-ownership="none">
38944             <type name="none" c:type="void"/>
38945           </return-value>
38946         </callback>
38947       </field>
38948       <field name="_gtk_reserved4" introspectable="0">
38949         <callback name="_gtk_reserved4">
38950           <return-value transfer-ownership="none">
38951             <type name="none" c:type="void"/>
38952           </return-value>
38953         </callback>
38954       </field>
38955     </record>
38956     <class name="Range"
38957            c:symbol-prefix="range"
38958            c:type="GtkRange"
38959            parent="Widget"
38960            abstract="1"
38961            glib:type-name="GtkRange"
38962            glib:get-type="gtk_range_get_type"
38963            glib:type-struct="RangeClass">
38964       <implements name="Atk.ImplementorIface"/>
38965       <implements name="Buildable"/>
38966       <implements name="Orientable"/>
38967       <implements name="SizeRequest"/>
38968       <virtual-method name="get_range_border">
38969         <return-value transfer-ownership="none">
38970           <type name="none" c:type="void"/>
38971         </return-value>
38972         <parameters>
38973           <parameter name="border_" transfer-ownership="none">
38974             <type name="Border" c:type="GtkBorder*"/>
38975           </parameter>
38976         </parameters>
38977       </virtual-method>
38978       <method name="get_adjustment" c:identifier="gtk_range_get_adjustment">
38979         <doc xml:whitespace="preserve">Get the #GtkAdjustment which is the "model" object for #GtkRange.
38980 See gtk_range_set_adjustment() for details.
38981 The return value does not have a reference added, so should not
38982 be unreferenced.</doc>
38983         <return-value transfer-ownership="none">
38984           <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
38985           <type name="Adjustment" c:type="GtkAdjustment*"/>
38986         </return-value>
38987       </method>
38988       <method name="get_fill_level"
38989               c:identifier="gtk_range_get_fill_level"
38990               version="2.12">
38991         <doc xml:whitespace="preserve">Gets the current position of the fill level indicator.</doc>
38992         <return-value transfer-ownership="none">
38993           <doc xml:whitespace="preserve">The current fill level</doc>
38994           <type name="gdouble" c:type="gdouble"/>
38995         </return-value>
38996       </method>
38997       <method name="get_flippable"
38998               c:identifier="gtk_range_get_flippable"
38999               version="2.18">
39000         <doc xml:whitespace="preserve">Gets the value set by gtk_range_set_flippable().</doc>
39001         <return-value transfer-ownership="none">
39002           <doc xml:whitespace="preserve">%TRUE if the range is flippable</doc>
39003           <type name="gboolean" c:type="gboolean"/>
39004         </return-value>
39005       </method>
39006       <method name="get_inverted" c:identifier="gtk_range_get_inverted">
39007         <doc xml:whitespace="preserve">Gets the value set by gtk_range_set_inverted().</doc>
39008         <return-value transfer-ownership="none">
39009           <doc xml:whitespace="preserve">%TRUE if the range is inverted</doc>
39010           <type name="gboolean" c:type="gboolean"/>
39011         </return-value>
39012       </method>
39013       <method name="get_lower_stepper_sensitivity"
39014               c:identifier="gtk_range_get_lower_stepper_sensitivity"
39015               version="2.10">
39016         <doc xml:whitespace="preserve">Gets the sensitivity policy for the stepper that points to the
39017 'lower' end of the GtkRange's adjustment.</doc>
39018         <return-value transfer-ownership="none">
39019           <doc xml:whitespace="preserve">The lower stepper's sensitivity policy.</doc>
39020           <type name="SensitivityType" c:type="GtkSensitivityType"/>
39021         </return-value>
39022       </method>
39023       <method name="get_min_slider_size"
39024               c:identifier="gtk_range_get_min_slider_size"
39025               version="2.20">
39026         <doc xml:whitespace="preserve">This function is useful mainly for #GtkRange subclasses.
39027 See gtk_range_set_min_slider_size().</doc>
39028         <return-value transfer-ownership="none">
39029           <doc xml:whitespace="preserve">The minimum size of the range's slider.</doc>
39030           <type name="gint" c:type="gint"/>
39031         </return-value>
39032       </method>
39033       <method name="get_range_rect"
39034               c:identifier="gtk_range_get_range_rect"
39035               version="2.20">
39036         <doc xml:whitespace="preserve">This function returns the area that contains the range's trough
39037 and its steppers, in widget-&gt;window coordinates.
39038 This function is useful mainly for #GtkRange subclasses.</doc>
39039         <return-value transfer-ownership="none">
39040           <type name="none" c:type="void"/>
39041         </return-value>
39042         <parameters>
39043           <parameter name="range_rect" transfer-ownership="none">
39044             <doc xml:whitespace="preserve">return location for the range rectangle</doc>
39045             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
39046           </parameter>
39047         </parameters>
39048       </method>
39049       <method name="get_restrict_to_fill_level"
39050               c:identifier="gtk_range_get_restrict_to_fill_level"
39051               version="2.12">
39052         <doc xml:whitespace="preserve">Gets whether the range is restricted to the fill level.</doc>
39053         <return-value transfer-ownership="none">
39054           <doc xml:whitespace="preserve">%TRUE if @range is restricted to the fill level.</doc>
39055           <type name="gboolean" c:type="gboolean"/>
39056         </return-value>
39057       </method>
39058       <method name="get_show_fill_level"
39059               c:identifier="gtk_range_get_show_fill_level"
39060               version="2.12">
39061         <doc xml:whitespace="preserve">Gets whether the range displays the fill level graphically.</doc>
39062         <return-value transfer-ownership="none">
39063           <doc xml:whitespace="preserve">%TRUE if @range shows the fill level.</doc>
39064           <type name="gboolean" c:type="gboolean"/>
39065         </return-value>
39066       </method>
39067       <method name="get_slider_range"
39068               c:identifier="gtk_range_get_slider_range"
39069               version="2.20">
39070         <doc xml:whitespace="preserve">This function returns sliders range along the long dimension,
39071 in widget-&gt;window coordinates.
39072 This function is useful mainly for #GtkRange subclasses.</doc>
39073         <return-value transfer-ownership="none">
39074           <type name="none" c:type="void"/>
39075         </return-value>
39076         <parameters>
39077           <parameter name="slider_start"
39078                      transfer-ownership="none"
39079                      allow-none="1">
39080             <doc xml:whitespace="preserve">return location for the slider's start, or %NULL</doc>
39081             <type name="gint" c:type="gint*"/>
39082           </parameter>
39083           <parameter name="slider_end"
39084                      transfer-ownership="none"
39085                      allow-none="1">
39086             <doc xml:whitespace="preserve">return location for the slider's end, or %NULL</doc>
39087             <type name="gint" c:type="gint*"/>
39088           </parameter>
39089         </parameters>
39090       </method>
39091       <method name="get_slider_size_fixed"
39092               c:identifier="gtk_range_get_slider_size_fixed"
39093               version="2.20">
39094         <doc xml:whitespace="preserve">This function is useful mainly for #GtkRange subclasses.
39095 See gtk_range_set_slider_size_fixed().</doc>
39096         <return-value transfer-ownership="none">
39097           <doc xml:whitespace="preserve">whether the range's slider has a fixed size.</doc>
39098           <type name="gboolean" c:type="gboolean"/>
39099         </return-value>
39100       </method>
39101       <method name="get_update_policy"
39102               c:identifier="gtk_range_get_update_policy">
39103         <doc xml:whitespace="preserve">Gets the update policy of @range. See gtk_range_set_update_policy().</doc>
39104         <return-value transfer-ownership="none">
39105           <doc xml:whitespace="preserve">the current update policy</doc>
39106           <type name="UpdateType" c:type="GtkUpdateType"/>
39107         </return-value>
39108       </method>
39109       <method name="get_upper_stepper_sensitivity"
39110               c:identifier="gtk_range_get_upper_stepper_sensitivity"
39111               version="2.10">
39112         <doc xml:whitespace="preserve">Gets the sensitivity policy for the stepper that points to the
39113 'upper' end of the GtkRange's adjustment.</doc>
39114         <return-value transfer-ownership="none">
39115           <doc xml:whitespace="preserve">The upper stepper's sensitivity policy.</doc>
39116           <type name="SensitivityType" c:type="GtkSensitivityType"/>
39117         </return-value>
39118       </method>
39119       <method name="get_value" c:identifier="gtk_range_get_value">
39120         <doc xml:whitespace="preserve">Gets the current value of the range.</doc>
39121         <return-value transfer-ownership="none">
39122           <doc xml:whitespace="preserve">current value of the range.</doc>
39123           <type name="gdouble" c:type="gdouble"/>
39124         </return-value>
39125       </method>
39126       <method name="set_adjustment" c:identifier="gtk_range_set_adjustment">
39127         <doc xml:whitespace="preserve">Sets the adjustment to be used as the "model" object for this range
39128 widget. The adjustment indicates the current range value, the
39129 minimum and maximum range values, the step/page increments used
39130 for keybindings and scrolling, and the page size. The page size
39131 is normally 0 for #GtkScale and nonzero for #GtkScrollbar, and
39132 indicates the size of the visible area of the widget being scrolled.
39133 The page size affects the size of the scrollbar slider.</doc>
39134         <return-value transfer-ownership="none">
39135           <type name="none" c:type="void"/>
39136         </return-value>
39137         <parameters>
39138           <parameter name="adjustment" transfer-ownership="none">
39139             <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
39140             <type name="Adjustment" c:type="GtkAdjustment*"/>
39141           </parameter>
39142         </parameters>
39143       </method>
39144       <method name="set_fill_level"
39145               c:identifier="gtk_range_set_fill_level"
39146               version="2.12">
39147         <doc xml:whitespace="preserve">Set the new position of the fill level indicator.
39148 The "fill level" is probably best described by its most prominent
39149 use case, which is an indicator for the amount of pre-buffering in
39150 a streaming media player. In that use case, the value of the range
39151 would indicate the current play position, and the fill level would
39152 be the position up to which the file/stream has been downloaded.
39153 This amount of prebuffering can be displayed on the range's trough
39154 and is themeable separately from the trough. To enable fill level
39155 display, use gtk_range_set_show_fill_level(). The range defaults
39156 to not showing the fill level.
39157 Additionally, it's possible to restrict the range's slider position
39158 to values which are smaller than the fill level. This is controller
39159 by gtk_range_set_restrict_to_fill_level() and is by default
39160 enabled.</doc>
39161         <return-value transfer-ownership="none">
39162           <type name="none" c:type="void"/>
39163         </return-value>
39164         <parameters>
39165           <parameter name="fill_level" transfer-ownership="none">
39166             <doc xml:whitespace="preserve">the new position of the fill level indicator</doc>
39167             <type name="gdouble" c:type="gdouble"/>
39168           </parameter>
39169         </parameters>
39170       </method>
39171       <method name="set_flippable"
39172               c:identifier="gtk_range_set_flippable"
39173               version="2.18">
39174         <doc xml:whitespace="preserve">If a range is flippable, it will switch its direction if it is
39175 horizontal and its direction is %GTK_TEXT_DIR_RTL.
39176 See gtk_widget_get_direction().</doc>
39177         <return-value transfer-ownership="none">
39178           <type name="none" c:type="void"/>
39179         </return-value>
39180         <parameters>
39181           <parameter name="flippable" transfer-ownership="none">
39182             <doc xml:whitespace="preserve">%TRUE to make the range flippable</doc>
39183             <type name="gboolean" c:type="gboolean"/>
39184           </parameter>
39185         </parameters>
39186       </method>
39187       <method name="set_increments" c:identifier="gtk_range_set_increments">
39188         <doc xml:whitespace="preserve">Sets the step and page sizes for the range.
39189 The step size is used when the user clicks the #GtkScrollbar
39190 arrows or moves #GtkScale via arrow keys. The page size
39191 is used for example when moving via Page Up or Page Down keys.</doc>
39192         <return-value transfer-ownership="none">
39193           <type name="none" c:type="void"/>
39194         </return-value>
39195         <parameters>
39196           <parameter name="step" transfer-ownership="none">
39197             <doc xml:whitespace="preserve">step size</doc>
39198             <type name="gdouble" c:type="gdouble"/>
39199           </parameter>
39200           <parameter name="page" transfer-ownership="none">
39201             <doc xml:whitespace="preserve">page size</doc>
39202             <type name="gdouble" c:type="gdouble"/>
39203           </parameter>
39204         </parameters>
39205       </method>
39206       <method name="set_inverted" c:identifier="gtk_range_set_inverted">
39207         <doc xml:whitespace="preserve">Ranges normally move from lower to higher values as the
39208 slider moves from top to bottom or left to right. Inverted
39209 ranges have higher values at the top or on the right rather than
39210 on the bottom or left.</doc>
39211         <return-value transfer-ownership="none">
39212           <type name="none" c:type="void"/>
39213         </return-value>
39214         <parameters>
39215           <parameter name="setting" transfer-ownership="none">
39216             <doc xml:whitespace="preserve">%TRUE to invert the range</doc>
39217             <type name="gboolean" c:type="gboolean"/>
39218           </parameter>
39219         </parameters>
39220       </method>
39221       <method name="set_lower_stepper_sensitivity"
39222               c:identifier="gtk_range_set_lower_stepper_sensitivity"
39223               version="2.10">
39224         <doc xml:whitespace="preserve">Sets the sensitivity policy for the stepper that points to the
39225 'lower' end of the GtkRange's adjustment.</doc>
39226         <return-value transfer-ownership="none">
39227           <type name="none" c:type="void"/>
39228         </return-value>
39229         <parameters>
39230           <parameter name="sensitivity" transfer-ownership="none">
39231             <doc xml:whitespace="preserve">the lower stepper's sensitivity policy.</doc>
39232             <type name="SensitivityType" c:type="GtkSensitivityType"/>
39233           </parameter>
39234         </parameters>
39235       </method>
39236       <method name="set_min_slider_size"
39237               c:identifier="gtk_range_set_min_slider_size"
39238               version="2.20">
39239         <doc xml:whitespace="preserve">Sets the minimum size of the range's slider.
39240 This function is useful mainly for #GtkRange subclasses.</doc>
39241         <return-value transfer-ownership="none">
39242           <type name="none" c:type="void"/>
39243         </return-value>
39244         <parameters>
39245           <parameter name="min_size" transfer-ownership="none">
39246             <doc xml:whitespace="preserve">The slider's minimum size</doc>
39247             <type name="gint" c:type="gint"/>
39248           </parameter>
39249         </parameters>
39250       </method>
39251       <method name="set_range" c:identifier="gtk_range_set_range">
39252         <doc xml:whitespace="preserve">Sets the allowable values in the #GtkRange, and clamps the range
39253 value to be between @min and @max. (If the range has a non-zero
39254 page size, it is clamped between @min and @max - page-size.)</doc>
39255         <return-value transfer-ownership="none">
39256           <type name="none" c:type="void"/>
39257         </return-value>
39258         <parameters>
39259           <parameter name="min" transfer-ownership="none">
39260             <doc xml:whitespace="preserve">minimum range value</doc>
39261             <type name="gdouble" c:type="gdouble"/>
39262           </parameter>
39263           <parameter name="max" transfer-ownership="none">
39264             <doc xml:whitespace="preserve">maximum range value</doc>
39265             <type name="gdouble" c:type="gdouble"/>
39266           </parameter>
39267         </parameters>
39268       </method>
39269       <method name="set_restrict_to_fill_level"
39270               c:identifier="gtk_range_set_restrict_to_fill_level"
39271               version="2.12">
39272         <doc xml:whitespace="preserve">Sets whether the slider is restricted to the fill level. See
39273 gtk_range_set_fill_level() for a general description of the fill
39274 level concept.</doc>
39275         <return-value transfer-ownership="none">
39276           <type name="none" c:type="void"/>
39277         </return-value>
39278         <parameters>
39279           <parameter name="restrict_to_fill_level" transfer-ownership="none">
39280             <doc xml:whitespace="preserve">Whether the fill level restricts slider movement.</doc>
39281             <type name="gboolean" c:type="gboolean"/>
39282           </parameter>
39283         </parameters>
39284       </method>
39285       <method name="set_show_fill_level"
39286               c:identifier="gtk_range_set_show_fill_level"
39287               version="2.12">
39288         <doc xml:whitespace="preserve">Sets whether a graphical fill level is show on the trough. See
39289 gtk_range_set_fill_level() for a general description of the fill
39290 level concept.</doc>
39291         <return-value transfer-ownership="none">
39292           <type name="none" c:type="void"/>
39293         </return-value>
39294         <parameters>
39295           <parameter name="show_fill_level" transfer-ownership="none">
39296             <doc xml:whitespace="preserve">Whether a fill level indicator graphics is shown.</doc>
39297             <type name="gboolean" c:type="gboolean"/>
39298           </parameter>
39299         </parameters>
39300       </method>
39301       <method name="set_slider_size_fixed"
39302               c:identifier="gtk_range_set_slider_size_fixed"
39303               version="2.20">
39304         <doc xml:whitespace="preserve">Sets whether the range's slider has a fixed size, or a size that
39305 depends on it's adjustment's page size.
39306 This function is useful mainly for #GtkRange subclasses.</doc>
39307         <return-value transfer-ownership="none">
39308           <type name="none" c:type="void"/>
39309         </return-value>
39310         <parameters>
39311           <parameter name="size_fixed" transfer-ownership="none">
39312             <doc xml:whitespace="preserve">%TRUE to make the slider size constant</doc>
39313             <type name="gboolean" c:type="gboolean"/>
39314           </parameter>
39315         </parameters>
39316       </method>
39317       <method name="set_update_policy"
39318               c:identifier="gtk_range_set_update_policy">
39319         <doc xml:whitespace="preserve">Sets the update policy for the range. #GTK_UPDATE_CONTINUOUS means that
39320 anytime the range slider is moved, the range value will change and the
39321 value_changed signal will be emitted. #GTK_UPDATE_DELAYED means that
39322 the value will be updated after a brief timeout where no slider motion
39323 occurs, so updates are spaced by a short time rather than
39324 continuous. #GTK_UPDATE_DISCONTINUOUS means that the value will only
39325 be updated when the user releases the button and ends the slider
39326 drag operation.</doc>
39327         <return-value transfer-ownership="none">
39328           <type name="none" c:type="void"/>
39329         </return-value>
39330         <parameters>
39331           <parameter name="policy" transfer-ownership="none">
39332             <doc xml:whitespace="preserve">update policy</doc>
39333             <type name="UpdateType" c:type="GtkUpdateType"/>
39334           </parameter>
39335         </parameters>
39336       </method>
39337       <method name="set_upper_stepper_sensitivity"
39338               c:identifier="gtk_range_set_upper_stepper_sensitivity"
39339               version="2.10">
39340         <doc xml:whitespace="preserve">Sets the sensitivity policy for the stepper that points to the
39341 'upper' end of the GtkRange's adjustment.</doc>
39342         <return-value transfer-ownership="none">
39343           <type name="none" c:type="void"/>
39344         </return-value>
39345         <parameters>
39346           <parameter name="sensitivity" transfer-ownership="none">
39347             <doc xml:whitespace="preserve">the upper stepper's sensitivity policy.</doc>
39348             <type name="SensitivityType" c:type="GtkSensitivityType"/>
39349           </parameter>
39350         </parameters>
39351       </method>
39352       <method name="set_value" c:identifier="gtk_range_set_value">
39353         <doc xml:whitespace="preserve">Sets the current value of the range; if the value is outside the
39354 minimum or maximum range values, it will be clamped to fit inside
39355 them. The range emits the #GtkRange::value-changed signal if the 
39356 value changes.</doc>
39357         <return-value transfer-ownership="none">
39358           <type name="none" c:type="void"/>
39359         </return-value>
39360         <parameters>
39361           <parameter name="value" transfer-ownership="none">
39362             <doc xml:whitespace="preserve">new value of the range</doc>
39363             <type name="gdouble" c:type="gdouble"/>
39364           </parameter>
39365         </parameters>
39366       </method>
39367       <property name="adjustment"
39368                 writable="1"
39369                 construct="1"
39370                 transfer-ownership="none">
39371         <type name="Adjustment"/>
39372       </property>
39373       <property name="fill-level"
39374                 version="2.12"
39375                 writable="1"
39376                 transfer-ownership="none">
39377         <doc xml:whitespace="preserve">The fill level (e.g. prebuffering of a network stream).
39378 See gtk_range_set_fill_level().</doc>
39379         <type name="gdouble"/>
39380       </property>
39381       <property name="inverted" writable="1" transfer-ownership="none">
39382         <type name="gboolean"/>
39383       </property>
39384       <property name="lower-stepper-sensitivity"
39385                 writable="1"
39386                 transfer-ownership="none">
39387         <type name="SensitivityType"/>
39388       </property>
39389       <property name="restrict-to-fill-level"
39390                 version="2.12"
39391                 writable="1"
39392                 transfer-ownership="none">
39393         <doc xml:whitespace="preserve">The restrict-to-fill-level property controls whether slider
39394 movement is restricted to an upper boundary set by the
39395 fill level. See gtk_range_set_restrict_to_fill_level().</doc>
39396         <type name="gboolean"/>
39397       </property>
39398       <property name="show-fill-level"
39399                 version="2.12"
39400                 writable="1"
39401                 transfer-ownership="none">
39402         <doc xml:whitespace="preserve">The show-fill-level property controls whether fill level indicator
39403 graphics are displayed on the trough. See
39404 gtk_range_set_show_fill_level().</doc>
39405         <type name="gboolean"/>
39406       </property>
39407       <property name="update-policy" writable="1" transfer-ownership="none">
39408         <type name="UpdateType"/>
39409       </property>
39410       <property name="upper-stepper-sensitivity"
39411                 writable="1"
39412                 transfer-ownership="none">
39413         <type name="SensitivityType"/>
39414       </property>
39415       <field name="widget">
39416         <type name="Widget" c:type="GtkWidget"/>
39417       </field>
39418       <field name="priv">
39419         <type name="RangePrivate" c:type="GtkRangePrivate*"/>
39420       </field>
39421       <glib:signal name="adjust-bounds">
39422         <doc xml:whitespace="preserve">Emitted before clamping a value, to give the application a
39423 chance to adjust the bounds.</doc>
39424         <return-value transfer-ownership="none">
39425           <type name="none"/>
39426         </return-value>
39427         <parameters>
39428           <parameter name="object" transfer-ownership="none">
39429             <doc xml:whitespace="preserve">the value before we clamp</doc>
39430             <type name="gdouble"/>
39431           </parameter>
39432         </parameters>
39433       </glib:signal>
39434       <glib:signal name="change-value" version="2.6">
39435         <doc xml:whitespace="preserve">The ::change-value signal is emitted when a scroll action is
39436 performed on a range.  It allows an application to determine the
39437 type of scroll event that occurred and the resultant new value.
39438 The application can handle the event itself and return %TRUE to
39439 prevent further processing.  Or, by returning %FALSE, it can pass
39440 the event to other handlers until the default GTK+ handler is
39441 reached.
39442 The value parameter is unrounded.  An application that overrides
39443 the ::change-value signal is responsible for clamping the value to
39444 the desired number of decimal digits; the default GTK+ handler 
39445 clamps the value based on @range-&gt;round_digits.
39446 It is not possible to use delayed update policies in an overridden
39447 ::change-value handler.</doc>
39448         <return-value transfer-ownership="none">
39449           <doc xml:whitespace="preserve">%TRUE to prevent other handlers from being invoked for the signal, %FALSE to propagate the signal further</doc>
39450           <type name="gboolean"/>
39451         </return-value>
39452         <parameters>
39453           <parameter name="object" transfer-ownership="none">
39454             <doc xml:whitespace="preserve">the type of scroll action that was performed</doc>
39455             <type name="ScrollType"/>
39456           </parameter>
39457           <parameter name="p0" transfer-ownership="none">
39458             <doc xml:whitespace="preserve">the new value resulting from the scroll action</doc>
39459             <type name="gdouble"/>
39460           </parameter>
39461         </parameters>
39462       </glib:signal>
39463       <glib:signal name="move-slider">
39464         <doc xml:whitespace="preserve">Virtual function that moves the slider. Used for keybindings.</doc>
39465         <return-value transfer-ownership="none">
39466           <type name="none"/>
39467         </return-value>
39468         <parameters>
39469           <parameter name="object" transfer-ownership="none">
39470             <doc xml:whitespace="preserve">how to move the slider</doc>
39471             <type name="ScrollType"/>
39472           </parameter>
39473         </parameters>
39474       </glib:signal>
39475       <glib:signal name="value-changed">
39476         <doc xml:whitespace="preserve">Emitted when the range value changes.</doc>
39477         <return-value transfer-ownership="none">
39478           <type name="none"/>
39479         </return-value>
39480       </glib:signal>
39481     </class>
39482     <record name="RangeClass"
39483             c:type="GtkRangeClass"
39484             glib:is-gtype-struct-for="Range">
39485       <field name="parent_class">
39486         <type name="WidgetClass" c:type="GtkWidgetClass"/>
39487       </field>
39488       <field name="slider_detail">
39489         <type name="utf8" c:type="gchar*"/>
39490       </field>
39491       <field name="stepper_detail">
39492         <type name="utf8" c:type="gchar*"/>
39493       </field>
39494       <field name="value_changed">
39495         <callback name="value_changed">
39496           <return-value transfer-ownership="none">
39497             <type name="none" c:type="void"/>
39498           </return-value>
39499           <parameters>
39500             <parameter name="range" transfer-ownership="none">
39501               <type name="Range" c:type="GtkRange*"/>
39502             </parameter>
39503           </parameters>
39504         </callback>
39505       </field>
39506       <field name="adjust_bounds">
39507         <callback name="adjust_bounds">
39508           <return-value transfer-ownership="none">
39509             <type name="none" c:type="void"/>
39510           </return-value>
39511           <parameters>
39512             <parameter name="range" transfer-ownership="none">
39513               <type name="Range" c:type="GtkRange*"/>
39514             </parameter>
39515             <parameter name="new_value" transfer-ownership="none">
39516               <type name="gdouble" c:type="gdouble"/>
39517             </parameter>
39518           </parameters>
39519         </callback>
39520       </field>
39521       <field name="move_slider">
39522         <callback name="move_slider">
39523           <return-value transfer-ownership="none">
39524             <type name="none" c:type="void"/>
39525           </return-value>
39526           <parameters>
39527             <parameter name="range" transfer-ownership="none">
39528               <type name="Range" c:type="GtkRange*"/>
39529             </parameter>
39530             <parameter name="scroll" transfer-ownership="none">
39531               <type name="ScrollType" c:type="GtkScrollType"/>
39532             </parameter>
39533           </parameters>
39534         </callback>
39535       </field>
39536       <field name="get_range_border">
39537         <callback name="get_range_border">
39538           <return-value transfer-ownership="none">
39539             <type name="none" c:type="void"/>
39540           </return-value>
39541           <parameters>
39542             <parameter name="range" transfer-ownership="none">
39543               <type name="Range" c:type="GtkRange*"/>
39544             </parameter>
39545             <parameter name="border_" transfer-ownership="none">
39546               <type name="Border" c:type="GtkBorder*"/>
39547             </parameter>
39548           </parameters>
39549         </callback>
39550       </field>
39551       <field name="change_value">
39552         <callback name="change_value">
39553           <return-value transfer-ownership="none">
39554             <type name="gboolean" c:type="gboolean"/>
39555           </return-value>
39556           <parameters>
39557             <parameter name="range" transfer-ownership="none">
39558               <type name="Range" c:type="GtkRange*"/>
39559             </parameter>
39560             <parameter name="scroll" transfer-ownership="none">
39561               <type name="ScrollType" c:type="GtkScrollType"/>
39562             </parameter>
39563             <parameter name="new_value" transfer-ownership="none">
39564               <type name="gdouble" c:type="gdouble"/>
39565             </parameter>
39566           </parameters>
39567         </callback>
39568       </field>
39569       <field name="_gtk_reserved1" introspectable="0">
39570         <callback name="_gtk_reserved1">
39571           <return-value transfer-ownership="none">
39572             <type name="none" c:type="void"/>
39573           </return-value>
39574         </callback>
39575       </field>
39576       <field name="_gtk_reserved2" introspectable="0">
39577         <callback name="_gtk_reserved2">
39578           <return-value transfer-ownership="none">
39579             <type name="none" c:type="void"/>
39580           </return-value>
39581         </callback>
39582       </field>
39583       <field name="_gtk_reserved3" introspectable="0">
39584         <callback name="_gtk_reserved3">
39585           <return-value transfer-ownership="none">
39586             <type name="none" c:type="void"/>
39587           </return-value>
39588         </callback>
39589       </field>
39590     </record>
39591     <record name="RangePrivate" c:type="GtkRangePrivate" disguised="1">
39592     </record>
39593     <record name="RcContext" c:type="GtkRcContext" disguised="1">
39594     </record>
39595     <bitfield name="RcFlags"
39596               glib:type-name="GtkRcFlags"
39597               glib:get-type="gtk_rc_flags_get_type"
39598               c:type="GtkRcFlags">
39599       <member name="fg" value="1" c:identifier="GTK_RC_FG" glib:nick="fg"/>
39600       <member name="bg" value="2" c:identifier="GTK_RC_BG" glib:nick="bg"/>
39601       <member name="text"
39602               value="4"
39603               c:identifier="GTK_RC_TEXT"
39604               glib:nick="text"/>
39605       <member name="base"
39606               value="8"
39607               c:identifier="GTK_RC_BASE"
39608               glib:nick="base"/>
39609     </bitfield>
39610     <record name="RcProperty" c:type="GtkRcProperty">
39611       <field name="type_name" writable="1">
39612         <type name="GLib.Quark" c:type="GQuark"/>
39613       </field>
39614       <field name="property_name" writable="1">
39615         <type name="GLib.Quark" c:type="GQuark"/>
39616       </field>
39617       <field name="origin" writable="1">
39618         <type name="utf8" c:type="gchar*"/>
39619       </field>
39620       <field name="value" writable="1">
39621         <type name="GObject.Value" c:type="GValue"/>
39622       </field>
39623     </record>
39624     <callback name="RcPropertyParser" c:type="GtkRcPropertyParser">
39625       <return-value transfer-ownership="none">
39626         <type name="gboolean" c:type="gboolean"/>
39627       </return-value>
39628       <parameters>
39629         <parameter name="pspec" transfer-ownership="none">
39630           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
39631         </parameter>
39632         <parameter name="rc_string" transfer-ownership="none">
39633           <type name="GLib.String" c:type="GString*"/>
39634         </parameter>
39635         <parameter name="property_value" transfer-ownership="none">
39636           <type name="GObject.Value" c:type="GValue*"/>
39637         </parameter>
39638       </parameters>
39639     </callback>
39640     <class name="RcStyle"
39641            c:symbol-prefix="rc_style"
39642            c:type="GtkRcStyle"
39643            parent="GObject.Object"
39644            glib:type-name="GtkRcStyle"
39645            glib:get-type="gtk_rc_style_get_type"
39646            glib:type-struct="RcStyleClass">
39647       <constructor name="new" c:identifier="gtk_rc_style_new">
39648         <return-value transfer-ownership="full">
39649           <type name="RcStyle" c:type="GtkRcStyle*"/>
39650         </return-value>
39651       </constructor>
39652       <virtual-method name="create_rc_style" introspectable="0">
39653         <return-value>
39654           <type name="RcStyle" c:type="GtkRcStyle*"/>
39655         </return-value>
39656       </virtual-method>
39657       <virtual-method name="create_style" introspectable="0">
39658         <return-value>
39659           <type name="Style" c:type="GtkStyle*"/>
39660         </return-value>
39661       </virtual-method>
39662       <virtual-method name="merge">
39663         <return-value transfer-ownership="none">
39664           <type name="none" c:type="void"/>
39665         </return-value>
39666         <parameters>
39667           <parameter name="src" transfer-ownership="none">
39668             <type name="RcStyle" c:type="GtkRcStyle*"/>
39669           </parameter>
39670         </parameters>
39671       </virtual-method>
39672       <virtual-method name="parse">
39673         <return-value transfer-ownership="none">
39674           <type name="guint" c:type="guint"/>
39675         </return-value>
39676         <parameters>
39677           <parameter name="settings" transfer-ownership="none">
39678             <type name="Settings" c:type="GtkSettings*"/>
39679           </parameter>
39680           <parameter name="scanner" transfer-ownership="none">
39681             <type name="GLib.Scanner" c:type="GScanner*"/>
39682           </parameter>
39683         </parameters>
39684       </virtual-method>
39685       <method name="copy" c:identifier="gtk_rc_style_copy">
39686         <doc xml:whitespace="preserve">Makes a copy of the specified #GtkRcStyle. This function
39687 will correctly copy an RC style that is a member of a class
39688 derived from #GtkRcStyle.</doc>
39689         <return-value transfer-ownership="full">
39690           <doc xml:whitespace="preserve">the resulting #GtkRcStyle</doc>
39691           <type name="RcStyle" c:type="GtkRcStyle*"/>
39692         </return-value>
39693       </method>
39694       <field name="parent_instance">
39695         <type name="GObject.Object" c:type="GObject"/>
39696       </field>
39697       <field name="name">
39698         <type name="utf8" c:type="gchar*"/>
39699       </field>
39700       <field name="bg_pixmap_name">
39701         <array zero-terminated="0" c:type="utf8" fixed-size="5">
39702           <type name="utf8" c:type="gchar*"/>
39703         </array>
39704       </field>
39705       <field name="font_desc">
39706         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
39707       </field>
39708       <field name="color_flags">
39709         <array zero-terminated="0" c:type="GtkRcFlags" fixed-size="5">
39710           <type name="RcFlags" c:type="GtkRcFlags"/>
39711         </array>
39712       </field>
39713       <field name="fg">
39714         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
39715           <type name="Gdk.Color" c:type="GdkColor"/>
39716         </array>
39717       </field>
39718       <field name="bg">
39719         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
39720           <type name="Gdk.Color" c:type="GdkColor"/>
39721         </array>
39722       </field>
39723       <field name="text">
39724         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
39725           <type name="Gdk.Color" c:type="GdkColor"/>
39726         </array>
39727       </field>
39728       <field name="base">
39729         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
39730           <type name="Gdk.Color" c:type="GdkColor"/>
39731         </array>
39732       </field>
39733       <field name="xthickness">
39734         <type name="gint" c:type="gint"/>
39735       </field>
39736       <field name="ythickness">
39737         <type name="gint" c:type="gint"/>
39738       </field>
39739       <field name="rc_properties">
39740         <array name="GLib.Array" c:type="GArray*">
39741           <type name="gpointer" c:type="gpointer"/>
39742         </array>
39743       </field>
39744       <field name="rc_style_lists">
39745         <type name="GLib.SList" c:type="GSList*">
39746           <type name="gpointer" c:type="gpointer"/>
39747         </type>
39748       </field>
39749       <field name="icon_factories">
39750         <type name="GLib.SList" c:type="GSList*">
39751           <type name="gpointer" c:type="gpointer"/>
39752         </type>
39753       </field>
39754       <field name="engine_specified" bits="1">
39755         <type name="guint" c:type="guint"/>
39756       </field>
39757     </class>
39758     <record name="RcStyleClass"
39759             c:type="GtkRcStyleClass"
39760             glib:is-gtype-struct-for="RcStyle">
39761       <field name="parent_class">
39762         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
39763       </field>
39764       <field name="create_rc_style" introspectable="0">
39765         <callback name="create_rc_style" introspectable="0">
39766           <return-value>
39767             <type name="RcStyle" c:type="GtkRcStyle*"/>
39768           </return-value>
39769           <parameters>
39770             <parameter name="rc_style" transfer-ownership="none">
39771               <type name="RcStyle" c:type="GtkRcStyle*"/>
39772             </parameter>
39773           </parameters>
39774         </callback>
39775       </field>
39776       <field name="parse">
39777         <callback name="parse">
39778           <return-value transfer-ownership="none">
39779             <type name="guint" c:type="guint"/>
39780           </return-value>
39781           <parameters>
39782             <parameter name="rc_style" transfer-ownership="none">
39783               <type name="RcStyle" c:type="GtkRcStyle*"/>
39784             </parameter>
39785             <parameter name="settings" transfer-ownership="none">
39786               <type name="Settings" c:type="GtkSettings*"/>
39787             </parameter>
39788             <parameter name="scanner" transfer-ownership="none">
39789               <type name="GLib.Scanner" c:type="GScanner*"/>
39790             </parameter>
39791           </parameters>
39792         </callback>
39793       </field>
39794       <field name="merge">
39795         <callback name="merge">
39796           <return-value transfer-ownership="none">
39797             <type name="none" c:type="void"/>
39798           </return-value>
39799           <parameters>
39800             <parameter name="dest" transfer-ownership="none">
39801               <type name="RcStyle" c:type="GtkRcStyle*"/>
39802             </parameter>
39803             <parameter name="src" transfer-ownership="none">
39804               <type name="RcStyle" c:type="GtkRcStyle*"/>
39805             </parameter>
39806           </parameters>
39807         </callback>
39808       </field>
39809       <field name="create_style" introspectable="0">
39810         <callback name="create_style" introspectable="0">
39811           <return-value>
39812             <type name="Style" c:type="GtkStyle*"/>
39813           </return-value>
39814           <parameters>
39815             <parameter name="rc_style" transfer-ownership="none">
39816               <type name="RcStyle" c:type="GtkRcStyle*"/>
39817             </parameter>
39818           </parameters>
39819         </callback>
39820       </field>
39821       <field name="_gtk_reserved1" introspectable="0">
39822         <callback name="_gtk_reserved1">
39823           <return-value transfer-ownership="none">
39824             <type name="none" c:type="void"/>
39825           </return-value>
39826         </callback>
39827       </field>
39828       <field name="_gtk_reserved2" introspectable="0">
39829         <callback name="_gtk_reserved2">
39830           <return-value transfer-ownership="none">
39831             <type name="none" c:type="void"/>
39832           </return-value>
39833         </callback>
39834       </field>
39835       <field name="_gtk_reserved3" introspectable="0">
39836         <callback name="_gtk_reserved3">
39837           <return-value transfer-ownership="none">
39838             <type name="none" c:type="void"/>
39839           </return-value>
39840         </callback>
39841       </field>
39842       <field name="_gtk_reserved4" introspectable="0">
39843         <callback name="_gtk_reserved4">
39844           <return-value transfer-ownership="none">
39845             <type name="none" c:type="void"/>
39846           </return-value>
39847         </callback>
39848       </field>
39849     </record>
39850     <enumeration name="RcTokenType"
39851                  glib:type-name="GtkRcTokenType"
39852                  glib:get-type="gtk_rc_token_type_get_type"
39853                  c:type="GtkRcTokenType">
39854       <member name="invalid"
39855               value="270"
39856               c:identifier="GTK_RC_TOKEN_INVALID"
39857               glib:nick="invalid"/>
39858       <member name="include"
39859               value="271"
39860               c:identifier="GTK_RC_TOKEN_INCLUDE"
39861               glib:nick="include"/>
39862       <member name="normal"
39863               value="272"
39864               c:identifier="GTK_RC_TOKEN_NORMAL"
39865               glib:nick="normal"/>
39866       <member name="active"
39867               value="273"
39868               c:identifier="GTK_RC_TOKEN_ACTIVE"
39869               glib:nick="active"/>
39870       <member name="prelight"
39871               value="274"
39872               c:identifier="GTK_RC_TOKEN_PRELIGHT"
39873               glib:nick="prelight"/>
39874       <member name="selected"
39875               value="275"
39876               c:identifier="GTK_RC_TOKEN_SELECTED"
39877               glib:nick="selected"/>
39878       <member name="insensitive"
39879               value="276"
39880               c:identifier="GTK_RC_TOKEN_INSENSITIVE"
39881               glib:nick="insensitive"/>
39882       <member name="fg"
39883               value="277"
39884               c:identifier="GTK_RC_TOKEN_FG"
39885               glib:nick="fg"/>
39886       <member name="bg"
39887               value="278"
39888               c:identifier="GTK_RC_TOKEN_BG"
39889               glib:nick="bg"/>
39890       <member name="text"
39891               value="279"
39892               c:identifier="GTK_RC_TOKEN_TEXT"
39893               glib:nick="text"/>
39894       <member name="base"
39895               value="280"
39896               c:identifier="GTK_RC_TOKEN_BASE"
39897               glib:nick="base"/>
39898       <member name="xthickness"
39899               value="281"
39900               c:identifier="GTK_RC_TOKEN_XTHICKNESS"
39901               glib:nick="xthickness"/>
39902       <member name="ythickness"
39903               value="282"
39904               c:identifier="GTK_RC_TOKEN_YTHICKNESS"
39905               glib:nick="ythickness"/>
39906       <member name="font"
39907               value="283"
39908               c:identifier="GTK_RC_TOKEN_FONT"
39909               glib:nick="font"/>
39910       <member name="fontset"
39911               value="284"
39912               c:identifier="GTK_RC_TOKEN_FONTSET"
39913               glib:nick="fontset"/>
39914       <member name="font_name"
39915               value="285"
39916               c:identifier="GTK_RC_TOKEN_FONT_NAME"
39917               glib:nick="font-name"/>
39918       <member name="bg_pixmap"
39919               value="286"
39920               c:identifier="GTK_RC_TOKEN_BG_PIXMAP"
39921               glib:nick="bg-pixmap"/>
39922       <member name="pixmap_path"
39923               value="287"
39924               c:identifier="GTK_RC_TOKEN_PIXMAP_PATH"
39925               glib:nick="pixmap-path"/>
39926       <member name="style"
39927               value="288"
39928               c:identifier="GTK_RC_TOKEN_STYLE"
39929               glib:nick="style"/>
39930       <member name="binding"
39931               value="289"
39932               c:identifier="GTK_RC_TOKEN_BINDING"
39933               glib:nick="binding"/>
39934       <member name="bind"
39935               value="290"
39936               c:identifier="GTK_RC_TOKEN_BIND"
39937               glib:nick="bind"/>
39938       <member name="widget"
39939               value="291"
39940               c:identifier="GTK_RC_TOKEN_WIDGET"
39941               glib:nick="widget"/>
39942       <member name="widget_class"
39943               value="292"
39944               c:identifier="GTK_RC_TOKEN_WIDGET_CLASS"
39945               glib:nick="widget-class"/>
39946       <member name="class"
39947               value="293"
39948               c:identifier="GTK_RC_TOKEN_CLASS"
39949               glib:nick="class"/>
39950       <member name="lowest"
39951               value="294"
39952               c:identifier="GTK_RC_TOKEN_LOWEST"
39953               glib:nick="lowest"/>
39954       <member name="gtk"
39955               value="295"
39956               c:identifier="GTK_RC_TOKEN_GTK"
39957               glib:nick="gtk"/>
39958       <member name="application"
39959               value="296"
39960               c:identifier="GTK_RC_TOKEN_APPLICATION"
39961               glib:nick="application"/>
39962       <member name="theme"
39963               value="297"
39964               c:identifier="GTK_RC_TOKEN_THEME"
39965               glib:nick="theme"/>
39966       <member name="rc"
39967               value="298"
39968               c:identifier="GTK_RC_TOKEN_RC"
39969               glib:nick="rc"/>
39970       <member name="highest"
39971               value="299"
39972               c:identifier="GTK_RC_TOKEN_HIGHEST"
39973               glib:nick="highest"/>
39974       <member name="engine"
39975               value="300"
39976               c:identifier="GTK_RC_TOKEN_ENGINE"
39977               glib:nick="engine"/>
39978       <member name="module_path"
39979               value="301"
39980               c:identifier="GTK_RC_TOKEN_MODULE_PATH"
39981               glib:nick="module-path"/>
39982       <member name="im_module_path"
39983               value="302"
39984               c:identifier="GTK_RC_TOKEN_IM_MODULE_PATH"
39985               glib:nick="im-module-path"/>
39986       <member name="im_module_file"
39987               value="303"
39988               c:identifier="GTK_RC_TOKEN_IM_MODULE_FILE"
39989               glib:nick="im-module-file"/>
39990       <member name="stock"
39991               value="304"
39992               c:identifier="GTK_RC_TOKEN_STOCK"
39993               glib:nick="stock"/>
39994       <member name="ltr"
39995               value="305"
39996               c:identifier="GTK_RC_TOKEN_LTR"
39997               glib:nick="ltr"/>
39998       <member name="rtl"
39999               value="306"
40000               c:identifier="GTK_RC_TOKEN_RTL"
40001               glib:nick="rtl"/>
40002       <member name="color"
40003               value="307"
40004               c:identifier="GTK_RC_TOKEN_COLOR"
40005               glib:nick="color"/>
40006       <member name="unbind"
40007               value="308"
40008               c:identifier="GTK_RC_TOKEN_UNBIND"
40009               glib:nick="unbind"/>
40010       <member name="last"
40011               value="309"
40012               c:identifier="GTK_RC_TOKEN_LAST"
40013               glib:nick="last"/>
40014     </enumeration>
40015     <class name="RecentAction"
40016            c:symbol-prefix="recent_action"
40017            c:type="GtkRecentAction"
40018            parent="Action"
40019            glib:type-name="GtkRecentAction"
40020            glib:get-type="gtk_recent_action_get_type"
40021            glib:type-struct="RecentActionClass">
40022       <implements name="Buildable"/>
40023       <implements name="RecentChooser"/>
40024       <constructor name="new"
40025                    c:identifier="gtk_recent_action_new"
40026                    version="2.12">
40027         <doc xml:whitespace="preserve">Creates a new #GtkRecentAction object. To add the action to
40028 a #GtkActionGroup and set the accelerator for the action,
40029 call gtk_action_group_add_action_with_accel().</doc>
40030         <return-value transfer-ownership="full">
40031           <doc xml:whitespace="preserve">the newly created #GtkRecentAction.</doc>
40032           <type name="Action" c:type="GtkAction*"/>
40033         </return-value>
40034         <parameters>
40035           <parameter name="name" transfer-ownership="none">
40036             <doc xml:whitespace="preserve">a unique name for the action</doc>
40037             <type name="utf8" c:type="gchar*"/>
40038           </parameter>
40039           <parameter name="label" transfer-ownership="none" allow-none="1">
40040             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
40041             <type name="utf8" c:type="gchar*"/>
40042           </parameter>
40043           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
40044             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
40045             <type name="utf8" c:type="gchar*"/>
40046           </parameter>
40047           <parameter name="stock_id" transfer-ownership="none">
40048             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
40049             <type name="utf8" c:type="gchar*"/>
40050           </parameter>
40051         </parameters>
40052       </constructor>
40053       <constructor name="new_for_manager"
40054                    c:identifier="gtk_recent_action_new_for_manager"
40055                    version="2.12">
40056         <doc xml:whitespace="preserve">Creates a new #GtkRecentAction object. To add the action to
40057 a #GtkActionGroup and set the accelerator for the action,
40058 call gtk_action_group_add_action_with_accel().</doc>
40059         <return-value transfer-ownership="full">
40060           <doc xml:whitespace="preserve">the newly created #GtkRecentAction</doc>
40061           <type name="Action" c:type="GtkAction*"/>
40062         </return-value>
40063         <parameters>
40064           <parameter name="name" transfer-ownership="none">
40065             <doc xml:whitespace="preserve">a unique name for the action</doc>
40066             <type name="utf8" c:type="gchar*"/>
40067           </parameter>
40068           <parameter name="label" transfer-ownership="none" allow-none="1">
40069             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
40070             <type name="utf8" c:type="gchar*"/>
40071           </parameter>
40072           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
40073             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
40074             <type name="utf8" c:type="gchar*"/>
40075           </parameter>
40076           <parameter name="stock_id" transfer-ownership="none">
40077             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
40078             <type name="utf8" c:type="gchar*"/>
40079           </parameter>
40080           <parameter name="manager" transfer-ownership="none" allow-none="1">
40081             <doc xml:whitespace="preserve">a #GtkRecentManager, or %NULL for using the default #GtkRecentManager</doc>
40082             <type name="RecentManager" c:type="GtkRecentManager*"/>
40083           </parameter>
40084         </parameters>
40085       </constructor>
40086       <method name="get_show_numbers"
40087               c:identifier="gtk_recent_action_get_show_numbers"
40088               version="2.12">
40089         <doc xml:whitespace="preserve">Returns the value set by gtk_recent_chooser_menu_set_show_numbers().</doc>
40090         <return-value transfer-ownership="none">
40091           <doc xml:whitespace="preserve">%TRUE if numbers should be shown.</doc>
40092           <type name="gboolean" c:type="gboolean"/>
40093         </return-value>
40094       </method>
40095       <method name="set_show_numbers"
40096               c:identifier="gtk_recent_action_set_show_numbers"
40097               version="2.12">
40098         <doc xml:whitespace="preserve">Sets whether a number should be added to the items shown by the
40099 widgets representing @action. The numbers are shown to provide
40100 a unique character for a mnemonic to be used inside the menu item's
40101 label. Only the first ten items get a number to avoid clashes.</doc>
40102         <return-value transfer-ownership="none">
40103           <type name="none" c:type="void"/>
40104         </return-value>
40105         <parameters>
40106           <parameter name="show_numbers" transfer-ownership="none">
40107             <doc xml:whitespace="preserve">%TRUE if the shown items should be numbered</doc>
40108             <type name="gboolean" c:type="gboolean"/>
40109           </parameter>
40110         </parameters>
40111       </method>
40112       <property name="show-numbers" writable="1" transfer-ownership="none">
40113         <type name="gboolean"/>
40114       </property>
40115       <field name="parent_instance">
40116         <type name="Action" c:type="GtkAction"/>
40117       </field>
40118       <field name="priv">
40119         <type name="RecentActionPrivate" c:type="GtkRecentActionPrivate*"/>
40120       </field>
40121     </class>
40122     <record name="RecentActionClass"
40123             c:type="GtkRecentActionClass"
40124             glib:is-gtype-struct-for="RecentAction">
40125       <field name="parent_class">
40126         <type name="ActionClass" c:type="GtkActionClass"/>
40127       </field>
40128     </record>
40129     <record name="RecentActionPrivate"
40130             c:type="GtkRecentActionPrivate"
40131             disguised="1">
40132     </record>
40133     <interface name="RecentChooser"
40134                c:symbol-prefix="recent_chooser"
40135                c:type="GtkRecentChooser"
40136                glib:type-name="GtkRecentChooser"
40137                glib:get-type="gtk_recent_chooser_get_type"
40138                glib:type-struct="RecentChooserIface">
40139       <virtual-method name="add_filter" invoker="add_filter" version="2.10">
40140         <doc xml:whitespace="preserve">Adds @filter to the list of #GtkRecentFilter objects held by @chooser.
40141 If no previous filter objects were defined, this function will call
40142 gtk_recent_chooser_set_filter().</doc>
40143         <return-value transfer-ownership="none">
40144           <type name="none" c:type="void"/>
40145         </return-value>
40146         <parameters>
40147           <parameter name="filter" transfer-ownership="none">
40148             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
40149             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40150           </parameter>
40151         </parameters>
40152       </virtual-method>
40153       <virtual-method name="get_current_uri"
40154                       invoker="get_current_uri"
40155                       version="2.10">
40156         <doc xml:whitespace="preserve">Gets the URI currently selected by @chooser.</doc>
40157         <return-value transfer-ownership="full">
40158           <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
40159           <type name="utf8" c:type="gchar*"/>
40160         </return-value>
40161       </virtual-method>
40162       <virtual-method name="get_items" invoker="get_items" version="2.10">
40163         <doc xml:whitespace="preserve">Gets the list of recently used resources in form of #GtkRecentInfo objects.
40164 The return value of this function is affected by the "sort-type" and
40165 "limit" properties of @chooser.
40166 list of #GtkRecentInfo objects.  You should
40167 use gtk_recent_info_unref() on every item of the list, and then free
40168 the list itself using g_list_free().</doc>
40169         <return-value transfer-ownership="full">
40170           <doc xml:whitespace="preserve">A newly allocated</doc>
40171           <type name="GLib.List" c:type="GList*">
40172             <type name="RecentInfo"/>
40173           </type>
40174         </return-value>
40175       </virtual-method>
40176       <virtual-method name="get_recent_manager" introspectable="0">
40177         <return-value>
40178           <type name="RecentManager" c:type="GtkRecentManager*"/>
40179         </return-value>
40180       </virtual-method>
40181       <virtual-method name="list_filters"
40182                       invoker="list_filters"
40183                       version="2.10">
40184         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter objects held by @chooser.
40185 of #GtkRecentFilter objects.  You
40186 should just free the returned list using g_slist_free().</doc>
40187         <return-value transfer-ownership="container">
40188           <doc xml:whitespace="preserve">A singly linked list</doc>
40189           <type name="GLib.SList" c:type="GSList*">
40190             <type name="RecentFilter"/>
40191           </type>
40192         </return-value>
40193       </virtual-method>
40194       <virtual-method name="remove_filter"
40195                       invoker="remove_filter"
40196                       version="2.10">
40197         <doc xml:whitespace="preserve">Removes @filter from the list of #GtkRecentFilter objects held by @chooser.</doc>
40198         <return-value transfer-ownership="none">
40199           <type name="none" c:type="void"/>
40200         </return-value>
40201         <parameters>
40202           <parameter name="filter" transfer-ownership="none">
40203             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
40204             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40205           </parameter>
40206         </parameters>
40207       </virtual-method>
40208       <virtual-method name="select_all" invoker="select_all" version="2.10">
40209         <doc xml:whitespace="preserve">Selects all the items inside @chooser, if the @chooser supports
40210 multiple selection.</doc>
40211         <return-value transfer-ownership="none">
40212           <type name="none" c:type="void"/>
40213         </return-value>
40214       </virtual-method>
40215       <virtual-method name="select_uri"
40216                       invoker="select_uri"
40217                       version="2.10"
40218                       throws="1">
40219         <doc xml:whitespace="preserve">Selects @uri inside @chooser.</doc>
40220         <return-value transfer-ownership="none">
40221           <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
40222           <type name="gboolean" c:type="gboolean"/>
40223         </return-value>
40224         <parameters>
40225           <parameter name="uri" transfer-ownership="none">
40226             <doc xml:whitespace="preserve">a URI</doc>
40227             <type name="utf8" c:type="gchar*"/>
40228           </parameter>
40229         </parameters>
40230       </virtual-method>
40231       <virtual-method name="set_current_uri"
40232                       invoker="set_current_uri"
40233                       version="2.10"
40234                       throws="1">
40235         <doc xml:whitespace="preserve">Sets @uri as the current URI for @chooser.</doc>
40236         <return-value transfer-ownership="none">
40237           <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
40238           <type name="gboolean" c:type="gboolean"/>
40239         </return-value>
40240         <parameters>
40241           <parameter name="uri" transfer-ownership="none">
40242             <doc xml:whitespace="preserve">a URI</doc>
40243             <type name="utf8" c:type="gchar*"/>
40244           </parameter>
40245         </parameters>
40246       </virtual-method>
40247       <virtual-method name="set_sort_func"
40248                       invoker="set_sort_func"
40249                       version="2.10">
40250         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func.  If
40251 the @chooser has the sort type set to #GTK_RECENT_SORT_CUSTOM then
40252 the chooser will sort using this function.
40253 To the comparison function will be passed two #GtkRecentInfo structs and
40254 item comes before the second, zero if the two items are equal and
40255 a negative integer if the first item comes after the second.</doc>
40256         <return-value transfer-ownership="none">
40257           <type name="none" c:type="void"/>
40258         </return-value>
40259         <parameters>
40260           <parameter name="sort_func"
40261                      transfer-ownership="none"
40262                      scope="notified"
40263                      closure="1"
40264                      destroy="2">
40265             <doc xml:whitespace="preserve">the comparison function</doc>
40266             <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
40267           </parameter>
40268           <parameter name="sort_data" transfer-ownership="none" allow-none="1">
40269             <doc xml:whitespace="preserve">user data to pass to @sort_func, or %NULL</doc>
40270             <type name="gpointer" c:type="gpointer"/>
40271           </parameter>
40272           <parameter name="data_destroy"
40273                      transfer-ownership="none"
40274                      allow-none="1"
40275                      scope="async">
40276             <doc xml:whitespace="preserve">destroy notifier for @sort_data, or %NULL</doc>
40277             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
40278           </parameter>
40279         </parameters>
40280       </virtual-method>
40281       <virtual-method name="unselect_all"
40282                       invoker="unselect_all"
40283                       version="2.10">
40284         <doc xml:whitespace="preserve">Unselects all the items inside @chooser.</doc>
40285         <return-value transfer-ownership="none">
40286           <type name="none" c:type="void"/>
40287         </return-value>
40288       </virtual-method>
40289       <virtual-method name="unselect_uri"
40290                       invoker="unselect_uri"
40291                       version="2.10">
40292         <doc xml:whitespace="preserve">Unselects @uri inside @chooser.</doc>
40293         <return-value transfer-ownership="none">
40294           <type name="none" c:type="void"/>
40295         </return-value>
40296         <parameters>
40297           <parameter name="uri" transfer-ownership="none">
40298             <doc xml:whitespace="preserve">a URI</doc>
40299             <type name="utf8" c:type="gchar*"/>
40300           </parameter>
40301         </parameters>
40302       </virtual-method>
40303       <method name="add_filter"
40304               c:identifier="gtk_recent_chooser_add_filter"
40305               version="2.10">
40306         <doc xml:whitespace="preserve">Adds @filter to the list of #GtkRecentFilter objects held by @chooser.
40307 If no previous filter objects were defined, this function will call
40308 gtk_recent_chooser_set_filter().</doc>
40309         <return-value transfer-ownership="none">
40310           <type name="none" c:type="void"/>
40311         </return-value>
40312         <parameters>
40313           <parameter name="filter" transfer-ownership="none">
40314             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
40315             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40316           </parameter>
40317         </parameters>
40318       </method>
40319       <method name="get_current_item"
40320               c:identifier="gtk_recent_chooser_get_current_item"
40321               version="2.10">
40322         <doc xml:whitespace="preserve">Gets the #GtkRecentInfo currently selected by @chooser.
40323 when you have finished using it.</doc>
40324         <return-value transfer-ownership="full">
40325           <doc xml:whitespace="preserve">a #GtkRecentInfo.  Use gtk_recent_info_unref() when</doc>
40326           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
40327         </return-value>
40328       </method>
40329       <method name="get_current_uri"
40330               c:identifier="gtk_recent_chooser_get_current_uri"
40331               version="2.10">
40332         <doc xml:whitespace="preserve">Gets the URI currently selected by @chooser.</doc>
40333         <return-value transfer-ownership="full">
40334           <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
40335           <type name="utf8" c:type="gchar*"/>
40336         </return-value>
40337       </method>
40338       <method name="get_filter"
40339               c:identifier="gtk_recent_chooser_get_filter"
40340               version="2.10">
40341         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter object currently used by @chooser to affect
40342 the display of the recently used resources.</doc>
40343         <return-value transfer-ownership="none">
40344           <doc xml:whitespace="preserve">a #GtkRecentFilter object.</doc>
40345           <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40346         </return-value>
40347       </method>
40348       <method name="get_items"
40349               c:identifier="gtk_recent_chooser_get_items"
40350               version="2.10">
40351         <doc xml:whitespace="preserve">Gets the list of recently used resources in form of #GtkRecentInfo objects.
40352 The return value of this function is affected by the "sort-type" and
40353 "limit" properties of @chooser.
40354 list of #GtkRecentInfo objects.  You should
40355 use gtk_recent_info_unref() on every item of the list, and then free
40356 the list itself using g_list_free().</doc>
40357         <return-value transfer-ownership="full">
40358           <doc xml:whitespace="preserve">A newly allocated</doc>
40359           <type name="GLib.List" c:type="GList*">
40360             <type name="RecentInfo"/>
40361           </type>
40362         </return-value>
40363       </method>
40364       <method name="get_limit"
40365               c:identifier="gtk_recent_chooser_get_limit"
40366               version="2.10">
40367         <doc xml:whitespace="preserve">Gets the number of items returned by gtk_recent_chooser_get_items()
40368 and gtk_recent_chooser_get_uris().
40369 returned.</doc>
40370         <return-value transfer-ownership="none">
40371           <doc xml:whitespace="preserve">A positive integer, or -1 meaning that all items are</doc>
40372           <type name="gint" c:type="gint"/>
40373         </return-value>
40374       </method>
40375       <method name="get_local_only"
40376               c:identifier="gtk_recent_chooser_get_local_only"
40377               version="2.10">
40378         <doc xml:whitespace="preserve">Gets whether only local resources should be shown in the recently used
40379 resources selector.  See gtk_recent_chooser_set_local_only()</doc>
40380         <return-value transfer-ownership="none">
40381           <doc xml:whitespace="preserve">%TRUE if only local resources should be shown.</doc>
40382           <type name="gboolean" c:type="gboolean"/>
40383         </return-value>
40384       </method>
40385       <method name="get_select_multiple"
40386               c:identifier="gtk_recent_chooser_get_select_multiple"
40387               version="2.10">
40388         <doc xml:whitespace="preserve">Gets whether @chooser can select multiple items.</doc>
40389         <return-value transfer-ownership="none">
40390           <doc xml:whitespace="preserve">%TRUE if @chooser can select more than one item.</doc>
40391           <type name="gboolean" c:type="gboolean"/>
40392         </return-value>
40393       </method>
40394       <method name="get_show_icons"
40395               c:identifier="gtk_recent_chooser_get_show_icons"
40396               version="2.10">
40397         <doc xml:whitespace="preserve">Retrieves whether @chooser should show an icon near the resource.</doc>
40398         <return-value transfer-ownership="none">
40399           <doc xml:whitespace="preserve">%TRUE if the icons should be displayed, %FALSE otherwise.</doc>
40400           <type name="gboolean" c:type="gboolean"/>
40401         </return-value>
40402       </method>
40403       <method name="get_show_not_found"
40404               c:identifier="gtk_recent_chooser_get_show_not_found"
40405               version="2.10">
40406         <doc xml:whitespace="preserve">Retrieves whether @chooser should show the recently used resources that
40407 were not found.
40408 %FALSE otheriwse.</doc>
40409         <return-value transfer-ownership="none">
40410           <doc xml:whitespace="preserve">%TRUE if the resources not found should be displayed, and</doc>
40411           <type name="gboolean" c:type="gboolean"/>
40412         </return-value>
40413       </method>
40414       <method name="get_show_private"
40415               c:identifier="gtk_recent_chooser_get_show_private"
40416               version="2.10">
40417         <doc xml:whitespace="preserve">Returns whether @chooser should display recently used resources
40418 registered as private.
40419 %FALSE otherwise.</doc>
40420         <return-value transfer-ownership="none">
40421           <doc xml:whitespace="preserve">%TRUE if the recent chooser should show private items,</doc>
40422           <type name="gboolean" c:type="gboolean"/>
40423         </return-value>
40424       </method>
40425       <method name="get_show_tips"
40426               c:identifier="gtk_recent_chooser_get_show_tips"
40427               version="2.10">
40428         <doc xml:whitespace="preserve">Gets whether @chooser should display tooltips containing the full path
40429 of a recently user resource.
40430 %FALSE otherwise.</doc>
40431         <return-value transfer-ownership="none">
40432           <doc xml:whitespace="preserve">%TRUE if the recent chooser should show tooltips,</doc>
40433           <type name="gboolean" c:type="gboolean"/>
40434         </return-value>
40435       </method>
40436       <method name="get_sort_type"
40437               c:identifier="gtk_recent_chooser_get_sort_type"
40438               version="2.10">
40439         <doc xml:whitespace="preserve">Gets the value set by gtk_recent_chooser_set_sort_type().</doc>
40440         <return-value transfer-ownership="none">
40441           <doc xml:whitespace="preserve">the sorting order of the @chooser.</doc>
40442           <type name="RecentSortType" c:type="GtkRecentSortType"/>
40443         </return-value>
40444       </method>
40445       <method name="get_uris"
40446               c:identifier="gtk_recent_chooser_get_uris"
40447               version="2.10">
40448         <doc xml:whitespace="preserve">Gets the URI of the recently used resources.
40449 The return value of this function is affected by the "sort-type" and "limit"
40450 properties of @chooser.
40451 Since the returned array is %NULL terminated, @length may be %NULL.
40452 of strings. Use g_strfreev() to free it.</doc>
40453         <return-value transfer-ownership="full">
40454           <doc xml:whitespace="preserve">A newly allocated, %NULL-terminated array</doc>
40455           <array c:type="gchar**">
40456             <type name="utf8"/>
40457           </array>
40458         </return-value>
40459         <parameters>
40460           <parameter name="length" transfer-ownership="none" allow-none="1">
40461             <doc xml:whitespace="preserve">return location for a the length of the URI list, or %NULL</doc>
40462             <type name="gulong" c:type="gsize*"/>
40463           </parameter>
40464         </parameters>
40465       </method>
40466       <method name="list_filters"
40467               c:identifier="gtk_recent_chooser_list_filters"
40468               version="2.10">
40469         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter objects held by @chooser.
40470 of #GtkRecentFilter objects.  You
40471 should just free the returned list using g_slist_free().</doc>
40472         <return-value transfer-ownership="container">
40473           <doc xml:whitespace="preserve">A singly linked list</doc>
40474           <type name="GLib.SList" c:type="GSList*">
40475             <type name="RecentFilter"/>
40476           </type>
40477         </return-value>
40478       </method>
40479       <method name="remove_filter"
40480               c:identifier="gtk_recent_chooser_remove_filter"
40481               version="2.10">
40482         <doc xml:whitespace="preserve">Removes @filter from the list of #GtkRecentFilter objects held by @chooser.</doc>
40483         <return-value transfer-ownership="none">
40484           <type name="none" c:type="void"/>
40485         </return-value>
40486         <parameters>
40487           <parameter name="filter" transfer-ownership="none">
40488             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
40489             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40490           </parameter>
40491         </parameters>
40492       </method>
40493       <method name="select_all"
40494               c:identifier="gtk_recent_chooser_select_all"
40495               version="2.10">
40496         <doc xml:whitespace="preserve">Selects all the items inside @chooser, if the @chooser supports
40497 multiple selection.</doc>
40498         <return-value transfer-ownership="none">
40499           <type name="none" c:type="void"/>
40500         </return-value>
40501       </method>
40502       <method name="select_uri"
40503               c:identifier="gtk_recent_chooser_select_uri"
40504               version="2.10"
40505               throws="1">
40506         <doc xml:whitespace="preserve">Selects @uri inside @chooser.</doc>
40507         <return-value transfer-ownership="none">
40508           <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
40509           <type name="gboolean" c:type="gboolean"/>
40510         </return-value>
40511         <parameters>
40512           <parameter name="uri" transfer-ownership="none">
40513             <doc xml:whitespace="preserve">a URI</doc>
40514             <type name="utf8" c:type="gchar*"/>
40515           </parameter>
40516         </parameters>
40517       </method>
40518       <method name="set_current_uri"
40519               c:identifier="gtk_recent_chooser_set_current_uri"
40520               version="2.10"
40521               throws="1">
40522         <doc xml:whitespace="preserve">Sets @uri as the current URI for @chooser.</doc>
40523         <return-value transfer-ownership="none">
40524           <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
40525           <type name="gboolean" c:type="gboolean"/>
40526         </return-value>
40527         <parameters>
40528           <parameter name="uri" transfer-ownership="none">
40529             <doc xml:whitespace="preserve">a URI</doc>
40530             <type name="utf8" c:type="gchar*"/>
40531           </parameter>
40532         </parameters>
40533       </method>
40534       <method name="set_filter"
40535               c:identifier="gtk_recent_chooser_set_filter"
40536               version="2.10">
40537         <doc xml:whitespace="preserve">Sets @filter as the current #GtkRecentFilter object used by @chooser
40538 to affect the displayed recently used resources.</doc>
40539         <return-value transfer-ownership="none">
40540           <type name="none" c:type="void"/>
40541         </return-value>
40542         <parameters>
40543           <parameter name="filter" transfer-ownership="none">
40544             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
40545             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
40546           </parameter>
40547         </parameters>
40548       </method>
40549       <method name="set_limit"
40550               c:identifier="gtk_recent_chooser_set_limit"
40551               version="2.10">
40552         <doc xml:whitespace="preserve">Sets the number of items that should be returned by
40553 gtk_recent_chooser_get_items() and gtk_recent_chooser_get_uris().</doc>
40554         <return-value transfer-ownership="none">
40555           <type name="none" c:type="void"/>
40556         </return-value>
40557         <parameters>
40558           <parameter name="limit" transfer-ownership="none">
40559             <doc xml:whitespace="preserve">a positive integer, or -1 for all items</doc>
40560             <type name="gint" c:type="gint"/>
40561           </parameter>
40562         </parameters>
40563       </method>
40564       <method name="set_local_only"
40565               c:identifier="gtk_recent_chooser_set_local_only"
40566               version="2.10">
40567         <doc xml:whitespace="preserve">Sets whether only local resources, that is resources using the file:// URI
40568 scheme, should be shown in the recently used resources selector.  If
40569 to be accessible through the operating system native file system.</doc>
40570         <return-value transfer-ownership="none">
40571           <type name="none" c:type="void"/>
40572         </return-value>
40573         <parameters>
40574           <parameter name="local_only" transfer-ownership="none">
40575             <doc xml:whitespace="preserve">%TRUE if only local files can be shown</doc>
40576             <type name="gboolean" c:type="gboolean"/>
40577           </parameter>
40578         </parameters>
40579       </method>
40580       <method name="set_select_multiple"
40581               c:identifier="gtk_recent_chooser_set_select_multiple"
40582               version="2.10">
40583         <doc xml:whitespace="preserve">Sets whether @chooser can select multiple items.</doc>
40584         <return-value transfer-ownership="none">
40585           <type name="none" c:type="void"/>
40586         </return-value>
40587         <parameters>
40588           <parameter name="select_multiple" transfer-ownership="none">
40589             <doc xml:whitespace="preserve">%TRUE if @chooser can select more than one item</doc>
40590             <type name="gboolean" c:type="gboolean"/>
40591           </parameter>
40592         </parameters>
40593       </method>
40594       <method name="set_show_icons"
40595               c:identifier="gtk_recent_chooser_set_show_icons"
40596               version="2.10">
40597         <doc xml:whitespace="preserve">Sets whether @chooser should show an icon near the resource when
40598 displaying it.</doc>
40599         <return-value transfer-ownership="none">
40600           <type name="none" c:type="void"/>
40601         </return-value>
40602         <parameters>
40603           <parameter name="show_icons" transfer-ownership="none">
40604             <doc xml:whitespace="preserve">whether to show an icon near the resource</doc>
40605             <type name="gboolean" c:type="gboolean"/>
40606           </parameter>
40607         </parameters>
40608       </method>
40609       <method name="set_show_not_found"
40610               c:identifier="gtk_recent_chooser_set_show_not_found"
40611               version="2.10">
40612         <doc xml:whitespace="preserve">Sets whether @chooser should display the recently used resources that
40613 it didn't find.  This only applies to local resources.</doc>
40614         <return-value transfer-ownership="none">
40615           <type name="none" c:type="void"/>
40616         </return-value>
40617         <parameters>
40618           <parameter name="show_not_found" transfer-ownership="none">
40619             <doc xml:whitespace="preserve">whether to show the local items we didn't find</doc>
40620             <type name="gboolean" c:type="gboolean"/>
40621           </parameter>
40622         </parameters>
40623       </method>
40624       <method name="set_show_private"
40625               c:identifier="gtk_recent_chooser_set_show_private"
40626               version="2.10">
40627         <doc xml:whitespace="preserve">Whether to show recently used resources marked registered as private.</doc>
40628         <return-value transfer-ownership="none">
40629           <type name="none" c:type="void"/>
40630         </return-value>
40631         <parameters>
40632           <parameter name="show_private" transfer-ownership="none">
40633             <doc xml:whitespace="preserve">%TRUE to show private items, %FALSE otherwise</doc>
40634             <type name="gboolean" c:type="gboolean"/>
40635           </parameter>
40636         </parameters>
40637       </method>
40638       <method name="set_show_tips"
40639               c:identifier="gtk_recent_chooser_set_show_tips"
40640               version="2.10">
40641         <doc xml:whitespace="preserve">Sets whether to show a tooltips containing the full path of each
40642 recently used resource in a #GtkRecentChooser widget.</doc>
40643         <return-value transfer-ownership="none">
40644           <type name="none" c:type="void"/>
40645         </return-value>
40646         <parameters>
40647           <parameter name="show_tips" transfer-ownership="none">
40648             <doc xml:whitespace="preserve">%TRUE if tooltips should be shown</doc>
40649             <type name="gboolean" c:type="gboolean"/>
40650           </parameter>
40651         </parameters>
40652       </method>
40653       <method name="set_sort_func"
40654               c:identifier="gtk_recent_chooser_set_sort_func"
40655               version="2.10">
40656         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func.  If
40657 the @chooser has the sort type set to #GTK_RECENT_SORT_CUSTOM then
40658 the chooser will sort using this function.
40659 To the comparison function will be passed two #GtkRecentInfo structs and
40660 item comes before the second, zero if the two items are equal and
40661 a negative integer if the first item comes after the second.</doc>
40662         <return-value transfer-ownership="none">
40663           <type name="none" c:type="void"/>
40664         </return-value>
40665         <parameters>
40666           <parameter name="sort_func"
40667                      transfer-ownership="none"
40668                      scope="notified"
40669                      closure="1"
40670                      destroy="2">
40671             <doc xml:whitespace="preserve">the comparison function</doc>
40672             <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
40673           </parameter>
40674           <parameter name="sort_data" transfer-ownership="none" allow-none="1">
40675             <doc xml:whitespace="preserve">user data to pass to @sort_func, or %NULL</doc>
40676             <type name="gpointer" c:type="gpointer"/>
40677           </parameter>
40678           <parameter name="data_destroy"
40679                      transfer-ownership="none"
40680                      allow-none="1"
40681                      scope="async">
40682             <doc xml:whitespace="preserve">destroy notifier for @sort_data, or %NULL</doc>
40683             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
40684           </parameter>
40685         </parameters>
40686       </method>
40687       <method name="set_sort_type"
40688               c:identifier="gtk_recent_chooser_set_sort_type"
40689               version="2.10">
40690         <doc xml:whitespace="preserve">Changes the sorting order of the recently used resources list displayed by</doc>
40691         <return-value transfer-ownership="none">
40692           <type name="none" c:type="void"/>
40693         </return-value>
40694         <parameters>
40695           <parameter name="sort_type" transfer-ownership="none">
40696             <doc xml:whitespace="preserve">sort order that the chooser should use</doc>
40697             <type name="RecentSortType" c:type="GtkRecentSortType"/>
40698           </parameter>
40699         </parameters>
40700       </method>
40701       <method name="unselect_all"
40702               c:identifier="gtk_recent_chooser_unselect_all"
40703               version="2.10">
40704         <doc xml:whitespace="preserve">Unselects all the items inside @chooser.</doc>
40705         <return-value transfer-ownership="none">
40706           <type name="none" c:type="void"/>
40707         </return-value>
40708       </method>
40709       <method name="unselect_uri"
40710               c:identifier="gtk_recent_chooser_unselect_uri"
40711               version="2.10">
40712         <doc xml:whitespace="preserve">Unselects @uri inside @chooser.</doc>
40713         <return-value transfer-ownership="none">
40714           <type name="none" c:type="void"/>
40715         </return-value>
40716         <parameters>
40717           <parameter name="uri" transfer-ownership="none">
40718             <doc xml:whitespace="preserve">a URI</doc>
40719             <type name="utf8" c:type="gchar*"/>
40720           </parameter>
40721         </parameters>
40722       </method>
40723       <property name="filter"
40724                 version="2.10"
40725                 writable="1"
40726                 transfer-ownership="none">
40727         <doc xml:whitespace="preserve">The #GtkRecentFilter object to be used when displaying
40728 the recently used resources.</doc>
40729         <type name="RecentFilter"/>
40730       </property>
40731       <property name="limit"
40732                 version="2.10"
40733                 writable="1"
40734                 transfer-ownership="none">
40735         <doc xml:whitespace="preserve">The maximum number of recently used resources to be displayed,
40736 or -1 to display all items. By default, the
40737 override that limit on a particular instance of #GtkRecentChooser
40738 by setting this property.</doc>
40739         <type name="gint"/>
40740       </property>
40741       <property name="local-only"
40742                 version="2.10"
40743                 writable="1"
40744                 transfer-ownership="none">
40745         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display only local (file:)
40746 resources.</doc>
40747         <type name="gboolean"/>
40748       </property>
40749       <property name="recent-manager"
40750                 version="2.10"
40751                 readable="0"
40752                 writable="1"
40753                 construct-only="1"
40754                 transfer-ownership="none">
40755         <doc xml:whitespace="preserve">The #GtkRecentManager instance used by the #GtkRecentChooser to
40756 display the list of recently used resources.</doc>
40757         <type name="RecentManager"/>
40758       </property>
40759       <property name="select-multiple"
40760                 version="2.10"
40761                 writable="1"
40762                 transfer-ownership="none">
40763         <doc xml:whitespace="preserve">Allow the user to select multiple resources.</doc>
40764         <type name="gboolean"/>
40765       </property>
40766       <property name="show-icons"
40767                 version="2.10"
40768                 writable="1"
40769                 transfer-ownership="none">
40770         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display an icon near the item.</doc>
40771         <type name="gboolean"/>
40772       </property>
40773       <property name="show-not-found"
40774                 version="2.10"
40775                 writable="1"
40776                 transfer-ownership="none">
40777         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display the recently used resources
40778 even if not present anymore. Setting this to %FALSE will perform a
40779 potentially expensive check on every local resource (every remote
40780 resource will always be displayed).</doc>
40781         <type name="gboolean"/>
40782       </property>
40783       <property name="show-private" writable="1" transfer-ownership="none">
40784         <type name="gboolean"/>
40785       </property>
40786       <property name="show-tips"
40787                 version="2.10"
40788                 writable="1"
40789                 transfer-ownership="none">
40790         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display a tooltip containing the
40791 full path of the recently used resources.</doc>
40792         <type name="gboolean"/>
40793       </property>
40794       <property name="sort-type"
40795                 version="2.10"
40796                 writable="1"
40797                 transfer-ownership="none">
40798         <doc xml:whitespace="preserve">Sorting order to be used when displaying the recently used resources.</doc>
40799         <type name="RecentSortType"/>
40800       </property>
40801       <glib:signal name="item-activated">
40802         <return-value transfer-ownership="none">
40803           <type name="none"/>
40804         </return-value>
40805       </glib:signal>
40806       <glib:signal name="selection-changed">
40807         <return-value transfer-ownership="none">
40808           <type name="none"/>
40809         </return-value>
40810       </glib:signal>
40811     </interface>
40812     <class name="RecentChooserDialog"
40813            c:symbol-prefix="recent_chooser_dialog"
40814            c:type="GtkRecentChooserDialog"
40815            parent="Dialog"
40816            glib:type-name="GtkRecentChooserDialog"
40817            glib:get-type="gtk_recent_chooser_dialog_get_type"
40818            glib:type-struct="RecentChooserDialogClass">
40819       <implements name="Atk.ImplementorIface"/>
40820       <implements name="Buildable"/>
40821       <implements name="RecentChooser"/>
40822       <implements name="SizeRequest"/>
40823       <constructor name="new"
40824                    c:identifier="gtk_recent_chooser_dialog_new"
40825                    version="2.10"
40826                    introspectable="0">
40827         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserDialog.  This function is analogous to
40828 gtk_dialog_new_with_buttons().</doc>
40829         <return-value transfer-ownership="none">
40830           <doc xml:whitespace="preserve">a new #GtkRecentChooserDialog</doc>
40831           <type name="Widget" c:type="GtkWidget*"/>
40832         </return-value>
40833         <parameters>
40834           <parameter name="title" transfer-ownership="none" allow-none="1">
40835             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
40836             <type name="utf8" c:type="gchar*"/>
40837           </parameter>
40838           <parameter name="parent" transfer-ownership="none" allow-none="1">
40839             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL,</doc>
40840             <type name="Window" c:type="GtkWindow*"/>
40841           </parameter>
40842           <parameter name="first_button_text"
40843                      transfer-ownership="none"
40844                      allow-none="1">
40845             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
40846             <type name="utf8" c:type="gchar*"/>
40847           </parameter>
40848           <parameter transfer-ownership="none">
40849             <varargs>
40850             </varargs>
40851           </parameter>
40852         </parameters>
40853       </constructor>
40854       <constructor name="new_for_manager"
40855                    c:identifier="gtk_recent_chooser_dialog_new_for_manager"
40856                    version="2.10"
40857                    introspectable="0">
40858         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserDialog with a specified recent manager.
40859 This is useful if you have implemented your own recent manager, or if you
40860 have a customized instance of a #GtkRecentManager object.</doc>
40861         <return-value transfer-ownership="none">
40862           <doc xml:whitespace="preserve">a new #GtkRecentChooserDialog</doc>
40863           <type name="Widget" c:type="GtkWidget*"/>
40864         </return-value>
40865         <parameters>
40866           <parameter name="title" transfer-ownership="none" allow-none="1">
40867             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
40868             <type name="utf8" c:type="gchar*"/>
40869           </parameter>
40870           <parameter name="parent" transfer-ownership="none" allow-none="1">
40871             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL,</doc>
40872             <type name="Window" c:type="GtkWindow*"/>
40873           </parameter>
40874           <parameter name="manager" transfer-ownership="none">
40875             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
40876             <type name="RecentManager" c:type="GtkRecentManager*"/>
40877           </parameter>
40878           <parameter name="first_button_text"
40879                      transfer-ownership="none"
40880                      allow-none="1">
40881             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
40882             <type name="utf8" c:type="gchar*"/>
40883           </parameter>
40884           <parameter transfer-ownership="none">
40885             <varargs>
40886             </varargs>
40887           </parameter>
40888         </parameters>
40889       </constructor>
40890       <field name="parent_instance">
40891         <type name="Dialog" c:type="GtkDialog"/>
40892       </field>
40893       <field name="priv">
40894         <type name="RecentChooserDialogPrivate"
40895               c:type="GtkRecentChooserDialogPrivate*"/>
40896       </field>
40897     </class>
40898     <record name="RecentChooserDialogClass"
40899             c:type="GtkRecentChooserDialogClass"
40900             glib:is-gtype-struct-for="RecentChooserDialog">
40901       <field name="parent_class">
40902         <type name="DialogClass" c:type="GtkDialogClass"/>
40903       </field>
40904     </record>
40905     <record name="RecentChooserDialogPrivate"
40906             c:type="GtkRecentChooserDialogPrivate"
40907             disguised="1">
40908     </record>
40909     <enumeration name="RecentChooserError"
40910                  version="2.10"
40911                  glib:type-name="GtkRecentChooserError"
40912                  glib:get-type="gtk_recent_chooser_error_get_type"
40913                  c:type="GtkRecentChooserError"
40914                  glib:error-quark="gtk_recent_chooser_error_quark">
40915       <doc xml:whitespace="preserve">These identify the various errors that can occur while calling
40916 #GtkRecentChooser functions.</doc>
40917       <member name="not_found"
40918               value="0"
40919               c:identifier="GTK_RECENT_CHOOSER_ERROR_NOT_FOUND"
40920               glib:nick="not-found"/>
40921       <member name="invalid_uri"
40922               value="1"
40923               c:identifier="GTK_RECENT_CHOOSER_ERROR_INVALID_URI"
40924               glib:nick="invalid-uri"/>
40925     </enumeration>
40926     <record name="RecentChooserIface"
40927             c:type="GtkRecentChooserIface"
40928             glib:is-gtype-struct-for="RecentChooser">
40929       <field name="base_iface">
40930         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
40931       </field>
40932       <field name="set_current_uri">
40933         <callback name="set_current_uri" throws="1">
40934           <return-value transfer-ownership="none">
40935             <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
40936             <type name="gboolean" c:type="gboolean"/>
40937           </return-value>
40938           <parameters>
40939             <parameter name="chooser" transfer-ownership="none">
40940               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
40941             </parameter>
40942             <parameter name="uri" transfer-ownership="none">
40943               <doc xml:whitespace="preserve">a URI</doc>
40944               <type name="utf8" c:type="gchar*"/>
40945             </parameter>
40946           </parameters>
40947         </callback>
40948       </field>
40949       <field name="get_current_uri">
40950         <callback name="get_current_uri">
40951           <return-value transfer-ownership="full">
40952             <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
40953             <type name="utf8" c:type="gchar*"/>
40954           </return-value>
40955           <parameters>
40956             <parameter name="chooser" transfer-ownership="none">
40957               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
40958             </parameter>
40959           </parameters>
40960         </callback>
40961       </field>
40962       <field name="select_uri">
40963         <callback name="select_uri" throws="1">
40964           <return-value transfer-ownership="none">
40965             <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
40966             <type name="gboolean" c:type="gboolean"/>
40967           </return-value>
40968           <parameters>
40969             <parameter name="chooser" transfer-ownership="none">
40970               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
40971             </parameter>
40972             <parameter name="uri" transfer-ownership="none">
40973               <doc xml:whitespace="preserve">a URI</doc>
40974               <type name="utf8" c:type="gchar*"/>
40975             </parameter>
40976           </parameters>
40977         </callback>
40978       </field>
40979       <field name="unselect_uri">
40980         <callback name="unselect_uri">
40981           <return-value transfer-ownership="none">
40982             <type name="none" c:type="void"/>
40983           </return-value>
40984           <parameters>
40985             <parameter name="chooser" transfer-ownership="none">
40986               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
40987             </parameter>
40988             <parameter name="uri" transfer-ownership="none">
40989               <doc xml:whitespace="preserve">a URI</doc>
40990               <type name="utf8" c:type="gchar*"/>
40991             </parameter>
40992           </parameters>
40993         </callback>
40994       </field>
40995       <field name="select_all">
40996         <callback name="select_all">
40997           <return-value transfer-ownership="none">
40998             <type name="none" c:type="void"/>
40999           </return-value>
41000           <parameters>
41001             <parameter name="chooser" transfer-ownership="none">
41002               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41003             </parameter>
41004           </parameters>
41005         </callback>
41006       </field>
41007       <field name="unselect_all">
41008         <callback name="unselect_all">
41009           <return-value transfer-ownership="none">
41010             <type name="none" c:type="void"/>
41011           </return-value>
41012           <parameters>
41013             <parameter name="chooser" transfer-ownership="none">
41014               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41015             </parameter>
41016           </parameters>
41017         </callback>
41018       </field>
41019       <field name="get_items">
41020         <callback name="get_items">
41021           <return-value transfer-ownership="full">
41022             <doc xml:whitespace="preserve">A newly allocated</doc>
41023             <type name="GLib.List" c:type="GList*">
41024               <type name="RecentInfo"/>
41025             </type>
41026           </return-value>
41027           <parameters>
41028             <parameter name="chooser" transfer-ownership="none">
41029               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41030             </parameter>
41031           </parameters>
41032         </callback>
41033       </field>
41034       <field name="get_recent_manager" introspectable="0">
41035         <callback name="get_recent_manager" introspectable="0">
41036           <return-value>
41037             <type name="RecentManager" c:type="GtkRecentManager*"/>
41038           </return-value>
41039           <parameters>
41040             <parameter name="chooser" transfer-ownership="none">
41041               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41042             </parameter>
41043           </parameters>
41044         </callback>
41045       </field>
41046       <field name="add_filter">
41047         <callback name="add_filter">
41048           <return-value transfer-ownership="none">
41049             <type name="none" c:type="void"/>
41050           </return-value>
41051           <parameters>
41052             <parameter name="chooser" transfer-ownership="none">
41053               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41054             </parameter>
41055             <parameter name="filter" transfer-ownership="none">
41056               <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
41057               <type name="RecentFilter" c:type="GtkRecentFilter*"/>
41058             </parameter>
41059           </parameters>
41060         </callback>
41061       </field>
41062       <field name="remove_filter">
41063         <callback name="remove_filter">
41064           <return-value transfer-ownership="none">
41065             <type name="none" c:type="void"/>
41066           </return-value>
41067           <parameters>
41068             <parameter name="chooser" transfer-ownership="none">
41069               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41070             </parameter>
41071             <parameter name="filter" transfer-ownership="none">
41072               <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
41073               <type name="RecentFilter" c:type="GtkRecentFilter*"/>
41074             </parameter>
41075           </parameters>
41076         </callback>
41077       </field>
41078       <field name="list_filters">
41079         <callback name="list_filters">
41080           <return-value transfer-ownership="container">
41081             <doc xml:whitespace="preserve">A singly linked list</doc>
41082             <type name="GLib.SList" c:type="GSList*">
41083               <type name="RecentFilter"/>
41084             </type>
41085           </return-value>
41086           <parameters>
41087             <parameter name="chooser" transfer-ownership="none">
41088               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41089             </parameter>
41090           </parameters>
41091         </callback>
41092       </field>
41093       <field name="set_sort_func">
41094         <callback name="set_sort_func">
41095           <return-value transfer-ownership="none">
41096             <type name="none" c:type="void"/>
41097           </return-value>
41098           <parameters>
41099             <parameter name="chooser" transfer-ownership="none">
41100               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41101             </parameter>
41102             <parameter name="sort_func"
41103                        transfer-ownership="none"
41104                        scope="notified"
41105                        closure="2"
41106                        destroy="3">
41107               <doc xml:whitespace="preserve">the comparison function</doc>
41108               <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
41109             </parameter>
41110             <parameter name="sort_data"
41111                        transfer-ownership="none"
41112                        allow-none="1">
41113               <doc xml:whitespace="preserve">user data to pass to @sort_func, or %NULL</doc>
41114               <type name="gpointer" c:type="gpointer"/>
41115             </parameter>
41116             <parameter name="data_destroy"
41117                        transfer-ownership="none"
41118                        allow-none="1"
41119                        scope="async">
41120               <doc xml:whitespace="preserve">destroy notifier for @sort_data, or %NULL</doc>
41121               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
41122             </parameter>
41123           </parameters>
41124         </callback>
41125       </field>
41126       <field name="item_activated">
41127         <callback name="item_activated">
41128           <return-value transfer-ownership="none">
41129             <type name="none" c:type="void"/>
41130           </return-value>
41131           <parameters>
41132             <parameter name="chooser" transfer-ownership="none">
41133               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41134             </parameter>
41135           </parameters>
41136         </callback>
41137       </field>
41138       <field name="selection_changed">
41139         <callback name="selection_changed">
41140           <return-value transfer-ownership="none">
41141             <type name="none" c:type="void"/>
41142           </return-value>
41143           <parameters>
41144             <parameter name="chooser" transfer-ownership="none">
41145               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
41146             </parameter>
41147           </parameters>
41148         </callback>
41149       </field>
41150     </record>
41151     <class name="RecentChooserMenu"
41152            c:symbol-prefix="recent_chooser_menu"
41153            c:type="GtkRecentChooserMenu"
41154            parent="Menu"
41155            glib:type-name="GtkRecentChooserMenu"
41156            glib:get-type="gtk_recent_chooser_menu_get_type"
41157            glib:type-struct="RecentChooserMenuClass">
41158       <implements name="Atk.ImplementorIface"/>
41159       <implements name="Activatable"/>
41160       <implements name="Buildable"/>
41161       <implements name="RecentChooser"/>
41162       <implements name="SizeRequest"/>
41163       <constructor name="new"
41164                    c:identifier="gtk_recent_chooser_menu_new"
41165                    version="2.10">
41166         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserMenu widget.
41167 This kind of widget shows the list of recently used resources as
41168 a menu, each item as a menu item.  Each item inside the menu might
41169 have an icon, representing its MIME type, and a number, for mnemonic
41170 access.
41171 This widget implements the #GtkRecentChooser interface.
41172 This widget creates its own #GtkRecentManager object.  See the
41173 gtk_recent_chooser_menu_new_for_manager() function to know how to create
41174 a #GtkRecentChooserMenu widget bound to another #GtkRecentManager object.</doc>
41175         <return-value transfer-ownership="none">
41176           <doc xml:whitespace="preserve">a new #GtkRecentChooserMenu</doc>
41177           <type name="Widget" c:type="GtkWidget*"/>
41178         </return-value>
41179       </constructor>
41180       <constructor name="new_for_manager"
41181                    c:identifier="gtk_recent_chooser_menu_new_for_manager"
41182                    version="2.10">
41183         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserMenu widget using @manager as
41184 the underlying recently used resources manager.
41185 This is useful if you have implemented your own recent manager,
41186 or if you have a customized instance of a #GtkRecentManager
41187 object or if you wish to share a common #GtkRecentManager object
41188 among multiple #GtkRecentChooser widgets.</doc>
41189         <return-value transfer-ownership="none">
41190           <doc xml:whitespace="preserve">a new #GtkRecentChooserMenu, bound to @manager.</doc>
41191           <type name="Widget" c:type="GtkWidget*"/>
41192         </return-value>
41193         <parameters>
41194           <parameter name="manager" transfer-ownership="none">
41195             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
41196             <type name="RecentManager" c:type="GtkRecentManager*"/>
41197           </parameter>
41198         </parameters>
41199       </constructor>
41200       <method name="get_show_numbers"
41201               c:identifier="gtk_recent_chooser_menu_get_show_numbers"
41202               version="2.10">
41203         <doc xml:whitespace="preserve">Returns the value set by gtk_recent_chooser_menu_set_show_numbers().</doc>
41204         <return-value transfer-ownership="none">
41205           <doc xml:whitespace="preserve">%TRUE if numbers should be shown.</doc>
41206           <type name="gboolean" c:type="gboolean"/>
41207         </return-value>
41208       </method>
41209       <method name="set_show_numbers"
41210               c:identifier="gtk_recent_chooser_menu_set_show_numbers"
41211               version="2.10">
41212         <doc xml:whitespace="preserve">Sets whether a number should be added to the items of @menu.  The
41213 numbers are shown to provide a unique character for a mnemonic to
41214 be used inside ten menu item's label.  Only the first the items
41215 get a number to avoid clashes.</doc>
41216         <return-value transfer-ownership="none">
41217           <type name="none" c:type="void"/>
41218         </return-value>
41219         <parameters>
41220           <parameter name="show_numbers" transfer-ownership="none">
41221             <doc xml:whitespace="preserve">whether to show numbers</doc>
41222             <type name="gboolean" c:type="gboolean"/>
41223           </parameter>
41224         </parameters>
41225       </method>
41226       <property name="show-numbers" writable="1" transfer-ownership="none">
41227         <type name="gboolean"/>
41228       </property>
41229       <field name="parent_instance">
41230         <type name="Menu" c:type="GtkMenu"/>
41231       </field>
41232       <field name="priv" readable="0" private="1">
41233         <type name="RecentChooserMenuPrivate"
41234               c:type="GtkRecentChooserMenuPrivate*"/>
41235       </field>
41236     </class>
41237     <record name="RecentChooserMenuClass"
41238             c:type="GtkRecentChooserMenuClass"
41239             glib:is-gtype-struct-for="RecentChooserMenu">
41240       <field name="parent_class">
41241         <type name="MenuClass" c:type="GtkMenuClass"/>
41242       </field>
41243       <field name="gtk_recent1">
41244         <callback name="gtk_recent1">
41245           <return-value transfer-ownership="none">
41246             <type name="none" c:type="void"/>
41247           </return-value>
41248         </callback>
41249       </field>
41250       <field name="gtk_recent2">
41251         <callback name="gtk_recent2">
41252           <return-value transfer-ownership="none">
41253             <type name="none" c:type="void"/>
41254           </return-value>
41255         </callback>
41256       </field>
41257       <field name="gtk_recent3">
41258         <callback name="gtk_recent3">
41259           <return-value transfer-ownership="none">
41260             <type name="none" c:type="void"/>
41261           </return-value>
41262         </callback>
41263       </field>
41264       <field name="gtk_recent4">
41265         <callback name="gtk_recent4">
41266           <return-value transfer-ownership="none">
41267             <type name="none" c:type="void"/>
41268           </return-value>
41269         </callback>
41270       </field>
41271     </record>
41272     <record name="RecentChooserMenuPrivate"
41273             c:type="GtkRecentChooserMenuPrivate"
41274             disguised="1">
41275     </record>
41276     <class name="RecentChooserWidget"
41277            c:symbol-prefix="recent_chooser_widget"
41278            c:type="GtkRecentChooserWidget"
41279            parent="VBox"
41280            glib:type-name="GtkRecentChooserWidget"
41281            glib:get-type="gtk_recent_chooser_widget_get_type"
41282            glib:type-struct="RecentChooserWidgetClass">
41283       <implements name="Atk.ImplementorIface"/>
41284       <implements name="Buildable"/>
41285       <implements name="Orientable"/>
41286       <implements name="RecentChooser"/>
41287       <implements name="SizeRequest"/>
41288       <constructor name="new"
41289                    c:identifier="gtk_recent_chooser_widget_new"
41290                    version="2.10">
41291         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserWidget object.  This is an embeddable widget
41292 used to access the recently used resources list.</doc>
41293         <return-value transfer-ownership="none">
41294           <doc xml:whitespace="preserve">a new #GtkRecentChooserWidget</doc>
41295           <type name="Widget" c:type="GtkWidget*"/>
41296         </return-value>
41297       </constructor>
41298       <constructor name="new_for_manager"
41299                    c:identifier="gtk_recent_chooser_widget_new_for_manager"
41300                    version="2.10">
41301         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserWidget with a specified recent manager.
41302 This is useful if you have implemented your own recent manager, or if you
41303 have a customized instance of a #GtkRecentManager object.</doc>
41304         <return-value transfer-ownership="none">
41305           <doc xml:whitespace="preserve">a new #GtkRecentChooserWidget</doc>
41306           <type name="Widget" c:type="GtkWidget*"/>
41307         </return-value>
41308         <parameters>
41309           <parameter name="manager" transfer-ownership="none">
41310             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
41311             <type name="RecentManager" c:type="GtkRecentManager*"/>
41312           </parameter>
41313         </parameters>
41314       </constructor>
41315       <field name="parent_instance">
41316         <type name="VBox" c:type="GtkVBox"/>
41317       </field>
41318       <field name="priv" readable="0" private="1">
41319         <type name="RecentChooserWidgetPrivate"
41320               c:type="GtkRecentChooserWidgetPrivate*"/>
41321       </field>
41322     </class>
41323     <record name="RecentChooserWidgetClass"
41324             c:type="GtkRecentChooserWidgetClass"
41325             glib:is-gtype-struct-for="RecentChooserWidget">
41326       <field name="parent_class">
41327         <type name="VBoxClass" c:type="GtkVBoxClass"/>
41328       </field>
41329     </record>
41330     <record name="RecentChooserWidgetPrivate"
41331             c:type="GtkRecentChooserWidgetPrivate"
41332             disguised="1">
41333     </record>
41334     <record name="RecentData" c:type="GtkRecentData">
41335       <doc xml:whitespace="preserve">Meta-data to be passed to gtk_recent_manager_add_full() when
41336 registering a recently used resource.</doc>
41337       <field name="display_name" writable="1">
41338         <type name="utf8" c:type="gchar*"/>
41339       </field>
41340       <field name="description" writable="1">
41341         <type name="utf8" c:type="gchar*"/>
41342       </field>
41343       <field name="mime_type" writable="1">
41344         <type name="utf8" c:type="gchar*"/>
41345       </field>
41346       <field name="app_name" writable="1">
41347         <type name="utf8" c:type="gchar*"/>
41348       </field>
41349       <field name="app_exec" writable="1">
41350         <type name="utf8" c:type="gchar*"/>
41351       </field>
41352       <field name="groups" writable="1">
41353         <type name="utf8" c:type="gchar**"/>
41354       </field>
41355       <field name="is_private" writable="1">
41356         <type name="gboolean" c:type="gboolean"/>
41357       </field>
41358     </record>
41359     <class name="RecentFilter"
41360            c:symbol-prefix="recent_filter"
41361            c:type="GtkRecentFilter"
41362            parent="Object"
41363            glib:type-name="GtkRecentFilter"
41364            glib:get-type="gtk_recent_filter_get_type">
41365       <constructor name="new"
41366                    c:identifier="gtk_recent_filter_new"
41367                    version="2.10">
41368         <doc xml:whitespace="preserve">Creates a new #GtkRecentFilter with no rules added to it.
41369 Such filter does not accept any recently used resources, so is not
41370 particularly useful until you add rules with
41371 gtk_recent_filter_add_pattern(), gtk_recent_filter_add_mime_type(),
41372 gtk_recent_filter_add_application(), gtk_recent_filter_add_age().
41373 To create a filter that accepts any recently used resource, use:
41374 |[
41375 GtkRecentFilter *filter = gtk_recent_filter_new ();
41376 gtk_recent_filter_add_pattern (filter, "*");
41377 ]|</doc>
41378         <return-value transfer-ownership="none">
41379           <doc xml:whitespace="preserve">a new #GtkRecentFilter</doc>
41380           <type name="RecentFilter" c:type="GtkRecentFilter*"/>
41381         </return-value>
41382       </constructor>
41383       <method name="add_age"
41384               c:identifier="gtk_recent_filter_add_age"
41385               version="2.10">
41386         <doc xml:whitespace="preserve">Adds a rule that allows resources based on their age - that is, the number
41387 of days elapsed since they were last modified.</doc>
41388         <return-value transfer-ownership="none">
41389           <type name="none" c:type="void"/>
41390         </return-value>
41391         <parameters>
41392           <parameter name="days" transfer-ownership="none">
41393             <doc xml:whitespace="preserve">number of days</doc>
41394             <type name="gint" c:type="gint"/>
41395           </parameter>
41396         </parameters>
41397       </method>
41398       <method name="add_application"
41399               c:identifier="gtk_recent_filter_add_application"
41400               version="2.10">
41401         <doc xml:whitespace="preserve">Adds a rule that allows resources based on the name of the application
41402 that has registered them.</doc>
41403         <return-value transfer-ownership="none">
41404           <type name="none" c:type="void"/>
41405         </return-value>
41406         <parameters>
41407           <parameter name="application" transfer-ownership="none">
41408             <doc xml:whitespace="preserve">an application name</doc>
41409             <type name="utf8" c:type="gchar*"/>
41410           </parameter>
41411         </parameters>
41412       </method>
41413       <method name="add_custom"
41414               c:identifier="gtk_recent_filter_add_custom"
41415               version="2.10">
41416         <doc xml:whitespace="preserve">Adds a rule to a filter that allows resources based on a custom callback
41417 function. The bitfield @needed which is passed in provides information
41418 about what sorts of information that the filter function needs;
41419 this allows GTK+ to avoid retrieving expensive information when
41420 it isn't needed by the filter.</doc>
41421         <return-value transfer-ownership="none">
41422           <type name="none" c:type="void"/>
41423         </return-value>
41424         <parameters>
41425           <parameter name="needed" transfer-ownership="none">
41426             <doc xml:whitespace="preserve">bitfield of flags indicating the information that the custom filter function needs.</doc>
41427             <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
41428           </parameter>
41429           <parameter name="func"
41430                      transfer-ownership="none"
41431                      scope="notified"
41432                      closure="2"
41433                      destroy="3">
41434             <doc xml:whitespace="preserve">callback function; if the function returns %TRUE, then the file will be displayed.</doc>
41435             <type name="RecentFilterFunc" c:type="GtkRecentFilterFunc"/>
41436           </parameter>
41437           <parameter name="data" transfer-ownership="none">
41438             <doc xml:whitespace="preserve">data to pass to @func</doc>
41439             <type name="gpointer" c:type="gpointer"/>
41440           </parameter>
41441           <parameter name="data_destroy"
41442                      transfer-ownership="none"
41443                      scope="async">
41444             <doc xml:whitespace="preserve">function to call to free @data when it is no longer needed.</doc>
41445             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
41446           </parameter>
41447         </parameters>
41448       </method>
41449       <method name="add_group"
41450               c:identifier="gtk_recent_filter_add_group"
41451               version="2.10">
41452         <doc xml:whitespace="preserve">Adds a rule that allows resources based on the name of the group
41453 to which they belong</doc>
41454         <return-value transfer-ownership="none">
41455           <type name="none" c:type="void"/>
41456         </return-value>
41457         <parameters>
41458           <parameter name="group" transfer-ownership="none">
41459             <doc xml:whitespace="preserve">a group name</doc>
41460             <type name="utf8" c:type="gchar*"/>
41461           </parameter>
41462         </parameters>
41463       </method>
41464       <method name="add_mime_type"
41465               c:identifier="gtk_recent_filter_add_mime_type"
41466               version="2.10">
41467         <doc xml:whitespace="preserve">Adds a rule that allows resources based on their registered MIME type.</doc>
41468         <return-value transfer-ownership="none">
41469           <type name="none" c:type="void"/>
41470         </return-value>
41471         <parameters>
41472           <parameter name="mime_type" transfer-ownership="none">
41473             <doc xml:whitespace="preserve">a MIME type</doc>
41474             <type name="utf8" c:type="gchar*"/>
41475           </parameter>
41476         </parameters>
41477       </method>
41478       <method name="add_pattern"
41479               c:identifier="gtk_recent_filter_add_pattern"
41480               version="2.10">
41481         <doc xml:whitespace="preserve">Adds a rule that allows resources based on a pattern matching their
41482 display name.</doc>
41483         <return-value transfer-ownership="none">
41484           <type name="none" c:type="void"/>
41485         </return-value>
41486         <parameters>
41487           <parameter name="pattern" transfer-ownership="none">
41488             <doc xml:whitespace="preserve">a file pattern</doc>
41489             <type name="utf8" c:type="gchar*"/>
41490           </parameter>
41491         </parameters>
41492       </method>
41493       <method name="add_pixbuf_formats"
41494               c:identifier="gtk_recent_filter_add_pixbuf_formats"
41495               version="2.10">
41496         <doc xml:whitespace="preserve">Adds a rule allowing image files in the formats supported
41497 by GdkPixbuf.</doc>
41498         <return-value transfer-ownership="none">
41499           <type name="none" c:type="void"/>
41500         </return-value>
41501       </method>
41502       <method name="filter"
41503               c:identifier="gtk_recent_filter_filter"
41504               version="2.10">
41505         <doc xml:whitespace="preserve">Tests whether a file should be displayed according to @filter.
41506 The #GtkRecentFilterInfo structure @filter_info should include
41507 the fields returned from gtk_recent_filter_get_needed().
41508 This function will not typically be used by applications; it
41509 is intended principally for use in the implementation of
41510 #GtkRecentChooser.</doc>
41511         <return-value transfer-ownership="none">
41512           <doc xml:whitespace="preserve">%TRUE if the file should be displayed</doc>
41513           <type name="gboolean" c:type="gboolean"/>
41514         </return-value>
41515         <parameters>
41516           <parameter name="filter_info" transfer-ownership="none">
41517             <doc xml:whitespace="preserve">a #GtkRecentFilterInfo structure containing information about a recently used resource</doc>
41518             <type name="RecentFilterInfo" c:type="GtkRecentFilterInfo*"/>
41519           </parameter>
41520         </parameters>
41521       </method>
41522       <method name="get_name"
41523               c:identifier="gtk_recent_filter_get_name"
41524               version="2.10">
41525         <doc xml:whitespace="preserve">Gets the human-readable name for the filter.
41526 See gtk_recent_filter_set_name().
41527 is owned by the filter object and should not be freed.</doc>
41528         <return-value transfer-ownership="none">
41529           <doc xml:whitespace="preserve">the name of the filter, or %NULL.  The returned string</doc>
41530           <type name="utf8" c:type="gchar*"/>
41531         </return-value>
41532       </method>
41533       <method name="get_needed"
41534               c:identifier="gtk_recent_filter_get_needed"
41535               version="2.10">
41536         <doc xml:whitespace="preserve">Gets the fields that need to be filled in for the structure
41537 passed to gtk_recent_filter_filter()
41538 This function will not typically be used by applications; it
41539 is intended principally for use in the implementation of
41540 #GtkRecentChooser.
41541 calling gtk_recent_filter_filter()</doc>
41542         <return-value transfer-ownership="none">
41543           <doc xml:whitespace="preserve">bitfield of flags indicating needed fields when</doc>
41544           <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
41545         </return-value>
41546       </method>
41547       <method name="set_name"
41548               c:identifier="gtk_recent_filter_set_name"
41549               version="2.10">
41550         <doc xml:whitespace="preserve">Sets the human-readable name of the filter; this is the string
41551 that will be displayed in the recently used resources selector
41552 user interface if there is a selectable list of filters.</doc>
41553         <return-value transfer-ownership="none">
41554           <type name="none" c:type="void"/>
41555         </return-value>
41556         <parameters>
41557           <parameter name="name" transfer-ownership="none">
41558             <doc xml:whitespace="preserve">then human readable name of @filter</doc>
41559             <type name="utf8" c:type="gchar*"/>
41560           </parameter>
41561         </parameters>
41562       </method>
41563     </class>
41564     <bitfield name="RecentFilterFlags"
41565               glib:type-name="GtkRecentFilterFlags"
41566               glib:get-type="gtk_recent_filter_flags_get_type"
41567               c:type="GtkRecentFilterFlags">
41568       <member name="uri"
41569               value="1"
41570               c:identifier="GTK_RECENT_FILTER_URI"
41571               glib:nick="uri"/>
41572       <member name="display_name"
41573               value="2"
41574               c:identifier="GTK_RECENT_FILTER_DISPLAY_NAME"
41575               glib:nick="display-name"/>
41576       <member name="mime_type"
41577               value="4"
41578               c:identifier="GTK_RECENT_FILTER_MIME_TYPE"
41579               glib:nick="mime-type"/>
41580       <member name="application"
41581               value="8"
41582               c:identifier="GTK_RECENT_FILTER_APPLICATION"
41583               glib:nick="application"/>
41584       <member name="group"
41585               value="16"
41586               c:identifier="GTK_RECENT_FILTER_GROUP"
41587               glib:nick="group"/>
41588       <member name="age"
41589               value="32"
41590               c:identifier="GTK_RECENT_FILTER_AGE"
41591               glib:nick="age"/>
41592     </bitfield>
41593     <callback name="RecentFilterFunc" c:type="GtkRecentFilterFunc">
41594       <return-value transfer-ownership="none">
41595         <type name="gboolean" c:type="gboolean"/>
41596       </return-value>
41597       <parameters>
41598         <parameter name="filter_info" transfer-ownership="none">
41599           <type name="RecentFilterInfo" c:type="GtkRecentFilterInfo*"/>
41600         </parameter>
41601         <parameter name="user_data" transfer-ownership="none" closure="1">
41602           <type name="gpointer" c:type="gpointer"/>
41603         </parameter>
41604       </parameters>
41605     </callback>
41606     <record name="RecentFilterInfo" c:type="GtkRecentFilterInfo">
41607       <field name="contains" writable="1">
41608         <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
41609       </field>
41610       <field name="uri" writable="1">
41611         <type name="utf8" c:type="gchar*"/>
41612       </field>
41613       <field name="display_name" writable="1">
41614         <type name="utf8" c:type="gchar*"/>
41615       </field>
41616       <field name="mime_type" writable="1">
41617         <type name="utf8" c:type="gchar*"/>
41618       </field>
41619       <field name="applications" writable="1">
41620         <type name="utf8" c:type="gchar**"/>
41621       </field>
41622       <field name="groups" writable="1">
41623         <type name="utf8" c:type="gchar**"/>
41624       </field>
41625       <field name="age" writable="1">
41626         <type name="gint" c:type="gint"/>
41627       </field>
41628     </record>
41629     <record name="RecentInfo"
41630             c:type="GtkRecentInfo"
41631             version="2.10"
41632             glib:type-name="GtkRecentInfo"
41633             glib:get-type="gtk_recent_info_get_type"
41634             c:symbol-prefix="recent_info">
41635       <doc xml:whitespace="preserve">#GtkRecentInfo is an opaque data structure
41636 whose members can only be accessed using the provided API.
41637 #GtkRecentInfo constains all the meta-data
41638 associated with an entry in the recently used files list.</doc>
41639       <method name="exists"
41640               c:identifier="gtk_recent_info_exists"
41641               version="2.10">
41642         <doc xml:whitespace="preserve">Checks whether the resource pointed by @info still exists.  At
41643 the moment this check is done only on resources pointing to local files.</doc>
41644         <return-value transfer-ownership="none">
41645           <doc xml:whitespace="preserve">%TRUE if the resource exists</doc>
41646           <type name="gboolean" c:type="gboolean"/>
41647         </return-value>
41648       </method>
41649       <method name="get_added"
41650               c:identifier="gtk_recent_info_get_added"
41651               version="2.10">
41652         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
41653 was added to the recently used resources list.
41654 the resource was added to the list, or -1 on failure.</doc>
41655         <return-value transfer-ownership="none">
41656           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
41657           <type name="glong" c:type="time_t"/>
41658         </return-value>
41659       </method>
41660       <method name="get_age"
41661               c:identifier="gtk_recent_info_get_age"
41662               version="2.10">
41663         <doc xml:whitespace="preserve">Gets the number of days elapsed since the last update of the resource
41664 pointed by @info.
41665 since the time this resource was last modified.</doc>
41666         <return-value transfer-ownership="none">
41667           <doc xml:whitespace="preserve">a positive integer containing the number of days elapsed</doc>
41668           <type name="gint" c:type="gint"/>
41669         </return-value>
41670       </method>
41671       <method name="get_application_info"
41672               c:identifier="gtk_recent_info_get_application_info"
41673               version="2.10">
41674         <doc xml:whitespace="preserve">Gets the data regarding the application that has registered the resource
41675 pointed by @info.
41676 If the command line contains any escape characters defined inside the
41677 storage specification, they will be expanded.
41678 resource inside the recently used list, or %FALSE otherwise. The
41679 modified or freed</doc>
41680         <return-value transfer-ownership="none">
41681           <doc xml:whitespace="preserve">%TRUE if an application with @app_name has registered this</doc>
41682           <type name="gboolean" c:type="gboolean"/>
41683         </return-value>
41684         <parameters>
41685           <parameter name="app_name" transfer-ownership="none">
41686             <doc xml:whitespace="preserve">the name of the application that has registered this item</doc>
41687             <type name="utf8" c:type="gchar*"/>
41688           </parameter>
41689           <parameter name="app_exec"
41690                      direction="out"
41691                      caller-allocates="0"
41692                      transfer-ownership="none">
41693             <doc xml:whitespace="preserve">return location for the string containing the command line</doc>
41694             <type name="utf8" c:type="gchar**"/>
41695           </parameter>
41696           <parameter name="count"
41697                      direction="out"
41698                      caller-allocates="0"
41699                      transfer-ownership="full">
41700             <doc xml:whitespace="preserve">return location for the number of times this item was registered</doc>
41701             <type name="guint" c:type="guint*"/>
41702           </parameter>
41703           <parameter name="time_"
41704                      direction="out"
41705                      caller-allocates="0"
41706                      transfer-ownership="full">
41707             <doc xml:whitespace="preserve">return location for the timestamp this item was last registered for this application</doc>
41708             <type name="glong" c:type="time_t*"/>
41709           </parameter>
41710         </parameters>
41711       </method>
41712       <method name="get_applications"
41713               c:identifier="gtk_recent_info_get_applications"
41714               version="2.10">
41715         <doc xml:whitespace="preserve">Retrieves the list of applications that have registered this resource.
41716 a newly allocated %NULL-terminated array of strings.
41717 Use g_strfreev() to free it.</doc>
41718         <return-value transfer-ownership="full">
41719           <array length="0" c:type="gchar**">
41720             <type name="utf8"/>
41721           </array>
41722         </return-value>
41723         <parameters>
41724           <parameter name="length"
41725                      direction="out"
41726                      caller-allocates="0"
41727                      transfer-ownership="full"
41728                      allow-none="1">
41729             <doc xml:whitespace="preserve">return location for the length of the returned list</doc>
41730             <type name="gulong" c:type="gsize*"/>
41731           </parameter>
41732         </parameters>
41733       </method>
41734       <method name="get_description"
41735               c:identifier="gtk_recent_info_get_description"
41736               version="2.10">
41737         <doc xml:whitespace="preserve">Gets the (short) description of the resource.
41738 is owned by the recent manager, and should not be freed.</doc>
41739         <return-value transfer-ownership="none">
41740           <doc xml:whitespace="preserve">the description of the resource.  The returned string</doc>
41741           <type name="utf8" c:type="gchar*"/>
41742         </return-value>
41743       </method>
41744       <method name="get_display_name"
41745               c:identifier="gtk_recent_info_get_display_name"
41746               version="2.10">
41747         <doc xml:whitespace="preserve">Gets the name of the resource.  If none has been defined, the basename
41748 of the resource is obtained.
41749 is owned by the recent manager, and should not be freed.</doc>
41750         <return-value transfer-ownership="none">
41751           <doc xml:whitespace="preserve">the display name of the resource.  The returned string</doc>
41752           <type name="utf8" c:type="gchar*"/>
41753         </return-value>
41754       </method>
41755       <method name="get_groups"
41756               c:identifier="gtk_recent_info_get_groups"
41757               version="2.10">
41758         <doc xml:whitespace="preserve">Returns all groups registered for the recently used item @info.  The
41759 array of returned group names will be %NULL terminated, so length might
41760 optionally be %NULL.
41761 a newly allocated %NULL terminated array of strings.
41762 Use g_strfreev() to free it.</doc>
41763         <return-value transfer-ownership="full">
41764           <array length="0" c:type="gchar**">
41765             <type name="utf8"/>
41766           </array>
41767         </return-value>
41768         <parameters>
41769           <parameter name="length"
41770                      direction="out"
41771                      caller-allocates="0"
41772                      transfer-ownership="full"
41773                      allow-none="1">
41774             <doc xml:whitespace="preserve">return location for the number of groups returned</doc>
41775             <type name="gulong" c:type="gsize*"/>
41776           </parameter>
41777         </parameters>
41778       </method>
41779       <method name="get_icon"
41780               c:identifier="gtk_recent_info_get_icon"
41781               version="2.10">
41782         <doc xml:whitespace="preserve">Retrieves the icon of size @size associated to the resource MIME type.
41783 or %NULL. Use g_object_unref() when finished using the icon.</doc>
41784         <return-value transfer-ownership="full">
41785           <doc xml:whitespace="preserve">a #GdkPixbuf containing the icon,</doc>
41786           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
41787         </return-value>
41788         <parameters>
41789           <parameter name="size" transfer-ownership="none">
41790             <doc xml:whitespace="preserve">the size of the icon in pixels</doc>
41791             <type name="gint" c:type="gint"/>
41792           </parameter>
41793         </parameters>
41794       </method>
41795       <method name="get_mime_type"
41796               c:identifier="gtk_recent_info_get_mime_type"
41797               version="2.10">
41798         <doc xml:whitespace="preserve">Gets the MIME type of the resource.
41799 is owned by the recent manager, and should not be freed.</doc>
41800         <return-value transfer-ownership="none">
41801           <doc xml:whitespace="preserve">the MIME type of the resource.  The returned string</doc>
41802           <type name="utf8" c:type="gchar*"/>
41803         </return-value>
41804       </method>
41805       <method name="get_modified"
41806               c:identifier="gtk_recent_info_get_modified"
41807               version="2.10">
41808         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
41809 was last modified.
41810 the resource was last modified, or -1 on failure.</doc>
41811         <return-value transfer-ownership="none">
41812           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
41813           <type name="glong" c:type="time_t"/>
41814         </return-value>
41815       </method>
41816       <method name="get_private_hint"
41817               c:identifier="gtk_recent_info_get_private_hint"
41818               version="2.10">
41819         <doc xml:whitespace="preserve">Gets the value of the "private" flag.  Resources in the recently used
41820 list that have this flag set to %TRUE should only be displayed by the
41821 applications that have registered them.</doc>
41822         <return-value transfer-ownership="none">
41823           <doc xml:whitespace="preserve">%TRUE if the private flag was found, %FALSE otherwise.</doc>
41824           <type name="gboolean" c:type="gboolean"/>
41825         </return-value>
41826       </method>
41827       <method name="get_short_name"
41828               c:identifier="gtk_recent_info_get_short_name"
41829               version="2.10">
41830         <doc xml:whitespace="preserve">Computes a valid UTF-8 string that can be used as the name of the item in a
41831 menu or list.  For example, calling this function on an item that refers to
41832 "file:///foo/bar.txt" will yield "bar.txt".
41833 g_free().</doc>
41834         <return-value transfer-ownership="full">
41835           <doc xml:whitespace="preserve">A newly-allocated string in UTF-8 encoding; free it with</doc>
41836           <type name="utf8" c:type="gchar*"/>
41837         </return-value>
41838       </method>
41839       <method name="get_uri"
41840               c:identifier="gtk_recent_info_get_uri"
41841               version="2.10">
41842         <doc xml:whitespace="preserve">Gets the URI of the resource.
41843 owned by the recent manager, and should not be freed.</doc>
41844         <return-value transfer-ownership="none">
41845           <doc xml:whitespace="preserve">the URI of the resource.  The returned string is</doc>
41846           <type name="utf8" c:type="gchar*"/>
41847         </return-value>
41848       </method>
41849       <method name="get_uri_display"
41850               c:identifier="gtk_recent_info_get_uri_display"
41851               version="2.10">
41852         <doc xml:whitespace="preserve">Gets a displayable version of the resource's URI.  If the resource
41853 is local, it returns a local path; if the resource is not local,
41854 it returns the UTF-8 encoded content of gtk_recent_info_get_uri().
41855 resource's URI or %NULL. Use g_free() when done using it.</doc>
41856         <return-value transfer-ownership="full">
41857           <doc xml:whitespace="preserve">a newly allocated UTF-8 string containing the</doc>
41858           <type name="utf8" c:type="gchar*"/>
41859         </return-value>
41860       </method>
41861       <method name="get_visited"
41862               c:identifier="gtk_recent_info_get_visited"
41863               version="2.10">
41864         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
41865 was last visited.
41866 the resource was last visited, or -1 on failure.</doc>
41867         <return-value transfer-ownership="none">
41868           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
41869           <type name="glong" c:type="time_t"/>
41870         </return-value>
41871       </method>
41872       <method name="has_application"
41873               c:identifier="gtk_recent_info_has_application"
41874               version="2.10">
41875         <doc xml:whitespace="preserve">Checks whether an application registered this resource using @app_name.
41876 %FALSE otherwise.</doc>
41877         <return-value transfer-ownership="none">
41878           <doc xml:whitespace="preserve">%TRUE if an application with name @app_name was found,</doc>
41879           <type name="gboolean" c:type="gboolean"/>
41880         </return-value>
41881         <parameters>
41882           <parameter name="app_name" transfer-ownership="none">
41883             <doc xml:whitespace="preserve">a string containing an application name</doc>
41884             <type name="utf8" c:type="gchar*"/>
41885           </parameter>
41886         </parameters>
41887       </method>
41888       <method name="has_group"
41889               c:identifier="gtk_recent_info_has_group"
41890               version="2.10">
41891         <doc xml:whitespace="preserve">Checks whether @group_name appears inside the groups registered for the
41892 recently used item @info.</doc>
41893         <return-value transfer-ownership="none">
41894           <doc xml:whitespace="preserve">%TRUE if the group was found.</doc>
41895           <type name="gboolean" c:type="gboolean"/>
41896         </return-value>
41897         <parameters>
41898           <parameter name="group_name" transfer-ownership="none">
41899             <doc xml:whitespace="preserve">name of a group</doc>
41900             <type name="utf8" c:type="gchar*"/>
41901           </parameter>
41902         </parameters>
41903       </method>
41904       <method name="is_local"
41905               c:identifier="gtk_recent_info_is_local"
41906               version="2.10">
41907         <doc xml:whitespace="preserve">Checks whether the resource is local or not by looking at the
41908 scheme of its URI.</doc>
41909         <return-value transfer-ownership="none">
41910           <doc xml:whitespace="preserve">%TRUE if the resource is local.</doc>
41911           <type name="gboolean" c:type="gboolean"/>
41912         </return-value>
41913       </method>
41914       <method name="last_application"
41915               c:identifier="gtk_recent_info_last_application"
41916               version="2.10">
41917         <doc xml:whitespace="preserve">Gets the name of the last application that have registered the
41918 recently used resource represented by @info.</doc>
41919         <return-value transfer-ownership="full">
41920           <doc xml:whitespace="preserve">an application name.  Use g_free() to free it.</doc>
41921           <type name="utf8" c:type="gchar*"/>
41922         </return-value>
41923       </method>
41924       <method name="match" c:identifier="gtk_recent_info_match" version="2.10">
41925         <doc xml:whitespace="preserve">Checks whether two #GtkRecentInfo structures point to the same
41926 resource.
41927 resource, %FALSE otherwise.</doc>
41928         <return-value transfer-ownership="none">
41929           <doc xml:whitespace="preserve">%TRUE if both #GtkRecentInfo structures point to se same</doc>
41930           <type name="gboolean" c:type="gboolean"/>
41931         </return-value>
41932         <parameters>
41933           <parameter name="info_b" transfer-ownership="none">
41934             <doc xml:whitespace="preserve">a #GtkRecentInfo</doc>
41935             <type name="RecentInfo" c:type="GtkRecentInfo*"/>
41936           </parameter>
41937         </parameters>
41938       </method>
41939       <method name="ref" c:identifier="gtk_recent_info_ref" version="2.10">
41940         <doc xml:whitespace="preserve">Increases the reference count of @recent_info by one.
41941 by one.</doc>
41942         <return-value transfer-ownership="full">
41943           <doc xml:whitespace="preserve">the recent info object with its reference count increased</doc>
41944           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
41945         </return-value>
41946       </method>
41947       <method name="unref" c:identifier="gtk_recent_info_unref" version="2.10">
41948         <doc xml:whitespace="preserve">Decreases the reference count of @info by one.  If the reference
41949 count reaches zero, @info is deallocated, and the memory freed.</doc>
41950         <return-value transfer-ownership="none">
41951           <type name="none" c:type="void"/>
41952         </return-value>
41953       </method>
41954     </record>
41955     <class name="RecentManager"
41956            c:symbol-prefix="recent_manager"
41957            c:type="GtkRecentManager"
41958            version="2.10"
41959            parent="GObject.Object"
41960            glib:type-name="GtkRecentManager"
41961            glib:get-type="gtk_recent_manager_get_type"
41962            glib:type-struct="RecentManagerClass">
41963       <doc xml:whitespace="preserve">#GtkRecentManager contains only private data
41964 and should be accessed using the provided API.</doc>
41965       <constructor name="new"
41966                    c:identifier="gtk_recent_manager_new"
41967                    version="2.10">
41968         <doc xml:whitespace="preserve">Creates a new recent manager object.  Recent manager objects are used to
41969 handle the list of recently used resources.  A #GtkRecentManager object
41970 monitors the recently used resources list, and emits the "changed" signal
41971 each time something inside the list changes.
41972 #GtkRecentManager objects are expensive: be sure to create them only when
41973 needed. You should use gtk_recent_manager_get_default() instead.</doc>
41974         <return-value transfer-ownership="full">
41975           <doc xml:whitespace="preserve">A newly created #GtkRecentManager object.</doc>
41976           <type name="RecentManager" c:type="GtkRecentManager*"/>
41977         </return-value>
41978       </constructor>
41979       <function name="get_default"
41980                 c:identifier="gtk_recent_manager_get_default"
41981                 version="2.10">
41982         <doc xml:whitespace="preserve">Gets a unique instance of #GtkRecentManager, that you can share
41983 in your application without caring about memory management. The
41984 returned instance will be freed when you application terminates.</doc>
41985         <return-value transfer-ownership="none">
41986           <doc xml:whitespace="preserve">A unique #GtkRecentManager. Do not ref or unref it.</doc>
41987           <type name="RecentManager" c:type="GtkRecentManager*"/>
41988         </return-value>
41989       </function>
41990       <method name="add_full"
41991               c:identifier="gtk_recent_manager_add_full"
41992               version="2.10">
41993         <doc xml:whitespace="preserve">Adds a new resource, pointed by @uri, into the recently used
41994 resources list, using the metadata specified inside the #GtkRecentData
41995 structure passed in @recent_data.
41996 The passed URI will be used to identify this resource inside the
41997 list.
41998 In order to register the new recently used resource, metadata about
41999 the resource must be passed as well as the URI; the metadata is
42000 stored in a #GtkRecentData structure, which must contain the MIME
42001 type of the resource pointed by the URI; the name of the application
42002 that is registering the item, and a command line to be used when
42003 launching the item.
42004 Optionally, a #GtkRecentData structure might contain a UTF-8 string
42005 to be used when viewing the item instead of the last component of the
42006 URI; a short description of the item; whether the item should be
42007 considered private - that is, should be displayed only by the
42008 applications that have registered it.
42009 recently used resources list, %FALSE otherwise.</doc>
42010         <return-value transfer-ownership="none">
42011           <doc xml:whitespace="preserve">%TRUE if the new item was successfully added to the</doc>
42012           <type name="gboolean" c:type="gboolean"/>
42013         </return-value>
42014         <parameters>
42015           <parameter name="uri" transfer-ownership="none">
42016             <doc xml:whitespace="preserve">a valid URI</doc>
42017             <type name="utf8" c:type="gchar*"/>
42018           </parameter>
42019           <parameter name="recent_data" transfer-ownership="none">
42020             <doc xml:whitespace="preserve">metadata of the resource</doc>
42021             <type name="RecentData" c:type="GtkRecentData*"/>
42022           </parameter>
42023         </parameters>
42024       </method>
42025       <method name="add_item"
42026               c:identifier="gtk_recent_manager_add_item"
42027               version="2.10">
42028         <doc xml:whitespace="preserve">Adds a new resource, pointed by @uri, into the recently used
42029 resources list.
42030 This function automatically retrieves some of the needed
42031 metadata and setting other metadata to common default values; it
42032 then feeds the data to gtk_recent_manager_add_full().
42033 See gtk_recent_manager_add_full() if you want to explicitly
42034 define the metadata for the resource pointed by @uri.
42035 to the recently used resources list</doc>
42036         <return-value transfer-ownership="none">
42037           <doc xml:whitespace="preserve">%TRUE if the new item was successfully added</doc>
42038           <type name="gboolean" c:type="gboolean"/>
42039         </return-value>
42040         <parameters>
42041           <parameter name="uri" transfer-ownership="none">
42042             <doc xml:whitespace="preserve">a valid URI</doc>
42043             <type name="utf8" c:type="gchar*"/>
42044           </parameter>
42045         </parameters>
42046       </method>
42047       <method name="get_items"
42048               c:identifier="gtk_recent_manager_get_items"
42049               version="2.10">
42050         <doc xml:whitespace="preserve">Gets the list of recently used resources.
42051 newly allocated #GtkRecentInfo objects. Use
42052 gtk_recent_info_unref() on each item inside the list, and then
42053 free the list itself using g_list_free().</doc>
42054         <return-value transfer-ownership="full">
42055           <doc xml:whitespace="preserve">a list of</doc>
42056           <type name="GLib.List" c:type="GList*">
42057             <type name="RecentInfo"/>
42058           </type>
42059         </return-value>
42060       </method>
42061       <method name="has_item"
42062               c:identifier="gtk_recent_manager_has_item"
42063               version="2.10">
42064         <doc xml:whitespace="preserve">Checks whether there is a recently used resource registered
42065 with @uri inside the recent manager.</doc>
42066         <return-value transfer-ownership="none">
42067           <doc xml:whitespace="preserve">%TRUE if the resource was found, %FALSE otherwise.</doc>
42068           <type name="gboolean" c:type="gboolean"/>
42069         </return-value>
42070         <parameters>
42071           <parameter name="uri" transfer-ownership="none">
42072             <doc xml:whitespace="preserve">a URI</doc>
42073             <type name="utf8" c:type="gchar*"/>
42074           </parameter>
42075         </parameters>
42076       </method>
42077       <method name="lookup_item"
42078               c:identifier="gtk_recent_manager_lookup_item"
42079               version="2.10"
42080               throws="1">
42081         <doc xml:whitespace="preserve">Searches for a URI inside the recently used resources list, and
42082 returns a structure containing informations about the resource
42083 like its MIME type, or its display name.
42084 about the resource pointed by @uri, or %NULL if the URI was
42085 not registered in the recently used resources list.  Free with
42086 gtk_recent_info_unref().</doc>
42087         <return-value transfer-ownership="full">
42088           <doc xml:whitespace="preserve">a #GtkRecentInfo structure containing information</doc>
42089           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
42090         </return-value>
42091         <parameters>
42092           <parameter name="uri" transfer-ownership="none">
42093             <doc xml:whitespace="preserve">a URI</doc>
42094             <type name="utf8" c:type="gchar*"/>
42095           </parameter>
42096         </parameters>
42097       </method>
42098       <method name="move_item"
42099               c:identifier="gtk_recent_manager_move_item"
42100               version="2.10"
42101               throws="1">
42102         <doc xml:whitespace="preserve">Changes the location of a recently used resource from @uri to @new_uri.
42103 Please note that this function will not affect the resource pointed
42104 by the URIs, but only the URI used in the recently used resources list.</doc>
42105         <return-value transfer-ownership="none">
42106           <doc xml:whitespace="preserve">%TRUE on success.</doc>
42107           <type name="gboolean" c:type="gboolean"/>
42108         </return-value>
42109         <parameters>
42110           <parameter name="uri" transfer-ownership="none">
42111             <doc xml:whitespace="preserve">the URI of a recently used resource</doc>
42112             <type name="utf8" c:type="gchar*"/>
42113           </parameter>
42114           <parameter name="new_uri" transfer-ownership="none" allow-none="1">
42115             <doc xml:whitespace="preserve">the new URI of the recently used resource, or %NULL to remove the item pointed by @uri in the list</doc>
42116             <type name="utf8" c:type="gchar*"/>
42117           </parameter>
42118         </parameters>
42119       </method>
42120       <method name="purge_items"
42121               c:identifier="gtk_recent_manager_purge_items"
42122               version="2.10"
42123               throws="1">
42124         <doc xml:whitespace="preserve">Purges every item from the recently used resources list.
42125 recently used resources list.</doc>
42126         <return-value transfer-ownership="none">
42127           <doc xml:whitespace="preserve">the number of items that have been removed from the</doc>
42128           <type name="gint" c:type="gint"/>
42129         </return-value>
42130       </method>
42131       <method name="remove_item"
42132               c:identifier="gtk_recent_manager_remove_item"
42133               version="2.10"
42134               throws="1">
42135         <doc xml:whitespace="preserve">Removes a resource pointed by @uri from the recently used resources
42136 list handled by a recent manager.
42137 removed by the recently used resources list, and %FALSE otherwise.</doc>
42138         <return-value transfer-ownership="none">
42139           <doc xml:whitespace="preserve">%TRUE if the item pointed by @uri has been successfully</doc>
42140           <type name="gboolean" c:type="gboolean"/>
42141         </return-value>
42142         <parameters>
42143           <parameter name="uri" transfer-ownership="none">
42144             <doc xml:whitespace="preserve">the URI of the item you wish to remove</doc>
42145             <type name="utf8" c:type="gchar*"/>
42146           </parameter>
42147         </parameters>
42148       </method>
42149       <property name="filename"
42150                 writable="1"
42151                 construct-only="1"
42152                 transfer-ownership="none">
42153         <type name="utf8"/>
42154       </property>
42155       <property name="size" transfer-ownership="none">
42156         <type name="gint"/>
42157       </property>
42158       <field name="parent_instance" readable="0" private="1">
42159         <type name="GObject.Object" c:type="GObject"/>
42160       </field>
42161       <field name="priv" readable="0" private="1">
42162         <type name="RecentManagerPrivate" c:type="GtkRecentManagerPrivate*"/>
42163       </field>
42164       <glib:signal name="changed">
42165         <return-value transfer-ownership="none">
42166           <type name="none"/>
42167         </return-value>
42168       </glib:signal>
42169     </class>
42170     <record name="RecentManagerClass"
42171             c:type="GtkRecentManagerClass"
42172             glib:is-gtype-struct-for="RecentManager"
42173             version="2.10">
42174       <doc xml:whitespace="preserve">#GtkRecentManagerClass contains only private data.</doc>
42175       <field name="parent_class">
42176         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
42177       </field>
42178       <field name="changed">
42179         <callback name="changed">
42180           <return-value transfer-ownership="none">
42181             <type name="none" c:type="void"/>
42182           </return-value>
42183           <parameters>
42184             <parameter name="manager" transfer-ownership="none">
42185               <type name="RecentManager" c:type="GtkRecentManager*"/>
42186             </parameter>
42187           </parameters>
42188         </callback>
42189       </field>
42190       <field name="_gtk_recent1" introspectable="0">
42191         <callback name="_gtk_recent1">
42192           <return-value transfer-ownership="none">
42193             <type name="none" c:type="void"/>
42194           </return-value>
42195         </callback>
42196       </field>
42197       <field name="_gtk_recent2" introspectable="0">
42198         <callback name="_gtk_recent2">
42199           <return-value transfer-ownership="none">
42200             <type name="none" c:type="void"/>
42201           </return-value>
42202         </callback>
42203       </field>
42204       <field name="_gtk_recent3" introspectable="0">
42205         <callback name="_gtk_recent3">
42206           <return-value transfer-ownership="none">
42207             <type name="none" c:type="void"/>
42208           </return-value>
42209         </callback>
42210       </field>
42211       <field name="_gtk_recent4" introspectable="0">
42212         <callback name="_gtk_recent4">
42213           <return-value transfer-ownership="none">
42214             <type name="none" c:type="void"/>
42215           </return-value>
42216         </callback>
42217       </field>
42218     </record>
42219     <enumeration name="RecentManagerError"
42220                  version="2.10"
42221                  glib:type-name="GtkRecentManagerError"
42222                  glib:get-type="gtk_recent_manager_error_get_type"
42223                  c:type="GtkRecentManagerError"
42224                  glib:error-quark="gtk_recent_manager_error_quark">
42225       <doc xml:whitespace="preserve">Error codes for #GtkRecentManager operations</doc>
42226       <member name="not_found"
42227               value="0"
42228               c:identifier="GTK_RECENT_MANAGER_ERROR_NOT_FOUND"
42229               glib:nick="not-found"/>
42230       <member name="invalid_uri"
42231               value="1"
42232               c:identifier="GTK_RECENT_MANAGER_ERROR_INVALID_URI"
42233               glib:nick="invalid-uri"/>
42234       <member name="invalid_encoding"
42235               value="2"
42236               c:identifier="GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING"
42237               glib:nick="invalid-encoding"/>
42238       <member name="not_registered"
42239               value="3"
42240               c:identifier="GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED"
42241               glib:nick="not-registered"/>
42242       <member name="read"
42243               value="4"
42244               c:identifier="GTK_RECENT_MANAGER_ERROR_READ"
42245               glib:nick="read"/>
42246       <member name="write"
42247               value="5"
42248               c:identifier="GTK_RECENT_MANAGER_ERROR_WRITE"
42249               glib:nick="write"/>
42250       <member name="unknown"
42251               value="6"
42252               c:identifier="GTK_RECENT_MANAGER_ERROR_UNKNOWN"
42253               glib:nick="unknown"/>
42254     </enumeration>
42255     <record name="RecentManagerPrivate"
42256             c:type="GtkRecentManagerPrivate"
42257             disguised="1">
42258     </record>
42259     <callback name="RecentSortFunc" c:type="GtkRecentSortFunc">
42260       <return-value transfer-ownership="none">
42261         <type name="gint" c:type="gint"/>
42262       </return-value>
42263       <parameters>
42264         <parameter name="a" transfer-ownership="none">
42265           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
42266         </parameter>
42267         <parameter name="b" transfer-ownership="none">
42268           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
42269         </parameter>
42270         <parameter name="user_data" transfer-ownership="none" closure="2">
42271           <type name="gpointer" c:type="gpointer"/>
42272         </parameter>
42273       </parameters>
42274     </callback>
42275     <enumeration name="RecentSortType"
42276                  version="2.10"
42277                  glib:type-name="GtkRecentSortType"
42278                  glib:get-type="gtk_recent_sort_type_get_type"
42279                  c:type="GtkRecentSortType">
42280       <doc xml:whitespace="preserve">Used to specify the sorting method to be applyed to the recently
42281 used resource list.</doc>
42282       <member name="none"
42283               value="0"
42284               c:identifier="GTK_RECENT_SORT_NONE"
42285               glib:nick="none"/>
42286       <member name="mru"
42287               value="1"
42288               c:identifier="GTK_RECENT_SORT_MRU"
42289               glib:nick="mru"/>
42290       <member name="lru"
42291               value="2"
42292               c:identifier="GTK_RECENT_SORT_LRU"
42293               glib:nick="lru"/>
42294       <member name="custom"
42295               value="3"
42296               c:identifier="GTK_RECENT_SORT_CUSTOM"
42297               glib:nick="custom"/>
42298     </enumeration>
42299     <enumeration name="ReliefStyle"
42300                  glib:type-name="GtkReliefStyle"
42301                  glib:get-type="gtk_relief_style_get_type"
42302                  c:type="GtkReliefStyle">
42303       <member name="normal"
42304               value="0"
42305               c:identifier="GTK_RELIEF_NORMAL"
42306               glib:nick="normal"/>
42307       <member name="half"
42308               value="1"
42309               c:identifier="GTK_RELIEF_HALF"
42310               glib:nick="half"/>
42311       <member name="none"
42312               value="2"
42313               c:identifier="GTK_RELIEF_NONE"
42314               glib:nick="none"/>
42315     </enumeration>
42316     <record name="RequestedSize" c:type="GtkRequestedSize">
42317       <doc xml:whitespace="preserve">Represents a request of a screen object in a given orientation. These
42318 are primarily used in container implementations when allocating a natural
42319 size for children calling. See gtk_distribute_natural_allocation().</doc>
42320       <field name="data" writable="1">
42321         <type name="gpointer" c:type="gpointer"/>
42322       </field>
42323       <field name="minimum_size" writable="1">
42324         <type name="gint" c:type="gint"/>
42325       </field>
42326       <field name="natural_size" writable="1">
42327         <type name="gint" c:type="gint"/>
42328       </field>
42329     </record>
42330     <record name="Requisition"
42331             c:type="GtkRequisition"
42332             glib:type-name="GtkRequisition"
42333             glib:get-type="gtk_requisition_get_type"
42334             c:symbol-prefix="requisition">
42335       <doc xml:whitespace="preserve">A &lt;structname&gt;GtkRequisition&lt;/structname&gt; represents the desired size of a widget. See
42336 &lt;xref linkend="size-requisition"/&gt; for more information.</doc>
42337       <field name="width" writable="1">
42338         <type name="gint" c:type="gint"/>
42339       </field>
42340       <field name="height" writable="1">
42341         <type name="gint" c:type="gint"/>
42342       </field>
42343       <constructor name="new" c:identifier="gtk_requisition_new" version="3.0">
42344         <doc xml:whitespace="preserve">Allocates a new #GtkRequisition structure and initializes its elements to zero.
42345 be freed with gtk_requisition_free().</doc>
42346         <return-value transfer-ownership="full">
42347           <doc xml:whitespace="preserve">a new empty #GtkRequisition. The newly allocated #GtkRequisition should</doc>
42348           <type name="Requisition" c:type="GtkRequisition*"/>
42349         </return-value>
42350       </constructor>
42351       <method name="copy" c:identifier="gtk_requisition_copy">
42352         <doc xml:whitespace="preserve">Copies a #GtkRequisition.</doc>
42353         <return-value transfer-ownership="full">
42354           <doc xml:whitespace="preserve">a copy of @requisition</doc>
42355           <type name="Requisition" c:type="GtkRequisition*"/>
42356         </return-value>
42357       </method>
42358       <method name="free" c:identifier="gtk_requisition_free">
42359         <doc xml:whitespace="preserve">Frees a #GtkRequisition.</doc>
42360         <return-value transfer-ownership="none">
42361           <type name="none" c:type="void"/>
42362         </return-value>
42363       </method>
42364     </record>
42365     <enumeration name="ResizeMode"
42366                  glib:type-name="GtkResizeMode"
42367                  glib:get-type="gtk_resize_mode_get_type"
42368                  c:type="GtkResizeMode">
42369       <member name="parent"
42370               value="0"
42371               c:identifier="GTK_RESIZE_PARENT"
42372               glib:nick="parent"/>
42373       <member name="queue"
42374               value="1"
42375               c:identifier="GTK_RESIZE_QUEUE"
42376               glib:nick="queue"/>
42377       <member name="immediate"
42378               value="2"
42379               c:identifier="GTK_RESIZE_IMMEDIATE"
42380               glib:nick="immediate"/>
42381     </enumeration>
42382     <enumeration name="ResponseType"
42383                  glib:type-name="GtkResponseType"
42384                  glib:get-type="gtk_response_type_get_type"
42385                  c:type="GtkResponseType">
42386       <member name="none"
42387               value="-1"
42388               c:identifier="GTK_RESPONSE_NONE"
42389               glib:nick="none"/>
42390       <member name="reject"
42391               value="-2"
42392               c:identifier="GTK_RESPONSE_REJECT"
42393               glib:nick="reject"/>
42394       <member name="accept"
42395               value="-3"
42396               c:identifier="GTK_RESPONSE_ACCEPT"
42397               glib:nick="accept"/>
42398       <member name="delete_event"
42399               value="-4"
42400               c:identifier="GTK_RESPONSE_DELETE_EVENT"
42401               glib:nick="delete-event"/>
42402       <member name="ok"
42403               value="-5"
42404               c:identifier="GTK_RESPONSE_OK"
42405               glib:nick="ok"/>
42406       <member name="cancel"
42407               value="-6"
42408               c:identifier="GTK_RESPONSE_CANCEL"
42409               glib:nick="cancel"/>
42410       <member name="close"
42411               value="-7"
42412               c:identifier="GTK_RESPONSE_CLOSE"
42413               glib:nick="close"/>
42414       <member name="yes"
42415               value="-8"
42416               c:identifier="GTK_RESPONSE_YES"
42417               glib:nick="yes"/>
42418       <member name="no"
42419               value="-9"
42420               c:identifier="GTK_RESPONSE_NO"
42421               glib:nick="no"/>
42422       <member name="apply"
42423               value="-10"
42424               c:identifier="GTK_RESPONSE_APPLY"
42425               glib:nick="apply"/>
42426       <member name="help"
42427               value="-11"
42428               c:identifier="GTK_RESPONSE_HELP"
42429               glib:nick="help"/>
42430     </enumeration>
42431     <class name="Ruler"
42432            c:symbol-prefix="ruler"
42433            c:type="GtkRuler"
42434            parent="Widget"
42435            glib:type-name="GtkRuler"
42436            glib:get-type="gtk_ruler_get_type"
42437            glib:type-struct="RulerClass">
42438       <implements name="Atk.ImplementorIface"/>
42439       <implements name="Buildable"/>
42440       <implements name="Orientable"/>
42441       <implements name="SizeRequest"/>
42442       <constructor name="new" c:identifier="gtk_ruler_new" version="3.0">
42443         <doc xml:whitespace="preserve">Creates a new #GtkRuler with the given orientation.</doc>
42444         <return-value transfer-ownership="none">
42445           <doc xml:whitespace="preserve">a new #GtkRuler.</doc>
42446           <type name="Widget" c:type="GtkWidget*"/>
42447         </return-value>
42448         <parameters>
42449           <parameter name="orientation" transfer-ownership="none">
42450             <doc xml:whitespace="preserve">the ruler's orientation.</doc>
42451             <type name="Orientation" c:type="GtkOrientation"/>
42452           </parameter>
42453         </parameters>
42454       </constructor>
42455       <virtual-method name="draw_pos" invoker="draw_pos">
42456         <return-value transfer-ownership="none">
42457           <type name="none" c:type="void"/>
42458         </return-value>
42459       </virtual-method>
42460       <virtual-method name="draw_ticks" invoker="draw_ticks">
42461         <return-value transfer-ownership="none">
42462           <type name="none" c:type="void"/>
42463         </return-value>
42464       </virtual-method>
42465       <method name="draw_pos" c:identifier="gtk_ruler_draw_pos">
42466         <return-value transfer-ownership="none">
42467           <type name="none" c:type="void"/>
42468         </return-value>
42469       </method>
42470       <method name="draw_ticks" c:identifier="gtk_ruler_draw_ticks">
42471         <return-value transfer-ownership="none">
42472           <type name="none" c:type="void"/>
42473         </return-value>
42474       </method>
42475       <method name="get_metric" c:identifier="gtk_ruler_get_metric">
42476         <doc xml:whitespace="preserve">Gets the units used for a #GtkRuler. See gtk_ruler_set_metric().</doc>
42477         <return-value transfer-ownership="none">
42478           <doc xml:whitespace="preserve">the units currently used for @ruler</doc>
42479           <type name="MetricType" c:type="GtkMetricType"/>
42480         </return-value>
42481       </method>
42482       <method name="get_range" c:identifier="gtk_ruler_get_range">
42483         <doc xml:whitespace="preserve">Retrieves values indicating the range and current position of a #GtkRuler.
42484 See gtk_ruler_set_range().</doc>
42485         <return-value transfer-ownership="none">
42486           <type name="none" c:type="void"/>
42487         </return-value>
42488         <parameters>
42489           <parameter name="lower" transfer-ownership="none" allow-none="1">
42490             <doc xml:whitespace="preserve">location to store lower limit of the ruler, or %NULL</doc>
42491             <type name="gdouble" c:type="gdouble*"/>
42492           </parameter>
42493           <parameter name="upper" transfer-ownership="none" allow-none="1">
42494             <doc xml:whitespace="preserve">location to store upper limit of the ruler, or %NULL</doc>
42495             <type name="gdouble" c:type="gdouble*"/>
42496           </parameter>
42497           <parameter name="position" transfer-ownership="none" allow-none="1">
42498             <doc xml:whitespace="preserve">location to store the current position of the mark on the ruler, or %NULL</doc>
42499             <type name="gdouble" c:type="gdouble*"/>
42500           </parameter>
42501           <parameter name="max_size" transfer-ownership="none">
42502             <doc xml:whitespace="preserve">location to store the maximum size of the ruler used when calculating the space to leave for the text, or %NULL.</doc>
42503             <type name="gdouble" c:type="gdouble*"/>
42504           </parameter>
42505         </parameters>
42506       </method>
42507       <method name="set_metric" c:identifier="gtk_ruler_set_metric">
42508         <return-value transfer-ownership="none">
42509           <type name="none" c:type="void"/>
42510         </return-value>
42511         <parameters>
42512           <parameter name="metric" transfer-ownership="none">
42513             <type name="MetricType" c:type="GtkMetricType"/>
42514           </parameter>
42515         </parameters>
42516       </method>
42517       <method name="set_range" c:identifier="gtk_ruler_set_range">
42518         <doc xml:whitespace="preserve">This sets the range of the ruler.</doc>
42519         <return-value transfer-ownership="none">
42520           <type name="none" c:type="void"/>
42521         </return-value>
42522         <parameters>
42523           <parameter name="lower" transfer-ownership="none">
42524             <doc xml:whitespace="preserve">the lower limit of the ruler</doc>
42525             <type name="gdouble" c:type="gdouble"/>
42526           </parameter>
42527           <parameter name="upper" transfer-ownership="none">
42528             <doc xml:whitespace="preserve">the upper limit of the ruler</doc>
42529             <type name="gdouble" c:type="gdouble"/>
42530           </parameter>
42531           <parameter name="position" transfer-ownership="none">
42532             <doc xml:whitespace="preserve">the mark on the ruler</doc>
42533             <type name="gdouble" c:type="gdouble"/>
42534           </parameter>
42535           <parameter name="max_size" transfer-ownership="none">
42536             <doc xml:whitespace="preserve">the maximum size of the ruler used when calculating the space to leave for the text</doc>
42537             <type name="gdouble" c:type="gdouble"/>
42538           </parameter>
42539         </parameters>
42540       </method>
42541       <property name="lower" writable="1" transfer-ownership="none">
42542         <type name="gdouble"/>
42543       </property>
42544       <property name="max-size" writable="1" transfer-ownership="none">
42545         <type name="gdouble"/>
42546       </property>
42547       <property name="metric"
42548                 version="2.8"
42549                 writable="1"
42550                 transfer-ownership="none">
42551         <doc xml:whitespace="preserve">The metric used for the ruler.</doc>
42552         <type name="MetricType"/>
42553       </property>
42554       <property name="position" writable="1" transfer-ownership="none">
42555         <type name="gdouble"/>
42556       </property>
42557       <property name="upper" writable="1" transfer-ownership="none">
42558         <type name="gdouble"/>
42559       </property>
42560       <field name="widget">
42561         <type name="Widget" c:type="GtkWidget"/>
42562       </field>
42563       <field name="priv" readable="0" private="1">
42564         <type name="RulerPrivate" c:type="GtkRulerPrivate*"/>
42565       </field>
42566     </class>
42567     <record name="RulerClass"
42568             c:type="GtkRulerClass"
42569             glib:is-gtype-struct-for="Ruler">
42570       <field name="parent_class">
42571         <type name="WidgetClass" c:type="GtkWidgetClass"/>
42572       </field>
42573       <field name="draw_ticks">
42574         <callback name="draw_ticks">
42575           <return-value transfer-ownership="none">
42576             <type name="none" c:type="void"/>
42577           </return-value>
42578           <parameters>
42579             <parameter name="ruler" transfer-ownership="none">
42580               <type name="Ruler" c:type="GtkRuler*"/>
42581             </parameter>
42582           </parameters>
42583         </callback>
42584       </field>
42585       <field name="draw_pos">
42586         <callback name="draw_pos">
42587           <return-value transfer-ownership="none">
42588             <type name="none" c:type="void"/>
42589           </return-value>
42590           <parameters>
42591             <parameter name="ruler" transfer-ownership="none">
42592               <type name="Ruler" c:type="GtkRuler*"/>
42593             </parameter>
42594           </parameters>
42595         </callback>
42596       </field>
42597       <field name="_gtk_reserved1" introspectable="0">
42598         <callback name="_gtk_reserved1">
42599           <return-value transfer-ownership="none">
42600             <type name="none" c:type="void"/>
42601           </return-value>
42602         </callback>
42603       </field>
42604       <field name="_gtk_reserved2" introspectable="0">
42605         <callback name="_gtk_reserved2">
42606           <return-value transfer-ownership="none">
42607             <type name="none" c:type="void"/>
42608           </return-value>
42609         </callback>
42610       </field>
42611       <field name="_gtk_reserved3" introspectable="0">
42612         <callback name="_gtk_reserved3">
42613           <return-value transfer-ownership="none">
42614             <type name="none" c:type="void"/>
42615           </return-value>
42616         </callback>
42617       </field>
42618       <field name="_gtk_reserved4" introspectable="0">
42619         <callback name="_gtk_reserved4">
42620           <return-value transfer-ownership="none">
42621             <type name="none" c:type="void"/>
42622           </return-value>
42623         </callback>
42624       </field>
42625     </record>
42626     <record name="RulerMetric" c:type="GtkRulerMetric">
42627       <field name="metric_name" writable="1">
42628         <type name="utf8" c:type="gchar*"/>
42629       </field>
42630       <field name="abbrev" writable="1">
42631         <type name="utf8" c:type="gchar*"/>
42632       </field>
42633       <field name="pixels_per_unit" writable="1">
42634         <type name="gdouble" c:type="gdouble"/>
42635       </field>
42636       <field name="ruler_scale" writable="1">
42637         <array zero-terminated="0" c:type="gdouble" fixed-size="10">
42638           <type name="gdouble" c:type="gdouble"/>
42639         </array>
42640       </field>
42641       <field name="subdivide" writable="1">
42642         <array zero-terminated="0" c:type="gint" fixed-size="5">
42643           <type name="gint" c:type="gint"/>
42644         </array>
42645       </field>
42646     </record>
42647     <record name="RulerPrivate" c:type="GtkRulerPrivate" disguised="1">
42648     </record>
42649     <constant name="SIZE_REQUEST_CACHED_SIZES" value="3">
42650       <type name="gint" c:type="gint"/>
42651     </constant>
42652     <constant name="STOCK_ABOUT" value="gtk-about">
42653       <type name="utf8" c:type="gchar*"/>
42654     </constant>
42655     <constant name="STOCK_ADD" value="gtk-add">
42656       <type name="utf8" c:type="gchar*"/>
42657     </constant>
42658     <constant name="STOCK_APPLY" value="gtk-apply">
42659       <type name="utf8" c:type="gchar*"/>
42660     </constant>
42661     <constant name="STOCK_BOLD" value="gtk-bold">
42662       <type name="utf8" c:type="gchar*"/>
42663     </constant>
42664     <constant name="STOCK_CANCEL" value="gtk-cancel">
42665       <type name="utf8" c:type="gchar*"/>
42666     </constant>
42667     <constant name="STOCK_CAPS_LOCK_WARNING" value="gtk-caps-lock-warning">
42668       <type name="utf8" c:type="gchar*"/>
42669     </constant>
42670     <constant name="STOCK_CDROM" value="gtk-cdrom">
42671       <type name="utf8" c:type="gchar*"/>
42672     </constant>
42673     <constant name="STOCK_CLEAR" value="gtk-clear">
42674       <type name="utf8" c:type="gchar*"/>
42675     </constant>
42676     <constant name="STOCK_CLOSE" value="gtk-close">
42677       <type name="utf8" c:type="gchar*"/>
42678     </constant>
42679     <constant name="STOCK_COLOR_PICKER" value="gtk-color-picker">
42680       <type name="utf8" c:type="gchar*"/>
42681     </constant>
42682     <constant name="STOCK_CONNECT" value="gtk-connect">
42683       <type name="utf8" c:type="gchar*"/>
42684     </constant>
42685     <constant name="STOCK_CONVERT" value="gtk-convert">
42686       <type name="utf8" c:type="gchar*"/>
42687     </constant>
42688     <constant name="STOCK_COPY" value="gtk-copy">
42689       <type name="utf8" c:type="gchar*"/>
42690     </constant>
42691     <constant name="STOCK_CUT" value="gtk-cut">
42692       <type name="utf8" c:type="gchar*"/>
42693     </constant>
42694     <constant name="STOCK_DELETE" value="gtk-delete">
42695       <type name="utf8" c:type="gchar*"/>
42696     </constant>
42697     <constant name="STOCK_DIALOG_AUTHENTICATION"
42698               value="gtk-dialog-authentication">
42699       <type name="utf8" c:type="gchar*"/>
42700     </constant>
42701     <constant name="STOCK_DIALOG_ERROR" value="gtk-dialog-error">
42702       <type name="utf8" c:type="gchar*"/>
42703     </constant>
42704     <constant name="STOCK_DIALOG_INFO" value="gtk-dialog-info">
42705       <type name="utf8" c:type="gchar*"/>
42706     </constant>
42707     <constant name="STOCK_DIALOG_QUESTION" value="gtk-dialog-question">
42708       <type name="utf8" c:type="gchar*"/>
42709     </constant>
42710     <constant name="STOCK_DIALOG_WARNING" value="gtk-dialog-warning">
42711       <type name="utf8" c:type="gchar*"/>
42712     </constant>
42713     <constant name="STOCK_DIRECTORY" value="gtk-directory">
42714       <type name="utf8" c:type="gchar*"/>
42715     </constant>
42716     <constant name="STOCK_DISCARD" value="gtk-discard">
42717       <type name="utf8" c:type="gchar*"/>
42718     </constant>
42719     <constant name="STOCK_DISCONNECT" value="gtk-disconnect">
42720       <type name="utf8" c:type="gchar*"/>
42721     </constant>
42722     <constant name="STOCK_DND" value="gtk-dnd">
42723       <type name="utf8" c:type="gchar*"/>
42724     </constant>
42725     <constant name="STOCK_DND_MULTIPLE" value="gtk-dnd-multiple">
42726       <type name="utf8" c:type="gchar*"/>
42727     </constant>
42728     <constant name="STOCK_EDIT" value="gtk-edit">
42729       <type name="utf8" c:type="gchar*"/>
42730     </constant>
42731     <constant name="STOCK_EXECUTE" value="gtk-execute">
42732       <type name="utf8" c:type="gchar*"/>
42733     </constant>
42734     <constant name="STOCK_FILE" value="gtk-file">
42735       <type name="utf8" c:type="gchar*"/>
42736     </constant>
42737     <constant name="STOCK_FIND" value="gtk-find">
42738       <type name="utf8" c:type="gchar*"/>
42739     </constant>
42740     <constant name="STOCK_FIND_AND_REPLACE" value="gtk-find-and-replace">
42741       <type name="utf8" c:type="gchar*"/>
42742     </constant>
42743     <constant name="STOCK_FLOPPY" value="gtk-floppy">
42744       <type name="utf8" c:type="gchar*"/>
42745     </constant>
42746     <constant name="STOCK_FULLSCREEN" value="gtk-fullscreen">
42747       <type name="utf8" c:type="gchar*"/>
42748     </constant>
42749     <constant name="STOCK_GOTO_BOTTOM" value="gtk-goto-bottom">
42750       <type name="utf8" c:type="gchar*"/>
42751     </constant>
42752     <constant name="STOCK_GOTO_FIRST" value="gtk-goto-first">
42753       <type name="utf8" c:type="gchar*"/>
42754     </constant>
42755     <constant name="STOCK_GOTO_LAST" value="gtk-goto-last">
42756       <type name="utf8" c:type="gchar*"/>
42757     </constant>
42758     <constant name="STOCK_GOTO_TOP" value="gtk-goto-top">
42759       <type name="utf8" c:type="gchar*"/>
42760     </constant>
42761     <constant name="STOCK_GO_BACK" value="gtk-go-back">
42762       <type name="utf8" c:type="gchar*"/>
42763     </constant>
42764     <constant name="STOCK_GO_DOWN" value="gtk-go-down">
42765       <type name="utf8" c:type="gchar*"/>
42766     </constant>
42767     <constant name="STOCK_GO_FORWARD" value="gtk-go-forward">
42768       <type name="utf8" c:type="gchar*"/>
42769     </constant>
42770     <constant name="STOCK_GO_UP" value="gtk-go-up">
42771       <type name="utf8" c:type="gchar*"/>
42772     </constant>
42773     <constant name="STOCK_HARDDISK" value="gtk-harddisk">
42774       <type name="utf8" c:type="gchar*"/>
42775     </constant>
42776     <constant name="STOCK_HELP" value="gtk-help">
42777       <type name="utf8" c:type="gchar*"/>
42778     </constant>
42779     <constant name="STOCK_HOME" value="gtk-home">
42780       <type name="utf8" c:type="gchar*"/>
42781     </constant>
42782     <constant name="STOCK_INDENT" value="gtk-indent">
42783       <type name="utf8" c:type="gchar*"/>
42784     </constant>
42785     <constant name="STOCK_INDEX" value="gtk-index">
42786       <type name="utf8" c:type="gchar*"/>
42787     </constant>
42788     <constant name="STOCK_INFO" value="gtk-info">
42789       <type name="utf8" c:type="gchar*"/>
42790     </constant>
42791     <constant name="STOCK_ITALIC" value="gtk-italic">
42792       <type name="utf8" c:type="gchar*"/>
42793     </constant>
42794     <constant name="STOCK_JUMP_TO" value="gtk-jump-to">
42795       <type name="utf8" c:type="gchar*"/>
42796     </constant>
42797     <constant name="STOCK_JUSTIFY_CENTER" value="gtk-justify-center">
42798       <type name="utf8" c:type="gchar*"/>
42799     </constant>
42800     <constant name="STOCK_JUSTIFY_FILL" value="gtk-justify-fill">
42801       <type name="utf8" c:type="gchar*"/>
42802     </constant>
42803     <constant name="STOCK_JUSTIFY_LEFT" value="gtk-justify-left">
42804       <type name="utf8" c:type="gchar*"/>
42805     </constant>
42806     <constant name="STOCK_JUSTIFY_RIGHT" value="gtk-justify-right">
42807       <type name="utf8" c:type="gchar*"/>
42808     </constant>
42809     <constant name="STOCK_LEAVE_FULLSCREEN" value="gtk-leave-fullscreen">
42810       <type name="utf8" c:type="gchar*"/>
42811     </constant>
42812     <constant name="STOCK_MEDIA_FORWARD" value="gtk-media-forward">
42813       <type name="utf8" c:type="gchar*"/>
42814     </constant>
42815     <constant name="STOCK_MEDIA_NEXT" value="gtk-media-next">
42816       <type name="utf8" c:type="gchar*"/>
42817     </constant>
42818     <constant name="STOCK_MEDIA_PAUSE" value="gtk-media-pause">
42819       <type name="utf8" c:type="gchar*"/>
42820     </constant>
42821     <constant name="STOCK_MEDIA_PLAY" value="gtk-media-play">
42822       <type name="utf8" c:type="gchar*"/>
42823     </constant>
42824     <constant name="STOCK_MEDIA_PREVIOUS" value="gtk-media-previous">
42825       <type name="utf8" c:type="gchar*"/>
42826     </constant>
42827     <constant name="STOCK_MEDIA_RECORD" value="gtk-media-record">
42828       <type name="utf8" c:type="gchar*"/>
42829     </constant>
42830     <constant name="STOCK_MEDIA_REWIND" value="gtk-media-rewind">
42831       <type name="utf8" c:type="gchar*"/>
42832     </constant>
42833     <constant name="STOCK_MEDIA_STOP" value="gtk-media-stop">
42834       <type name="utf8" c:type="gchar*"/>
42835     </constant>
42836     <constant name="STOCK_MISSING_IMAGE" value="gtk-missing-image">
42837       <type name="utf8" c:type="gchar*"/>
42838     </constant>
42839     <constant name="STOCK_NETWORK" value="gtk-network">
42840       <type name="utf8" c:type="gchar*"/>
42841     </constant>
42842     <constant name="STOCK_NEW" value="gtk-new">
42843       <type name="utf8" c:type="gchar*"/>
42844     </constant>
42845     <constant name="STOCK_NO" value="gtk-no">
42846       <type name="utf8" c:type="gchar*"/>
42847     </constant>
42848     <constant name="STOCK_OK" value="gtk-ok">
42849       <type name="utf8" c:type="gchar*"/>
42850     </constant>
42851     <constant name="STOCK_OPEN" value="gtk-open">
42852       <type name="utf8" c:type="gchar*"/>
42853     </constant>
42854     <constant name="STOCK_ORIENTATION_LANDSCAPE"
42855               value="gtk-orientation-landscape">
42856       <type name="utf8" c:type="gchar*"/>
42857     </constant>
42858     <constant name="STOCK_ORIENTATION_PORTRAIT"
42859               value="gtk-orientation-portrait">
42860       <type name="utf8" c:type="gchar*"/>
42861     </constant>
42862     <constant name="STOCK_ORIENTATION_REVERSE_LANDSCAPE"
42863               value="gtk-orientation-reverse-landscape">
42864       <type name="utf8" c:type="gchar*"/>
42865     </constant>
42866     <constant name="STOCK_ORIENTATION_REVERSE_PORTRAIT"
42867               value="gtk-orientation-reverse-portrait">
42868       <type name="utf8" c:type="gchar*"/>
42869     </constant>
42870     <constant name="STOCK_PAGE_SETUP" value="gtk-page-setup">
42871       <type name="utf8" c:type="gchar*"/>
42872     </constant>
42873     <constant name="STOCK_PASTE" value="gtk-paste">
42874       <type name="utf8" c:type="gchar*"/>
42875     </constant>
42876     <constant name="STOCK_PREFERENCES" value="gtk-preferences">
42877       <type name="utf8" c:type="gchar*"/>
42878     </constant>
42879     <constant name="STOCK_PRINT" value="gtk-print">
42880       <type name="utf8" c:type="gchar*"/>
42881     </constant>
42882     <constant name="STOCK_PRINT_ERROR" value="gtk-print-error">
42883       <type name="utf8" c:type="gchar*"/>
42884     </constant>
42885     <constant name="STOCK_PRINT_PAUSED" value="gtk-print-paused">
42886       <type name="utf8" c:type="gchar*"/>
42887     </constant>
42888     <constant name="STOCK_PRINT_PREVIEW" value="gtk-print-preview">
42889       <type name="utf8" c:type="gchar*"/>
42890     </constant>
42891     <constant name="STOCK_PRINT_REPORT" value="gtk-print-report">
42892       <type name="utf8" c:type="gchar*"/>
42893     </constant>
42894     <constant name="STOCK_PRINT_WARNING" value="gtk-print-warning">
42895       <type name="utf8" c:type="gchar*"/>
42896     </constant>
42897     <constant name="STOCK_PROPERTIES" value="gtk-properties">
42898       <type name="utf8" c:type="gchar*"/>
42899     </constant>
42900     <constant name="STOCK_QUIT" value="gtk-quit">
42901       <type name="utf8" c:type="gchar*"/>
42902     </constant>
42903     <constant name="STOCK_REDO" value="gtk-redo">
42904       <type name="utf8" c:type="gchar*"/>
42905     </constant>
42906     <constant name="STOCK_REFRESH" value="gtk-refresh">
42907       <type name="utf8" c:type="gchar*"/>
42908     </constant>
42909     <constant name="STOCK_REMOVE" value="gtk-remove">
42910       <type name="utf8" c:type="gchar*"/>
42911     </constant>
42912     <constant name="STOCK_REVERT_TO_SAVED" value="gtk-revert-to-saved">
42913       <type name="utf8" c:type="gchar*"/>
42914     </constant>
42915     <constant name="STOCK_SAVE" value="gtk-save">
42916       <type name="utf8" c:type="gchar*"/>
42917     </constant>
42918     <constant name="STOCK_SAVE_AS" value="gtk-save-as">
42919       <type name="utf8" c:type="gchar*"/>
42920     </constant>
42921     <constant name="STOCK_SELECT_ALL" value="gtk-select-all">
42922       <type name="utf8" c:type="gchar*"/>
42923     </constant>
42924     <constant name="STOCK_SELECT_COLOR" value="gtk-select-color">
42925       <type name="utf8" c:type="gchar*"/>
42926     </constant>
42927     <constant name="STOCK_SELECT_FONT" value="gtk-select-font">
42928       <type name="utf8" c:type="gchar*"/>
42929     </constant>
42930     <constant name="STOCK_SORT_ASCENDING" value="gtk-sort-ascending">
42931       <type name="utf8" c:type="gchar*"/>
42932     </constant>
42933     <constant name="STOCK_SORT_DESCENDING" value="gtk-sort-descending">
42934       <type name="utf8" c:type="gchar*"/>
42935     </constant>
42936     <constant name="STOCK_SPELL_CHECK" value="gtk-spell-check">
42937       <type name="utf8" c:type="gchar*"/>
42938     </constant>
42939     <constant name="STOCK_STOP" value="gtk-stop">
42940       <type name="utf8" c:type="gchar*"/>
42941     </constant>
42942     <constant name="STOCK_STRIKETHROUGH" value="gtk-strikethrough">
42943       <type name="utf8" c:type="gchar*"/>
42944     </constant>
42945     <constant name="STOCK_UNDELETE" value="gtk-undelete">
42946       <type name="utf8" c:type="gchar*"/>
42947     </constant>
42948     <constant name="STOCK_UNDERLINE" value="gtk-underline">
42949       <type name="utf8" c:type="gchar*"/>
42950     </constant>
42951     <constant name="STOCK_UNDO" value="gtk-undo">
42952       <type name="utf8" c:type="gchar*"/>
42953     </constant>
42954     <constant name="STOCK_UNINDENT" value="gtk-unindent">
42955       <type name="utf8" c:type="gchar*"/>
42956     </constant>
42957     <constant name="STOCK_YES" value="gtk-yes">
42958       <type name="utf8" c:type="gchar*"/>
42959     </constant>
42960     <constant name="STOCK_ZOOM_100" value="gtk-zoom-100">
42961       <type name="utf8" c:type="gchar*"/>
42962     </constant>
42963     <constant name="STOCK_ZOOM_FIT" value="gtk-zoom-fit">
42964       <type name="utf8" c:type="gchar*"/>
42965     </constant>
42966     <constant name="STOCK_ZOOM_IN" value="gtk-zoom-in">
42967       <type name="utf8" c:type="gchar*"/>
42968     </constant>
42969     <constant name="STOCK_ZOOM_OUT" value="gtk-zoom-out">
42970       <type name="utf8" c:type="gchar*"/>
42971     </constant>
42972     <class name="Scale"
42973            c:symbol-prefix="scale"
42974            c:type="GtkScale"
42975            parent="Range"
42976            glib:type-name="GtkScale"
42977            glib:get-type="gtk_scale_get_type"
42978            glib:type-struct="ScaleClass">
42979       <implements name="Atk.ImplementorIface"/>
42980       <implements name="Buildable"/>
42981       <implements name="Orientable"/>
42982       <implements name="SizeRequest"/>
42983       <constructor name="new" c:identifier="gtk_scale_new" version="3.0">
42984         <doc xml:whitespace="preserve">Creates a new #GtkScale.</doc>
42985         <return-value transfer-ownership="none">
42986           <doc xml:whitespace="preserve">a new #GtkScale</doc>
42987           <type name="Widget" c:type="GtkWidget*"/>
42988         </return-value>
42989         <parameters>
42990           <parameter name="orientation" transfer-ownership="none">
42991             <doc xml:whitespace="preserve">the scale's orientation.</doc>
42992             <type name="Orientation" c:type="GtkOrientation"/>
42993           </parameter>
42994           <parameter name="adjustment" transfer-ownership="none">
42995             <doc xml:whitespace="preserve">the #GtkAdjustment which sets the range of the scale, or %NULL to create a new adjustment.</doc>
42996             <type name="Adjustment" c:type="GtkAdjustment*"/>
42997           </parameter>
42998         </parameters>
42999       </constructor>
43000       <constructor name="new_with_range"
43001                    c:identifier="gtk_scale_new_with_range"
43002                    version="3.0">
43003         <doc xml:whitespace="preserve">Creates a new scale widget with the given orientation that lets the
43004 user input a number between @min and @max (including @min and @max)
43005 with the increment @step.  @step must be nonzero; it's the distance
43006 the slider moves when using the arrow keys to adjust the scale
43007 value.
43008 Note that the way in which the precision is derived works best if @step
43009 is a power of ten. If the resulting precision is not suitable for your
43010 needs, use gtk_scale_set_digits() to correct it.</doc>
43011         <return-value transfer-ownership="none">
43012           <doc xml:whitespace="preserve">a new #GtkScale</doc>
43013           <type name="Widget" c:type="GtkWidget*"/>
43014         </return-value>
43015         <parameters>
43016           <parameter name="orientation" transfer-ownership="none">
43017             <doc xml:whitespace="preserve">the scale's orientation.</doc>
43018             <type name="Orientation" c:type="GtkOrientation"/>
43019           </parameter>
43020           <parameter name="min" transfer-ownership="none">
43021             <doc xml:whitespace="preserve">minimum value</doc>
43022             <type name="gdouble" c:type="gdouble"/>
43023           </parameter>
43024           <parameter name="max" transfer-ownership="none">
43025             <doc xml:whitespace="preserve">maximum value</doc>
43026             <type name="gdouble" c:type="gdouble"/>
43027           </parameter>
43028           <parameter name="step" transfer-ownership="none">
43029             <doc xml:whitespace="preserve">step increment (tick size) used with keyboard shortcuts</doc>
43030             <type name="gdouble" c:type="gdouble"/>
43031           </parameter>
43032         </parameters>
43033       </constructor>
43034       <virtual-method name="draw_value">
43035         <return-value transfer-ownership="none">
43036           <type name="none" c:type="void"/>
43037         </return-value>
43038       </virtual-method>
43039       <virtual-method name="get_layout_offsets"
43040                       invoker="get_layout_offsets"
43041                       version="2.4">
43042         <doc xml:whitespace="preserve">Obtains the coordinates where the scale will draw the 
43043 #PangoLayout representing the text in the scale. Remember
43044 when using the #PangoLayout function you need to convert to
43045 and from pixels using PANGO_PIXELS() or #PANGO_SCALE. 
43046 If the #GtkScale:draw-value property is %FALSE, the return 
43047 values are undefined.</doc>
43048         <return-value transfer-ownership="none">
43049           <type name="none" c:type="void"/>
43050         </return-value>
43051         <parameters>
43052           <parameter name="x" transfer-ownership="none" allow-none="1">
43053             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
43054             <type name="gint" c:type="gint*"/>
43055           </parameter>
43056           <parameter name="y" transfer-ownership="none" allow-none="1">
43057             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
43058             <type name="gint" c:type="gint*"/>
43059           </parameter>
43060         </parameters>
43061       </virtual-method>
43062       <method name="add_mark" c:identifier="gtk_scale_add_mark" version="2.16">
43063         <doc xml:whitespace="preserve">Adds a mark at @value. 
43064 A mark is indicated visually by drawing a tick mark next to the scale, 
43065 and GTK+ makes it easy for the user to position the scale exactly at the 
43066 marks value.
43067 If @markup is not %NULL, text is shown next to the tick mark. 
43068 To remove marks from a scale, use gtk_scale_clear_marks().</doc>
43069         <return-value transfer-ownership="none">
43070           <type name="none" c:type="void"/>
43071         </return-value>
43072         <parameters>
43073           <parameter name="value" transfer-ownership="none">
43074             <doc xml:whitespace="preserve">the value at which the mark is placed, must be between the lower and upper limits of the scales' adjustment</doc>
43075             <type name="gdouble" c:type="gdouble"/>
43076           </parameter>
43077           <parameter name="position" transfer-ownership="none">
43078             <doc xml:whitespace="preserve">where to draw the mark. For a horizontal scale, #GTK_POS_TOP is drawn above the scale, anything else below. For a vertical scale, #GTK_POS_LEFT is drawn to the left of the scale, anything else to the right.</doc>
43079             <type name="PositionType" c:type="GtkPositionType"/>
43080           </parameter>
43081           <parameter name="markup" transfer-ownership="none" allow-none="1">
43082             <doc xml:whitespace="preserve">Text to be shown at the mark, using &lt;link linkend="PangoMarkupFormat"&gt;Pango markup&lt;/link&gt;, or %NULL</doc>
43083             <type name="utf8" c:type="gchar*"/>
43084           </parameter>
43085         </parameters>
43086       </method>
43087       <method name="clear_marks"
43088               c:identifier="gtk_scale_clear_marks"
43089               version="2.16">
43090         <doc xml:whitespace="preserve">Removes any marks that have been added with gtk_scale_add_mark().</doc>
43091         <return-value transfer-ownership="none">
43092           <type name="none" c:type="void"/>
43093         </return-value>
43094       </method>
43095       <method name="get_digits" c:identifier="gtk_scale_get_digits">
43096         <doc xml:whitespace="preserve">Gets the number of decimal places that are displayed in the value.</doc>
43097         <return-value transfer-ownership="none">
43098           <doc xml:whitespace="preserve">the number of decimal places that are displayed</doc>
43099           <type name="gint" c:type="gint"/>
43100         </return-value>
43101       </method>
43102       <method name="get_draw_value" c:identifier="gtk_scale_get_draw_value">
43103         <doc xml:whitespace="preserve">Returns whether the current value is displayed as a string 
43104 next to the slider.</doc>
43105         <return-value transfer-ownership="none">
43106           <doc xml:whitespace="preserve">whether the current value is displayed as a string</doc>
43107           <type name="gboolean" c:type="gboolean"/>
43108         </return-value>
43109       </method>
43110       <method name="get_layout"
43111               c:identifier="gtk_scale_get_layout"
43112               version="2.4">
43113         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the scale. The returned
43114 object is owned by the scale so does not need to be freed by
43115 the caller.
43116 or %NULL if the #GtkScale:draw-value property is %FALSE.</doc>
43117         <return-value transfer-ownership="none">
43118           <doc xml:whitespace="preserve">the #PangoLayout for this scale,</doc>
43119           <type name="Pango.Layout" c:type="PangoLayout*"/>
43120         </return-value>
43121       </method>
43122       <method name="get_layout_offsets"
43123               c:identifier="gtk_scale_get_layout_offsets"
43124               version="2.4">
43125         <doc xml:whitespace="preserve">Obtains the coordinates where the scale will draw the 
43126 #PangoLayout representing the text in the scale. Remember
43127 when using the #PangoLayout function you need to convert to
43128 and from pixels using PANGO_PIXELS() or #PANGO_SCALE. 
43129 If the #GtkScale:draw-value property is %FALSE, the return 
43130 values are undefined.</doc>
43131         <return-value transfer-ownership="none">
43132           <type name="none" c:type="void"/>
43133         </return-value>
43134         <parameters>
43135           <parameter name="x" transfer-ownership="none" allow-none="1">
43136             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
43137             <type name="gint" c:type="gint*"/>
43138           </parameter>
43139           <parameter name="y" transfer-ownership="none" allow-none="1">
43140             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
43141             <type name="gint" c:type="gint*"/>
43142           </parameter>
43143         </parameters>
43144       </method>
43145       <method name="get_value_pos" c:identifier="gtk_scale_get_value_pos">
43146         <doc xml:whitespace="preserve">Gets the position in which the current value is displayed.</doc>
43147         <return-value transfer-ownership="none">
43148           <doc xml:whitespace="preserve">the position in which the current value is displayed</doc>
43149           <type name="PositionType" c:type="GtkPositionType"/>
43150         </return-value>
43151       </method>
43152       <method name="set_digits" c:identifier="gtk_scale_set_digits">
43153         <doc xml:whitespace="preserve">Sets the number of decimal places that are displayed in the value.
43154 Also causes the value of the adjustment to be rounded off to this
43155 number of digits, so the retrieved value matches the value the user saw.</doc>
43156         <return-value transfer-ownership="none">
43157           <type name="none" c:type="void"/>
43158         </return-value>
43159         <parameters>
43160           <parameter name="digits" transfer-ownership="none">
43161             <doc xml:whitespace="preserve">the number of decimal places to display, e.g. use 1 to display 1.0, 2 to display 1.00, etc</doc>
43162             <type name="gint" c:type="gint"/>
43163           </parameter>
43164         </parameters>
43165       </method>
43166       <method name="set_draw_value" c:identifier="gtk_scale_set_draw_value">
43167         <doc xml:whitespace="preserve">Specifies whether the current value is displayed as a string next 
43168 to the slider.</doc>
43169         <return-value transfer-ownership="none">
43170           <type name="none" c:type="void"/>
43171         </return-value>
43172         <parameters>
43173           <parameter name="draw_value" transfer-ownership="none">
43174             <doc xml:whitespace="preserve">%TRUE to draw the value</doc>
43175             <type name="gboolean" c:type="gboolean"/>
43176           </parameter>
43177         </parameters>
43178       </method>
43179       <method name="set_value_pos" c:identifier="gtk_scale_set_value_pos">
43180         <doc xml:whitespace="preserve">Sets the position in which the current value is displayed.</doc>
43181         <return-value transfer-ownership="none">
43182           <type name="none" c:type="void"/>
43183         </return-value>
43184         <parameters>
43185           <parameter name="pos" transfer-ownership="none">
43186             <doc xml:whitespace="preserve">the position in which the current value is displayed</doc>
43187             <type name="PositionType" c:type="GtkPositionType"/>
43188           </parameter>
43189         </parameters>
43190       </method>
43191       <property name="digits" writable="1" transfer-ownership="none">
43192         <type name="gint"/>
43193       </property>
43194       <property name="draw-value" writable="1" transfer-ownership="none">
43195         <type name="gboolean"/>
43196       </property>
43197       <property name="value-pos" writable="1" transfer-ownership="none">
43198         <type name="PositionType"/>
43199       </property>
43200       <field name="range">
43201         <type name="Range" c:type="GtkRange"/>
43202       </field>
43203       <field name="priv" readable="0" private="1">
43204         <type name="ScalePrivate" c:type="GtkScalePrivate*"/>
43205       </field>
43206       <glib:signal name="format-value">
43207         <doc xml:whitespace="preserve">Signal which allows you to change how the scale value is displayed.
43208 Connect a signal handler which returns an allocated string representing 
43209 Here's an example signal handler which displays a value 1.0 as
43210 with "--&amp;gt;1.0&amp;lt;--".
43211 |[
43212 static gchar*
43213 format_value_callback (GtkScale *scale,
43214 gdouble   value)
43215 {
43216 return g_strdup_printf ("--&amp;gt;&amp;percnt;0.*g&amp;lt;--",
43217 gtk_scale_get_digits (scale), value);
43218 }
43219 ]|</doc>
43220         <return-value transfer-ownership="full">
43221           <doc xml:whitespace="preserve">allocated string representing @value</doc>
43222           <type name="utf8"/>
43223         </return-value>
43224         <parameters>
43225           <parameter name="object" transfer-ownership="none">
43226             <doc xml:whitespace="preserve">the value to format</doc>
43227             <type name="gdouble"/>
43228           </parameter>
43229         </parameters>
43230       </glib:signal>
43231     </class>
43232     <class name="ScaleButton"
43233            c:symbol-prefix="scale_button"
43234            c:type="GtkScaleButton"
43235            parent="Button"
43236            glib:type-name="GtkScaleButton"
43237            glib:get-type="gtk_scale_button_get_type"
43238            glib:type-struct="ScaleButtonClass">
43239       <implements name="Atk.ImplementorIface"/>
43240       <implements name="Activatable"/>
43241       <implements name="Buildable"/>
43242       <implements name="Orientable"/>
43243       <implements name="SizeRequest"/>
43244       <constructor name="new"
43245                    c:identifier="gtk_scale_button_new"
43246                    version="2.12">
43247         <doc xml:whitespace="preserve">Creates a #GtkScaleButton, with a range between @min and @max, with
43248 a stepping of @step.</doc>
43249         <return-value transfer-ownership="none">
43250           <doc xml:whitespace="preserve">a new #GtkScaleButton</doc>
43251           <type name="Widget" c:type="GtkWidget*"/>
43252         </return-value>
43253         <parameters>
43254           <parameter name="size" transfer-ownership="none">
43255             <doc xml:whitespace="preserve">a stock icon size</doc>
43256             <type name="gint"/>
43257           </parameter>
43258           <parameter name="min" transfer-ownership="none">
43259             <doc xml:whitespace="preserve">the minimum value of the scale (usually 0)</doc>
43260             <type name="gdouble" c:type="gdouble"/>
43261           </parameter>
43262           <parameter name="max" transfer-ownership="none">
43263             <doc xml:whitespace="preserve">the maximum value of the scale (usually 100)</doc>
43264             <type name="gdouble" c:type="gdouble"/>
43265           </parameter>
43266           <parameter name="step" transfer-ownership="none">
43267             <doc xml:whitespace="preserve">the stepping of value when a scroll-wheel event, or up/down arrow event occurs (usually 2)</doc>
43268             <type name="gdouble" c:type="gdouble"/>
43269           </parameter>
43270           <parameter name="icons" transfer-ownership="none" allow-none="1">
43271             <doc xml:whitespace="preserve">a %NULL-terminated array of icon names, or %NULL if you want to set the list later with gtk_scale_button_set_icons()</doc>
43272             <type name="utf8" c:type="gchar**"/>
43273           </parameter>
43274         </parameters>
43275       </constructor>
43276       <method name="get_adjustment"
43277               c:identifier="gtk_scale_button_get_adjustment"
43278               version="2.12">
43279         <doc xml:whitespace="preserve">Gets the #GtkAdjustment associated with the #GtkScaleButton's scale.
43280 See gtk_range_get_adjustment() for details.</doc>
43281         <return-value transfer-ownership="none">
43282           <doc xml:whitespace="preserve">the adjustment associated with the scale</doc>
43283           <type name="Adjustment" c:type="GtkAdjustment*"/>
43284         </return-value>
43285       </method>
43286       <method name="get_minus_button"
43287               c:identifier="gtk_scale_button_get_minus_button"
43288               version="2.14">
43289         <doc xml:whitespace="preserve">Retrieves the minus button of the #GtkScaleButton.</doc>
43290         <return-value transfer-ownership="none">
43291           <doc xml:whitespace="preserve">the minus button of the #GtkScaleButton</doc>
43292           <type name="Widget" c:type="GtkWidget*"/>
43293         </return-value>
43294       </method>
43295       <method name="get_plus_button"
43296               c:identifier="gtk_scale_button_get_plus_button"
43297               version="2.14">
43298         <doc xml:whitespace="preserve">Retrieves the plus button of the #GtkScaleButton.</doc>
43299         <return-value transfer-ownership="none">
43300           <doc xml:whitespace="preserve">the plus button of the #GtkScaleButton</doc>
43301           <type name="Widget" c:type="GtkWidget*"/>
43302         </return-value>
43303       </method>
43304       <method name="get_popup"
43305               c:identifier="gtk_scale_button_get_popup"
43306               version="2.14">
43307         <doc xml:whitespace="preserve">Retrieves the popup of the #GtkScaleButton.</doc>
43308         <return-value transfer-ownership="none">
43309           <doc xml:whitespace="preserve">the popup of the #GtkScaleButton</doc>
43310           <type name="Widget" c:type="GtkWidget*"/>
43311         </return-value>
43312       </method>
43313       <method name="get_value"
43314               c:identifier="gtk_scale_button_get_value"
43315               version="2.12">
43316         <doc xml:whitespace="preserve">Gets the current value of the scale button.</doc>
43317         <return-value transfer-ownership="none">
43318           <doc xml:whitespace="preserve">current value of the scale button</doc>
43319           <type name="gdouble" c:type="gdouble"/>
43320         </return-value>
43321       </method>
43322       <method name="set_adjustment"
43323               c:identifier="gtk_scale_button_set_adjustment"
43324               version="2.12">
43325         <doc xml:whitespace="preserve">Sets the #GtkAdjustment to be used as a model
43326 for the #GtkScaleButton's scale.
43327 See gtk_range_set_adjustment() for details.</doc>
43328         <return-value transfer-ownership="none">
43329           <type name="none" c:type="void"/>
43330         </return-value>
43331         <parameters>
43332           <parameter name="adjustment" transfer-ownership="none">
43333             <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
43334             <type name="Adjustment" c:type="GtkAdjustment*"/>
43335           </parameter>
43336         </parameters>
43337       </method>
43338       <method name="set_icons"
43339               c:identifier="gtk_scale_button_set_icons"
43340               version="2.12">
43341         <doc xml:whitespace="preserve">Sets the icons to be used by the scale button.
43342 For details, see the #GtkScaleButton:icons property.</doc>
43343         <return-value transfer-ownership="none">
43344           <type name="none" c:type="void"/>
43345         </return-value>
43346         <parameters>
43347           <parameter name="icons" transfer-ownership="none">
43348             <doc xml:whitespace="preserve">a %NULL-terminated array of icon names</doc>
43349             <type name="utf8" c:type="gchar**"/>
43350           </parameter>
43351         </parameters>
43352       </method>
43353       <method name="set_value"
43354               c:identifier="gtk_scale_button_set_value"
43355               version="2.12">
43356         <doc xml:whitespace="preserve">Sets the current value of the scale; if the value is outside
43357 the minimum or maximum range values, it will be clamped to fit
43358 inside them. The scale button emits the #GtkScaleButton::value-changed
43359 signal if the value changes.</doc>
43360         <return-value transfer-ownership="none">
43361           <type name="none" c:type="void"/>
43362         </return-value>
43363         <parameters>
43364           <parameter name="value" transfer-ownership="none">
43365             <doc xml:whitespace="preserve">new value of the scale button</doc>
43366             <type name="gdouble" c:type="gdouble"/>
43367           </parameter>
43368         </parameters>
43369       </method>
43370       <property name="adjustment" writable="1" transfer-ownership="none">
43371         <type name="Adjustment"/>
43372       </property>
43373       <property name="icons"
43374                 version="2.12"
43375                 introspectable="0"
43376                 writable="1"
43377                 transfer-ownership="none">
43378         <doc xml:whitespace="preserve">The names of the icons to be used by the scale button.
43379 The first item in the array will be used in the button
43380 when the current value is the lowest value, the second
43381 item for the highest value. All the subsequent icons will
43382 be used for all the other values, spread evenly over the
43383 range of values.
43384 If there's only one icon name in the @icons array, it will
43385 be used for all the values. If only two icon names are in
43386 the @icons array, the first one will be used for the bottom
43387 50% of the scale, and the second one for the top 50%.
43388 It is recommended to use at least 3 icons so that the
43389 #GtkScaleButton reflects the current value of the scale
43390 better for the users.</doc>
43391         <type/>
43392       </property>
43393       <property name="size" writable="1" transfer-ownership="none">
43394         <type name="IconSize"/>
43395       </property>
43396       <property name="value" writable="1" transfer-ownership="none">
43397         <type name="gdouble"/>
43398       </property>
43399       <field name="parent">
43400         <type name="Button" c:type="GtkButton"/>
43401       </field>
43402       <field name="priv">
43403         <type name="ScaleButtonPrivate" c:type="GtkScaleButtonPrivate*"/>
43404       </field>
43405       <glib:signal name="popdown" version="2.12">
43406         <doc xml:whitespace="preserve">The ::popdown signal is a
43407 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
43408 which gets emitted to popdown the scale widget.
43409 The default binding for this signal is Escape.</doc>
43410         <return-value transfer-ownership="none">
43411           <type name="none"/>
43412         </return-value>
43413       </glib:signal>
43414       <glib:signal name="popup" version="2.12">
43415         <doc xml:whitespace="preserve">The ::popup signal is a
43416 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
43417 which gets emitted to popup the scale widget.
43418 The default bindings for this signal are Space, Enter and Return.</doc>
43419         <return-value transfer-ownership="none">
43420           <type name="none"/>
43421         </return-value>
43422       </glib:signal>
43423       <glib:signal name="value-changed" version="2.12">
43424         <doc xml:whitespace="preserve">The ::value-changed signal is emitted when the value field has
43425 changed.</doc>
43426         <return-value transfer-ownership="none">
43427           <type name="none"/>
43428         </return-value>
43429         <parameters>
43430           <parameter name="object" transfer-ownership="none">
43431             <doc xml:whitespace="preserve">the new value</doc>
43432             <type name="gdouble"/>
43433           </parameter>
43434         </parameters>
43435       </glib:signal>
43436     </class>
43437     <record name="ScaleButtonClass"
43438             c:type="GtkScaleButtonClass"
43439             glib:is-gtype-struct-for="ScaleButton">
43440       <field name="parent_class">
43441         <type name="ButtonClass" c:type="GtkButtonClass"/>
43442       </field>
43443       <field name="value_changed">
43444         <callback name="value_changed">
43445           <return-value transfer-ownership="none">
43446             <type name="none" c:type="void"/>
43447           </return-value>
43448           <parameters>
43449             <parameter name="button" transfer-ownership="none">
43450               <type name="ScaleButton" c:type="GtkScaleButton*"/>
43451             </parameter>
43452             <parameter name="value" transfer-ownership="none">
43453               <type name="gdouble" c:type="gdouble"/>
43454             </parameter>
43455           </parameters>
43456         </callback>
43457       </field>
43458       <field name="_gtk_reserved1" introspectable="0">
43459         <callback name="_gtk_reserved1">
43460           <return-value transfer-ownership="none">
43461             <type name="none" c:type="void"/>
43462           </return-value>
43463         </callback>
43464       </field>
43465       <field name="_gtk_reserved2" introspectable="0">
43466         <callback name="_gtk_reserved2">
43467           <return-value transfer-ownership="none">
43468             <type name="none" c:type="void"/>
43469           </return-value>
43470         </callback>
43471       </field>
43472       <field name="_gtk_reserved3" introspectable="0">
43473         <callback name="_gtk_reserved3">
43474           <return-value transfer-ownership="none">
43475             <type name="none" c:type="void"/>
43476           </return-value>
43477         </callback>
43478       </field>
43479       <field name="_gtk_reserved4" introspectable="0">
43480         <callback name="_gtk_reserved4">
43481           <return-value transfer-ownership="none">
43482             <type name="none" c:type="void"/>
43483           </return-value>
43484         </callback>
43485       </field>
43486     </record>
43487     <record name="ScaleButtonPrivate"
43488             c:type="GtkScaleButtonPrivate"
43489             disguised="1">
43490     </record>
43491     <record name="ScaleClass"
43492             c:type="GtkScaleClass"
43493             glib:is-gtype-struct-for="Scale">
43494       <field name="parent_class">
43495         <type name="RangeClass" c:type="GtkRangeClass"/>
43496       </field>
43497       <field name="format_value">
43498         <callback name="format_value">
43499           <return-value transfer-ownership="full">
43500             <type name="utf8" c:type="gchar*"/>
43501           </return-value>
43502           <parameters>
43503             <parameter name="scale" transfer-ownership="none">
43504               <type name="Scale" c:type="GtkScale*"/>
43505             </parameter>
43506             <parameter name="value" transfer-ownership="none">
43507               <type name="gdouble" c:type="gdouble"/>
43508             </parameter>
43509           </parameters>
43510         </callback>
43511       </field>
43512       <field name="draw_value">
43513         <callback name="draw_value">
43514           <return-value transfer-ownership="none">
43515             <type name="none" c:type="void"/>
43516           </return-value>
43517           <parameters>
43518             <parameter name="scale" transfer-ownership="none">
43519               <type name="Scale" c:type="GtkScale*"/>
43520             </parameter>
43521           </parameters>
43522         </callback>
43523       </field>
43524       <field name="get_layout_offsets">
43525         <callback name="get_layout_offsets">
43526           <return-value transfer-ownership="none">
43527             <type name="none" c:type="void"/>
43528           </return-value>
43529           <parameters>
43530             <parameter name="scale" transfer-ownership="none">
43531               <type name="Scale" c:type="GtkScale*"/>
43532             </parameter>
43533             <parameter name="x" transfer-ownership="none" allow-none="1">
43534               <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
43535               <type name="gint" c:type="gint*"/>
43536             </parameter>
43537             <parameter name="y" transfer-ownership="none" allow-none="1">
43538               <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
43539               <type name="gint" c:type="gint*"/>
43540             </parameter>
43541           </parameters>
43542         </callback>
43543       </field>
43544       <field name="_gtk_reserved1" introspectable="0">
43545         <callback name="_gtk_reserved1">
43546           <return-value transfer-ownership="none">
43547             <type name="none" c:type="void"/>
43548           </return-value>
43549         </callback>
43550       </field>
43551       <field name="_gtk_reserved2" introspectable="0">
43552         <callback name="_gtk_reserved2">
43553           <return-value transfer-ownership="none">
43554             <type name="none" c:type="void"/>
43555           </return-value>
43556         </callback>
43557       </field>
43558       <field name="_gtk_reserved3" introspectable="0">
43559         <callback name="_gtk_reserved3">
43560           <return-value transfer-ownership="none">
43561             <type name="none" c:type="void"/>
43562           </return-value>
43563         </callback>
43564       </field>
43565     </record>
43566     <record name="ScalePrivate" c:type="GtkScalePrivate" disguised="1">
43567     </record>
43568     <enumeration name="ScrollStep"
43569                  glib:type-name="GtkScrollStep"
43570                  glib:get-type="gtk_scroll_step_get_type"
43571                  c:type="GtkScrollStep">
43572       <member name="steps"
43573               value="0"
43574               c:identifier="GTK_SCROLL_STEPS"
43575               glib:nick="steps"/>
43576       <member name="pages"
43577               value="1"
43578               c:identifier="GTK_SCROLL_PAGES"
43579               glib:nick="pages"/>
43580       <member name="ends"
43581               value="2"
43582               c:identifier="GTK_SCROLL_ENDS"
43583               glib:nick="ends"/>
43584       <member name="horizontal_steps"
43585               value="3"
43586               c:identifier="GTK_SCROLL_HORIZONTAL_STEPS"
43587               glib:nick="horizontal-steps"/>
43588       <member name="horizontal_pages"
43589               value="4"
43590               c:identifier="GTK_SCROLL_HORIZONTAL_PAGES"
43591               glib:nick="horizontal-pages"/>
43592       <member name="horizontal_ends"
43593               value="5"
43594               c:identifier="GTK_SCROLL_HORIZONTAL_ENDS"
43595               glib:nick="horizontal-ends"/>
43596     </enumeration>
43597     <enumeration name="ScrollType"
43598                  glib:type-name="GtkScrollType"
43599                  glib:get-type="gtk_scroll_type_get_type"
43600                  c:type="GtkScrollType">
43601       <member name="none"
43602               value="0"
43603               c:identifier="GTK_SCROLL_NONE"
43604               glib:nick="none"/>
43605       <member name="jump"
43606               value="1"
43607               c:identifier="GTK_SCROLL_JUMP"
43608               glib:nick="jump"/>
43609       <member name="step_backward"
43610               value="2"
43611               c:identifier="GTK_SCROLL_STEP_BACKWARD"
43612               glib:nick="step-backward"/>
43613       <member name="step_forward"
43614               value="3"
43615               c:identifier="GTK_SCROLL_STEP_FORWARD"
43616               glib:nick="step-forward"/>
43617       <member name="page_backward"
43618               value="4"
43619               c:identifier="GTK_SCROLL_PAGE_BACKWARD"
43620               glib:nick="page-backward"/>
43621       <member name="page_forward"
43622               value="5"
43623               c:identifier="GTK_SCROLL_PAGE_FORWARD"
43624               glib:nick="page-forward"/>
43625       <member name="step_up"
43626               value="6"
43627               c:identifier="GTK_SCROLL_STEP_UP"
43628               glib:nick="step-up"/>
43629       <member name="step_down"
43630               value="7"
43631               c:identifier="GTK_SCROLL_STEP_DOWN"
43632               glib:nick="step-down"/>
43633       <member name="page_up"
43634               value="8"
43635               c:identifier="GTK_SCROLL_PAGE_UP"
43636               glib:nick="page-up"/>
43637       <member name="page_down"
43638               value="9"
43639               c:identifier="GTK_SCROLL_PAGE_DOWN"
43640               glib:nick="page-down"/>
43641       <member name="step_left"
43642               value="10"
43643               c:identifier="GTK_SCROLL_STEP_LEFT"
43644               glib:nick="step-left"/>
43645       <member name="step_right"
43646               value="11"
43647               c:identifier="GTK_SCROLL_STEP_RIGHT"
43648               glib:nick="step-right"/>
43649       <member name="page_left"
43650               value="12"
43651               c:identifier="GTK_SCROLL_PAGE_LEFT"
43652               glib:nick="page-left"/>
43653       <member name="page_right"
43654               value="13"
43655               c:identifier="GTK_SCROLL_PAGE_RIGHT"
43656               glib:nick="page-right"/>
43657       <member name="start"
43658               value="14"
43659               c:identifier="GTK_SCROLL_START"
43660               glib:nick="start"/>
43661       <member name="end"
43662               value="15"
43663               c:identifier="GTK_SCROLL_END"
43664               glib:nick="end"/>
43665     </enumeration>
43666     <class name="Scrollbar"
43667            c:symbol-prefix="scrollbar"
43668            c:type="GtkScrollbar"
43669            parent="Range"
43670            glib:type-name="GtkScrollbar"
43671            glib:get-type="gtk_scrollbar_get_type"
43672            glib:type-struct="ScrollbarClass">
43673       <implements name="Atk.ImplementorIface"/>
43674       <implements name="Buildable"/>
43675       <implements name="Orientable"/>
43676       <implements name="SizeRequest"/>
43677       <constructor name="new" c:identifier="gtk_scrollbar_new" version="3.0">
43678         <doc xml:whitespace="preserve">Creates a new scrollbar with the given orientation.</doc>
43679         <return-value transfer-ownership="none">
43680           <doc xml:whitespace="preserve">the new #GtkScrollbar.</doc>
43681           <type name="Widget" c:type="GtkWidget*"/>
43682         </return-value>
43683         <parameters>
43684           <parameter name="orientation" transfer-ownership="none">
43685             <doc xml:whitespace="preserve">the scrollbar's orientation.</doc>
43686             <type name="Orientation" c:type="GtkOrientation"/>
43687           </parameter>
43688           <parameter name="adjustment"
43689                      transfer-ownership="none"
43690                      allow-none="1">
43691             <doc xml:whitespace="preserve">the #GtkAdjustment to use, or %NULL to create a new adjustment.</doc>
43692             <type name="Adjustment" c:type="GtkAdjustment*"/>
43693           </parameter>
43694         </parameters>
43695       </constructor>
43696       <field name="range">
43697         <type name="Range" c:type="GtkRange"/>
43698       </field>
43699     </class>
43700     <record name="ScrollbarClass"
43701             c:type="GtkScrollbarClass"
43702             glib:is-gtype-struct-for="Scrollbar">
43703       <field name="parent_class">
43704         <type name="RangeClass" c:type="GtkRangeClass"/>
43705       </field>
43706       <field name="_gtk_reserved1" introspectable="0">
43707         <callback name="_gtk_reserved1">
43708           <return-value transfer-ownership="none">
43709             <type name="none" c:type="void"/>
43710           </return-value>
43711         </callback>
43712       </field>
43713       <field name="_gtk_reserved2" introspectable="0">
43714         <callback name="_gtk_reserved2">
43715           <return-value transfer-ownership="none">
43716             <type name="none" c:type="void"/>
43717           </return-value>
43718         </callback>
43719       </field>
43720       <field name="_gtk_reserved3" introspectable="0">
43721         <callback name="_gtk_reserved3">
43722           <return-value transfer-ownership="none">
43723             <type name="none" c:type="void"/>
43724           </return-value>
43725         </callback>
43726       </field>
43727       <field name="_gtk_reserved4" introspectable="0">
43728         <callback name="_gtk_reserved4">
43729           <return-value transfer-ownership="none">
43730             <type name="none" c:type="void"/>
43731           </return-value>
43732         </callback>
43733       </field>
43734     </record>
43735     <class name="ScrolledWindow"
43736            c:symbol-prefix="scrolled_window"
43737            c:type="GtkScrolledWindow"
43738            parent="Bin"
43739            glib:type-name="GtkScrolledWindow"
43740            glib:get-type="gtk_scrolled_window_get_type"
43741            glib:type-struct="ScrolledWindowClass">
43742       <implements name="Atk.ImplementorIface"/>
43743       <implements name="Buildable"/>
43744       <implements name="SizeRequest"/>
43745       <constructor name="new" c:identifier="gtk_scrolled_window_new">
43746         <doc xml:whitespace="preserve">Creates a new scrolled window.
43747 The two arguments are the scrolled window's adjustments; these will be
43748 shared with the scrollbars and the child widget to keep the bars in sync 
43749 with the child. Usually you want to pass %NULL for the adjustments, which 
43750 will cause the scrolled window to create them for you.</doc>
43751         <return-value transfer-ownership="none">
43752           <doc xml:whitespace="preserve">a new scrolled window</doc>
43753           <type name="Widget" c:type="GtkWidget*"/>
43754         </return-value>
43755         <parameters>
43756           <parameter name="hadjustment"
43757                      transfer-ownership="none"
43758                      allow-none="1">
43759             <doc xml:whitespace="preserve">horizontal adjustment</doc>
43760             <type name="Adjustment" c:type="GtkAdjustment*"/>
43761           </parameter>
43762           <parameter name="vadjustment"
43763                      transfer-ownership="none"
43764                      allow-none="1">
43765             <doc xml:whitespace="preserve">vertical adjustment</doc>
43766             <type name="Adjustment" c:type="GtkAdjustment*"/>
43767           </parameter>
43768         </parameters>
43769       </constructor>
43770       <method name="add_with_viewport"
43771               c:identifier="gtk_scrolled_window_add_with_viewport">
43772         <doc xml:whitespace="preserve">Used to add children without native scrolling capabilities. This
43773 is simply a convenience function; it is equivalent to adding the
43774 unscrollable child to a viewport, then adding the viewport to the
43775 scrolled window. If a child has native scrolling, use
43776 gtk_container_add() instead of this function.
43777 The viewport scrolls the child by moving its #GdkWindow, and takes
43778 the size of the child to be the size of its toplevel #GdkWindow. 
43779 This will be very wrong for most widgets that support native scrolling;
43780 for example, if you add a widget such as #GtkTreeView with a viewport,
43781 the whole widget will scroll, including the column headings. Thus, 
43782 widgets with native scrolling support should not be used with the 
43783 #GtkViewport proxy.
43784 A widget supports scrolling natively if the 
43785 set_scroll_adjustments_signal field in #GtkWidgetClass is non-zero,
43786 i.e. has been filled in with a valid signal identifier.</doc>
43787         <return-value transfer-ownership="none">
43788           <type name="none" c:type="void"/>
43789         </return-value>
43790         <parameters>
43791           <parameter name="child" transfer-ownership="none">
43792             <doc xml:whitespace="preserve">the widget you want to scroll</doc>
43793             <type name="Widget" c:type="GtkWidget*"/>
43794           </parameter>
43795         </parameters>
43796       </method>
43797       <method name="get_hadjustment"
43798               c:identifier="gtk_scrolled_window_get_hadjustment">
43799         <doc xml:whitespace="preserve">Returns the horizontal scrollbar's adjustment, used to connect the
43800 horizontal scrollbar to the child widget's horizontal scroll
43801 functionality.</doc>
43802         <return-value transfer-ownership="none">
43803           <doc xml:whitespace="preserve">the horizontal #GtkAdjustment</doc>
43804           <type name="Adjustment" c:type="GtkAdjustment*"/>
43805         </return-value>
43806       </method>
43807       <method name="get_hscrollbar"
43808               c:identifier="gtk_scrolled_window_get_hscrollbar"
43809               version="2.8">
43810         <doc xml:whitespace="preserve">Returns the horizontal scrollbar of @scrolled_window.
43811 or %NULL if it does not have one.</doc>
43812         <return-value transfer-ownership="none">
43813           <doc xml:whitespace="preserve">the horizontal scrollbar of the scrolled window,</doc>
43814           <type name="Widget" c:type="GtkWidget*"/>
43815         </return-value>
43816       </method>
43817       <method name="get_placement"
43818               c:identifier="gtk_scrolled_window_get_placement">
43819         <doc xml:whitespace="preserve">Gets the placement of the contents with respect to the scrollbars
43820 for the scrolled window. See gtk_scrolled_window_set_placement().
43821 See also gtk_scrolled_window_set_placement() and
43822 gtk_scrolled_window_unset_placement().</doc>
43823         <return-value transfer-ownership="none">
43824           <doc xml:whitespace="preserve">the current placement value.</doc>
43825           <type name="CornerType" c:type="GtkCornerType"/>
43826         </return-value>
43827       </method>
43828       <method name="get_policy" c:identifier="gtk_scrolled_window_get_policy">
43829         <doc xml:whitespace="preserve">Retrieves the current policy values for the horizontal and vertical
43830 scrollbars. See gtk_scrolled_window_set_policy().</doc>
43831         <return-value transfer-ownership="none">
43832           <type name="none" c:type="void"/>
43833         </return-value>
43834         <parameters>
43835           <parameter name="hscrollbar_policy" transfer-ownership="none">
43836             <doc xml:whitespace="preserve">location to store the policy for the horizontal scrollbar, or %NULL.</doc>
43837             <type name="PolicyType" c:type="GtkPolicyType*"/>
43838           </parameter>
43839           <parameter name="vscrollbar_policy" transfer-ownership="none">
43840             <doc xml:whitespace="preserve">location to store the policy for the vertical scrollbar, or %NULL.</doc>
43841             <type name="PolicyType" c:type="GtkPolicyType*"/>
43842           </parameter>
43843         </parameters>
43844       </method>
43845       <method name="get_shadow_type"
43846               c:identifier="gtk_scrolled_window_get_shadow_type">
43847         <doc xml:whitespace="preserve">Gets the shadow type of the scrolled window. See 
43848 gtk_scrolled_window_set_shadow_type().</doc>
43849         <return-value transfer-ownership="none">
43850           <doc xml:whitespace="preserve">the current shadow type</doc>
43851           <type name="ShadowType" c:type="GtkShadowType"/>
43852         </return-value>
43853       </method>
43854       <method name="get_vadjustment"
43855               c:identifier="gtk_scrolled_window_get_vadjustment">
43856         <doc xml:whitespace="preserve">Returns the vertical scrollbar's adjustment, used to connect the
43857 vertical scrollbar to the child widget's vertical scroll functionality.</doc>
43858         <return-value transfer-ownership="none">
43859           <doc xml:whitespace="preserve">the vertical #GtkAdjustment</doc>
43860           <type name="Adjustment" c:type="GtkAdjustment*"/>
43861         </return-value>
43862       </method>
43863       <method name="get_vscrollbar"
43864               c:identifier="gtk_scrolled_window_get_vscrollbar"
43865               version="2.8">
43866         <doc xml:whitespace="preserve">Returns the vertical scrollbar of @scrolled_window.
43867 or %NULL if it does not have one.</doc>
43868         <return-value transfer-ownership="none">
43869           <doc xml:whitespace="preserve">the vertical scrollbar of the scrolled window,</doc>
43870           <type name="Widget" c:type="GtkWidget*"/>
43871         </return-value>
43872       </method>
43873       <method name="set_hadjustment"
43874               c:identifier="gtk_scrolled_window_set_hadjustment">
43875         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the horizontal scrollbar.</doc>
43876         <return-value transfer-ownership="none">
43877           <type name="none" c:type="void"/>
43878         </return-value>
43879         <parameters>
43880           <parameter name="hadjustment" transfer-ownership="none">
43881             <doc xml:whitespace="preserve">horizontal scroll adjustment</doc>
43882             <type name="Adjustment" c:type="GtkAdjustment*"/>
43883           </parameter>
43884         </parameters>
43885       </method>
43886       <method name="set_placement"
43887               c:identifier="gtk_scrolled_window_set_placement">
43888         <doc xml:whitespace="preserve">Sets the placement of the contents with respect to the scrollbars
43889 for the scrolled window.
43890 The default is %GTK_CORNER_TOP_LEFT, meaning the child is
43891 in the top left, with the scrollbars underneath and to the right.
43892 Other values in #GtkCornerType are %GTK_CORNER_TOP_RIGHT,
43893 %GTK_CORNER_BOTTOM_LEFT, and %GTK_CORNER_BOTTOM_RIGHT.
43894 See also gtk_scrolled_window_get_placement() and
43895 gtk_scrolled_window_unset_placement().</doc>
43896         <return-value transfer-ownership="none">
43897           <type name="none" c:type="void"/>
43898         </return-value>
43899         <parameters>
43900           <parameter name="window_placement" transfer-ownership="none">
43901             <doc xml:whitespace="preserve">position of the child window</doc>
43902             <type name="CornerType" c:type="GtkCornerType"/>
43903           </parameter>
43904         </parameters>
43905       </method>
43906       <method name="set_policy" c:identifier="gtk_scrolled_window_set_policy">
43907         <doc xml:whitespace="preserve">Sets the scrollbar policy for the horizontal and vertical scrollbars.
43908 The policy determines when the scrollbar should appear; it is a value
43909 from the #GtkPolicyType enumeration. If %GTK_POLICY_ALWAYS, the
43910 scrollbar is always present; if %GTK_POLICY_NEVER, the scrollbar is
43911 never present; if %GTK_POLICY_AUTOMATIC, the scrollbar is present only
43912 if needed (that is, if the slider part of the bar would be smaller
43913 than the trough - the display is larger than the page size).</doc>
43914         <return-value transfer-ownership="none">
43915           <type name="none" c:type="void"/>
43916         </return-value>
43917         <parameters>
43918           <parameter name="hscrollbar_policy" transfer-ownership="none">
43919             <doc xml:whitespace="preserve">policy for horizontal bar</doc>
43920             <type name="PolicyType" c:type="GtkPolicyType"/>
43921           </parameter>
43922           <parameter name="vscrollbar_policy" transfer-ownership="none">
43923             <doc xml:whitespace="preserve">policy for vertical bar</doc>
43924             <type name="PolicyType" c:type="GtkPolicyType"/>
43925           </parameter>
43926         </parameters>
43927       </method>
43928       <method name="set_shadow_type"
43929               c:identifier="gtk_scrolled_window_set_shadow_type">
43930         <doc xml:whitespace="preserve">Changes the type of shadow drawn around the contents of</doc>
43931         <return-value transfer-ownership="none">
43932           <type name="none" c:type="void"/>
43933         </return-value>
43934         <parameters>
43935           <parameter name="type" transfer-ownership="none">
43936             <doc xml:whitespace="preserve">kind of shadow to draw around scrolled window contents</doc>
43937             <type name="ShadowType" c:type="GtkShadowType"/>
43938           </parameter>
43939         </parameters>
43940       </method>
43941       <method name="set_vadjustment"
43942               c:identifier="gtk_scrolled_window_set_vadjustment">
43943         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the vertical scrollbar.</doc>
43944         <return-value transfer-ownership="none">
43945           <type name="none" c:type="void"/>
43946         </return-value>
43947         <parameters>
43948           <parameter name="vadjustment" transfer-ownership="none">
43949             <doc xml:whitespace="preserve">vertical scroll adjustment</doc>
43950             <type name="Adjustment" c:type="GtkAdjustment*"/>
43951           </parameter>
43952         </parameters>
43953       </method>
43954       <method name="unset_placement"
43955               c:identifier="gtk_scrolled_window_unset_placement"
43956               version="2.10">
43957         <doc xml:whitespace="preserve">Unsets the placement of the contents with respect to the scrollbars
43958 for the scrolled window. If no window placement is set for a scrolled
43959 window, it obeys the "gtk-scrolled-window-placement" XSETTING.
43960 See also gtk_scrolled_window_set_placement() and
43961 gtk_scrolled_window_get_placement().</doc>
43962         <return-value transfer-ownership="none">
43963           <type name="none" c:type="void"/>
43964         </return-value>
43965       </method>
43966       <property name="hadjustment"
43967                 writable="1"
43968                 construct="1"
43969                 transfer-ownership="none">
43970         <type name="Adjustment"/>
43971       </property>
43972       <property name="hscrollbar-policy"
43973                 writable="1"
43974                 transfer-ownership="none">
43975         <type name="PolicyType"/>
43976       </property>
43977       <property name="shadow-type" writable="1" transfer-ownership="none">
43978         <type name="ShadowType"/>
43979       </property>
43980       <property name="vadjustment"
43981                 writable="1"
43982                 construct="1"
43983                 transfer-ownership="none">
43984         <type name="Adjustment"/>
43985       </property>
43986       <property name="vscrollbar-policy"
43987                 writable="1"
43988                 transfer-ownership="none">
43989         <type name="PolicyType"/>
43990       </property>
43991       <property name="window-placement" writable="1" transfer-ownership="none">
43992         <type name="CornerType"/>
43993       </property>
43994       <property name="window-placement-set"
43995                 version="2.10"
43996                 writable="1"
43997                 transfer-ownership="none">
43998         <doc xml:whitespace="preserve">Whether "window-placement" should be used to determine the location 
43999 of the contents with respect to the scrollbars. Otherwise, the 
44000 "gtk-scrolled-window-placement" setting is used.</doc>
44001         <type name="gboolean"/>
44002       </property>
44003       <field name="container">
44004         <type name="Bin" c:type="GtkBin"/>
44005       </field>
44006       <field name="priv">
44007         <type name="ScrolledWindowPrivate" c:type="GtkScrolledWindowPrivate*"/>
44008       </field>
44009       <glib:signal name="move-focus-out">
44010         <return-value transfer-ownership="none">
44011           <type name="none"/>
44012         </return-value>
44013         <parameters>
44014           <parameter name="object" transfer-ownership="none">
44015             <type name="DirectionType"/>
44016           </parameter>
44017         </parameters>
44018       </glib:signal>
44019       <glib:signal name="scroll-child">
44020         <return-value transfer-ownership="none">
44021           <type name="gboolean"/>
44022         </return-value>
44023         <parameters>
44024           <parameter name="object" transfer-ownership="none">
44025             <type name="ScrollType"/>
44026           </parameter>
44027           <parameter name="p0" transfer-ownership="none">
44028             <type name="gboolean"/>
44029           </parameter>
44030         </parameters>
44031       </glib:signal>
44032     </class>
44033     <record name="ScrolledWindowClass"
44034             c:type="GtkScrolledWindowClass"
44035             glib:is-gtype-struct-for="ScrolledWindow">
44036       <field name="parent_class">
44037         <type name="BinClass" c:type="GtkBinClass"/>
44038       </field>
44039       <field name="scrollbar_spacing">
44040         <type name="gint" c:type="gint"/>
44041       </field>
44042       <field name="scroll_child">
44043         <callback name="scroll_child">
44044           <return-value transfer-ownership="none">
44045             <type name="gboolean" c:type="gboolean"/>
44046           </return-value>
44047           <parameters>
44048             <parameter name="scrolled_window" transfer-ownership="none">
44049               <type name="ScrolledWindow" c:type="GtkScrolledWindow*"/>
44050             </parameter>
44051             <parameter name="scroll" transfer-ownership="none">
44052               <type name="ScrollType" c:type="GtkScrollType"/>
44053             </parameter>
44054             <parameter name="horizontal" transfer-ownership="none">
44055               <type name="gboolean" c:type="gboolean"/>
44056             </parameter>
44057           </parameters>
44058         </callback>
44059       </field>
44060       <field name="move_focus_out">
44061         <callback name="move_focus_out">
44062           <return-value transfer-ownership="none">
44063             <type name="none" c:type="void"/>
44064           </return-value>
44065           <parameters>
44066             <parameter name="scrolled_window" transfer-ownership="none">
44067               <type name="ScrolledWindow" c:type="GtkScrolledWindow*"/>
44068             </parameter>
44069             <parameter name="direction" transfer-ownership="none">
44070               <type name="DirectionType" c:type="GtkDirectionType"/>
44071             </parameter>
44072           </parameters>
44073         </callback>
44074       </field>
44075       <field name="_gtk_reserved1" introspectable="0">
44076         <callback name="_gtk_reserved1">
44077           <return-value transfer-ownership="none">
44078             <type name="none" c:type="void"/>
44079           </return-value>
44080         </callback>
44081       </field>
44082       <field name="_gtk_reserved2" introspectable="0">
44083         <callback name="_gtk_reserved2">
44084           <return-value transfer-ownership="none">
44085             <type name="none" c:type="void"/>
44086           </return-value>
44087         </callback>
44088       </field>
44089       <field name="_gtk_reserved3" introspectable="0">
44090         <callback name="_gtk_reserved3">
44091           <return-value transfer-ownership="none">
44092             <type name="none" c:type="void"/>
44093           </return-value>
44094         </callback>
44095       </field>
44096       <field name="_gtk_reserved4" introspectable="0">
44097         <callback name="_gtk_reserved4">
44098           <return-value transfer-ownership="none">
44099             <type name="none" c:type="void"/>
44100           </return-value>
44101         </callback>
44102       </field>
44103     </record>
44104     <record name="ScrolledWindowPrivate"
44105             c:type="GtkScrolledWindowPrivate"
44106             disguised="1">
44107     </record>
44108     <record name="SelectionData"
44109             c:type="GtkSelectionData"
44110             glib:type-name="GtkSelectionData"
44111             glib:get-type="gtk_selection_data_get_type"
44112             c:symbol-prefix="selection_data">
44113       <field name="selection" writable="1">
44114         <type name="Gdk.Atom" c:type="GdkAtom"/>
44115       </field>
44116       <field name="target" writable="1">
44117         <type name="Gdk.Atom" c:type="GdkAtom"/>
44118       </field>
44119       <field name="type" writable="1">
44120         <type name="Gdk.Atom" c:type="GdkAtom"/>
44121       </field>
44122       <field name="format" writable="1">
44123         <type name="gint" c:type="gint"/>
44124       </field>
44125       <field name="data" writable="1">
44126         <type name="guint8" c:type="guchar*"/>
44127       </field>
44128       <field name="length" writable="1">
44129         <type name="gint" c:type="gint"/>
44130       </field>
44131       <field name="display" writable="1">
44132         <type name="Gdk.Display" c:type="GdkDisplay*"/>
44133       </field>
44134       <method name="copy" c:identifier="gtk_selection_data_copy">
44135         <doc xml:whitespace="preserve">Makes a copy of a #GtkSelectionData structure and its data.</doc>
44136         <return-value transfer-ownership="full">
44137           <doc xml:whitespace="preserve">a pointer to a copy of @data.</doc>
44138           <type name="SelectionData" c:type="GtkSelectionData*"/>
44139         </return-value>
44140       </method>
44141       <method name="free" c:identifier="gtk_selection_data_free">
44142         <doc xml:whitespace="preserve">Frees a #GtkSelectionData structure returned from
44143 gtk_selection_data_copy().</doc>
44144         <return-value transfer-ownership="none">
44145           <type name="none" c:type="void"/>
44146         </return-value>
44147       </method>
44148       <method name="get_data"
44149               c:identifier="gtk_selection_data_get_data"
44150               version="2.14">
44151         <doc xml:whitespace="preserve">Retrieves the raw data of the selection.</doc>
44152         <return-value transfer-ownership="none">
44153           <doc xml:whitespace="preserve">the raw data of the selection.</doc>
44154           <type name="guint8" c:type="guchar*"/>
44155         </return-value>
44156       </method>
44157       <method name="get_data_type"
44158               c:identifier="gtk_selection_data_get_data_type"
44159               version="2.14"
44160               introspectable="0">
44161         <doc xml:whitespace="preserve">Retrieves the data type of the selection.</doc>
44162         <return-value>
44163           <doc xml:whitespace="preserve">the data type of the selection.</doc>
44164           <type name="Gdk.Atom" c:type="GdkAtom"/>
44165         </return-value>
44166       </method>
44167       <method name="get_display"
44168               c:identifier="gtk_selection_data_get_display"
44169               version="2.14">
44170         <doc xml:whitespace="preserve">Retrieves the display of the selection.</doc>
44171         <return-value transfer-ownership="none">
44172           <doc xml:whitespace="preserve">the display of the selection.</doc>
44173           <type name="Gdk.Display" c:type="GdkDisplay*"/>
44174         </return-value>
44175       </method>
44176       <method name="get_format"
44177               c:identifier="gtk_selection_data_get_format"
44178               version="2.14">
44179         <doc xml:whitespace="preserve">Retrieves the format of the selection.</doc>
44180         <return-value transfer-ownership="none">
44181           <doc xml:whitespace="preserve">the format of the selection.</doc>
44182           <type name="gint" c:type="gint"/>
44183         </return-value>
44184       </method>
44185       <method name="get_length"
44186               c:identifier="gtk_selection_data_get_length"
44187               version="2.14">
44188         <doc xml:whitespace="preserve">Retrieves the length of the raw data of the selection.</doc>
44189         <return-value transfer-ownership="none">
44190           <doc xml:whitespace="preserve">the length of the data of the selection.</doc>
44191           <type name="gint" c:type="gint"/>
44192         </return-value>
44193       </method>
44194       <method name="get_pixbuf"
44195               c:identifier="gtk_selection_data_get_pixbuf"
44196               version="2.6">
44197         <doc xml:whitespace="preserve">Gets the contents of the selection data as a #GdkPixbuf.
44198 image type and it could be converted to a #GdkPixbuf, a 
44199 newly allocated pixbuf is returned, otherwise %NULL.
44200 If the result is non-%NULL it must be freed with g_object_unref().</doc>
44201         <return-value transfer-ownership="full">
44202           <doc xml:whitespace="preserve">if the selection data contained a recognized</doc>
44203           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
44204         </return-value>
44205       </method>
44206       <method name="get_selection"
44207               c:identifier="gtk_selection_data_get_selection"
44208               version="2.16"
44209               introspectable="0">
44210         <doc xml:whitespace="preserve">Retrieves the selection #GdkAtom of the selection data.</doc>
44211         <return-value>
44212           <doc xml:whitespace="preserve">the selection #GdkAtom of the selection data.</doc>
44213           <type name="Gdk.Atom" c:type="GdkAtom"/>
44214         </return-value>
44215       </method>
44216       <method name="get_target"
44217               c:identifier="gtk_selection_data_get_target"
44218               version="2.14"
44219               introspectable="0">
44220         <doc xml:whitespace="preserve">Retrieves the target of the selection.</doc>
44221         <return-value>
44222           <doc xml:whitespace="preserve">the target of the selection.</doc>
44223           <type name="Gdk.Atom" c:type="GdkAtom"/>
44224         </return-value>
44225       </method>
44226       <method name="get_targets" c:identifier="gtk_selection_data_get_targets">
44227         <doc xml:whitespace="preserve">Gets the contents of @selection_data as an array of targets.
44228 This can be used to interpret the results of getting
44229 the standard TARGETS target that is always supplied for
44230 any selection.
44231 array of targets, otherwise %FALSE.</doc>
44232         <return-value transfer-ownership="none">
44233           <doc xml:whitespace="preserve">%TRUE if @selection_data contains a valid</doc>
44234           <type name="gboolean" c:type="gboolean"/>
44235         </return-value>
44236         <parameters>
44237           <parameter name="targets" transfer-ownership="none">
44238             <doc xml:whitespace="preserve">location to store an array of targets. The result stored here must be freed with g_free().</doc>
44239             <type name="Gdk.Atom" c:type="GdkAtom**"/>
44240           </parameter>
44241           <parameter name="n_atoms" transfer-ownership="none">
44242             <doc xml:whitespace="preserve">location to store number of items in @targets.</doc>
44243             <type name="gint" c:type="gint*"/>
44244           </parameter>
44245         </parameters>
44246       </method>
44247       <method name="get_text" c:identifier="gtk_selection_data_get_text">
44248         <doc xml:whitespace="preserve">Gets the contents of the selection data as a UTF-8 string.
44249 text type and it could be converted to UTF-8, a newly allocated
44250 string containing the converted text, otherwise %NULL.
44251 If the result is non-%NULL it must be freed with g_free().</doc>
44252         <return-value transfer-ownership="none">
44253           <doc xml:whitespace="preserve">if the selection data contained a recognized</doc>
44254           <type name="guint8" c:type="guchar*"/>
44255         </return-value>
44256       </method>
44257       <method name="get_uris"
44258               c:identifier="gtk_selection_data_get_uris"
44259               version="2.6">
44260         <doc xml:whitespace="preserve">Gets the contents of the selection data as array of URIs.
44261 the selection data contains a list of
44262 URIs, a newly allocated %NULL-terminated string array
44263 containing the URIs, otherwise %NULL. If the result is
44264 non-%NULL it must be freed with g_strfreev().</doc>
44265         <return-value transfer-ownership="full">
44266           <doc xml:whitespace="preserve">if</doc>
44267           <array c:type="gchar**">
44268             <type name="utf8"/>
44269           </array>
44270         </return-value>
44271       </method>
44272       <method name="set" c:identifier="gtk_selection_data_set">
44273         <doc xml:whitespace="preserve">Stores new data into a #GtkSelectionData object. Should
44274 &lt;emphasis&gt;only&lt;/emphasis&gt; be called from a selection handler callback.
44275 Zero-terminates the stored data.</doc>
44276         <return-value transfer-ownership="none">
44277           <type name="none" c:type="void"/>
44278         </return-value>
44279         <parameters>
44280           <parameter name="type" transfer-ownership="none">
44281             <doc xml:whitespace="preserve">the type of selection data</doc>
44282             <type name="Gdk.Atom" c:type="GdkAtom"/>
44283           </parameter>
44284           <parameter name="format" transfer-ownership="none">
44285             <doc xml:whitespace="preserve">format (number of bits in a unit)</doc>
44286             <type name="gint" c:type="gint"/>
44287           </parameter>
44288           <parameter name="data" transfer-ownership="none">
44289             <doc xml:whitespace="preserve">pointer to the data (will be copied)</doc>
44290             <type name="guint8" c:type="guchar*"/>
44291           </parameter>
44292           <parameter name="length" transfer-ownership="none">
44293             <doc xml:whitespace="preserve">length of the data</doc>
44294             <type name="gint" c:type="gint"/>
44295           </parameter>
44296         </parameters>
44297       </method>
44298       <method name="set_pixbuf"
44299               c:identifier="gtk_selection_data_set_pixbuf"
44300               version="2.6">
44301         <doc xml:whitespace="preserve">Sets the contents of the selection from a #GdkPixbuf
44302 The pixbuf is converted to the form determined by
44303 otherwise %FALSE.</doc>
44304         <return-value transfer-ownership="none">
44305           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
44306           <type name="gboolean" c:type="gboolean"/>
44307         </return-value>
44308         <parameters>
44309           <parameter name="pixbuf" transfer-ownership="none">
44310             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
44311             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
44312           </parameter>
44313         </parameters>
44314       </method>
44315       <method name="set_text" c:identifier="gtk_selection_data_set_text">
44316         <doc xml:whitespace="preserve">Sets the contents of the selection from a UTF-8 encoded string.
44317 The string is converted to the form determined by
44318 otherwise %FALSE.</doc>
44319         <return-value transfer-ownership="none">
44320           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
44321           <type name="gboolean" c:type="gboolean"/>
44322         </return-value>
44323         <parameters>
44324           <parameter name="str" transfer-ownership="none">
44325             <doc xml:whitespace="preserve">a UTF-8 string</doc>
44326             <type name="utf8" c:type="gchar*"/>
44327           </parameter>
44328           <parameter name="len" transfer-ownership="none">
44329             <doc xml:whitespace="preserve">the length of @str, or -1 if @str is nul-terminated.</doc>
44330             <type name="gint" c:type="gint"/>
44331           </parameter>
44332         </parameters>
44333       </method>
44334       <method name="set_uris"
44335               c:identifier="gtk_selection_data_set_uris"
44336               version="2.6">
44337         <doc xml:whitespace="preserve">Sets the contents of the selection from a list of URIs.
44338 The string is converted to the form determined by
44339 otherwise %FALSE.</doc>
44340         <return-value transfer-ownership="none">
44341           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
44342           <type name="gboolean" c:type="gboolean"/>
44343         </return-value>
44344         <parameters>
44345           <parameter name="uris" transfer-ownership="none">
44346             <doc xml:whitespace="preserve">a %NULL-terminated array of strings holding URIs</doc>
44347             <type name="utf8" c:type="gchar**"/>
44348           </parameter>
44349         </parameters>
44350       </method>
44351       <method name="targets_include_image"
44352               c:identifier="gtk_selection_data_targets_include_image"
44353               version="2.6">
44354         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
44355 determines if any of the targets in @targets can be used to
44356 provide a #GdkPixbuf.
44357 and a suitable target for images is included, otherwise %FALSE.</doc>
44358         <return-value transfer-ownership="none">
44359           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
44360           <type name="gboolean" c:type="gboolean"/>
44361         </return-value>
44362         <parameters>
44363           <parameter name="writable" transfer-ownership="none">
44364             <doc xml:whitespace="preserve">whether to accept only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
44365             <type name="gboolean" c:type="gboolean"/>
44366           </parameter>
44367         </parameters>
44368       </method>
44369       <method name="targets_include_rich_text"
44370               c:identifier="gtk_selection_data_targets_include_rich_text"
44371               version="2.10">
44372         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
44373 determines if any of the targets in @targets can be used to
44374 provide rich text.
44375 and a suitable target for rich text is included,
44376 otherwise %FALSE.</doc>
44377         <return-value transfer-ownership="none">
44378           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
44379           <type name="gboolean" c:type="gboolean"/>
44380         </return-value>
44381         <parameters>
44382           <parameter name="buffer" transfer-ownership="none">
44383             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
44384             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
44385           </parameter>
44386         </parameters>
44387       </method>
44388       <method name="targets_include_text"
44389               c:identifier="gtk_selection_data_targets_include_text">
44390         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
44391 determines if any of the targets in @targets can be used to
44392 provide text.
44393 and a suitable target for text is included, otherwise %FALSE.</doc>
44394         <return-value transfer-ownership="none">
44395           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
44396           <type name="gboolean" c:type="gboolean"/>
44397         </return-value>
44398       </method>
44399       <method name="targets_include_uri"
44400               c:identifier="gtk_selection_data_targets_include_uri"
44401               version="2.10">
44402         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
44403 determines if any of the targets in @targets can be used to
44404 provide a list or URIs.
44405 and a suitable target for URI lists is included, otherwise %FALSE.</doc>
44406         <return-value transfer-ownership="none">
44407           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
44408           <type name="gboolean" c:type="gboolean"/>
44409         </return-value>
44410       </method>
44411     </record>
44412     <enumeration name="SelectionMode"
44413                  glib:type-name="GtkSelectionMode"
44414                  glib:get-type="gtk_selection_mode_get_type"
44415                  c:type="GtkSelectionMode">
44416       <member name="none"
44417               value="0"
44418               c:identifier="GTK_SELECTION_NONE"
44419               glib:nick="none"/>
44420       <member name="single"
44421               value="1"
44422               c:identifier="GTK_SELECTION_SINGLE"
44423               glib:nick="single"/>
44424       <member name="browse"
44425               value="2"
44426               c:identifier="GTK_SELECTION_BROWSE"
44427               glib:nick="browse"/>
44428       <member name="multiple"
44429               value="3"
44430               c:identifier="GTK_SELECTION_MULTIPLE"
44431               glib:nick="multiple"/>
44432     </enumeration>
44433     <enumeration name="SensitivityType"
44434                  glib:type-name="GtkSensitivityType"
44435                  glib:get-type="gtk_sensitivity_type_get_type"
44436                  c:type="GtkSensitivityType">
44437       <doc xml:whitespace="preserve">Determines how GTK+ handles the sensitivity of stepper arrows
44438 at the end of range widgets.</doc>
44439       <member name="auto"
44440               value="0"
44441               c:identifier="GTK_SENSITIVITY_AUTO"
44442               glib:nick="auto"/>
44443       <member name="on"
44444               value="1"
44445               c:identifier="GTK_SENSITIVITY_ON"
44446               glib:nick="on"/>
44447       <member name="off"
44448               value="2"
44449               c:identifier="GTK_SENSITIVITY_OFF"
44450               glib:nick="off"/>
44451     </enumeration>
44452     <class name="Separator"
44453            c:symbol-prefix="separator"
44454            c:type="GtkSeparator"
44455            parent="Widget"
44456            glib:type-name="GtkSeparator"
44457            glib:get-type="gtk_separator_get_type"
44458            glib:type-struct="SeparatorClass">
44459       <implements name="Atk.ImplementorIface"/>
44460       <implements name="Buildable"/>
44461       <implements name="Orientable"/>
44462       <implements name="SizeRequest"/>
44463       <constructor name="new" c:identifier="gtk_separator_new" version="3.0">
44464         <doc xml:whitespace="preserve">Creates a new #GtkSeparator with the given orientation.</doc>
44465         <return-value transfer-ownership="none">
44466           <doc xml:whitespace="preserve">a new #GtkSeparator.</doc>
44467           <type name="Widget" c:type="GtkWidget*"/>
44468         </return-value>
44469         <parameters>
44470           <parameter name="orientation" transfer-ownership="none">
44471             <doc xml:whitespace="preserve">the separator's orientation.</doc>
44472             <type name="Orientation" c:type="GtkOrientation"/>
44473           </parameter>
44474         </parameters>
44475       </constructor>
44476       <field name="widget">
44477         <type name="Widget" c:type="GtkWidget"/>
44478       </field>
44479       <field name="priv">
44480         <type name="SeparatorPrivate" c:type="GtkSeparatorPrivate*"/>
44481       </field>
44482     </class>
44483     <record name="SeparatorClass"
44484             c:type="GtkSeparatorClass"
44485             glib:is-gtype-struct-for="Separator">
44486       <field name="parent_class">
44487         <type name="WidgetClass" c:type="GtkWidgetClass"/>
44488       </field>
44489     </record>
44490     <class name="SeparatorMenuItem"
44491            c:symbol-prefix="separator_menu_item"
44492            c:type="GtkSeparatorMenuItem"
44493            parent="MenuItem"
44494            glib:type-name="GtkSeparatorMenuItem"
44495            glib:get-type="gtk_separator_menu_item_get_type"
44496            glib:type-struct="SeparatorMenuItemClass">
44497       <implements name="Atk.ImplementorIface"/>
44498       <implements name="Activatable"/>
44499       <implements name="Buildable"/>
44500       <implements name="SizeRequest"/>
44501       <constructor name="new" c:identifier="gtk_separator_menu_item_new">
44502         <doc xml:whitespace="preserve">Creates a new #GtkSeparatorMenuItem.</doc>
44503         <return-value transfer-ownership="none">
44504           <doc xml:whitespace="preserve">a new #GtkSeparatorMenuItem.</doc>
44505           <type name="Widget" c:type="GtkWidget*"/>
44506         </return-value>
44507       </constructor>
44508       <field name="menu_item">
44509         <type name="MenuItem" c:type="GtkMenuItem"/>
44510       </field>
44511     </class>
44512     <record name="SeparatorMenuItemClass"
44513             c:type="GtkSeparatorMenuItemClass"
44514             glib:is-gtype-struct-for="SeparatorMenuItem">
44515       <field name="parent_class">
44516         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
44517       </field>
44518     </record>
44519     <record name="SeparatorPrivate" c:type="GtkSeparatorPrivate" disguised="1">
44520     </record>
44521     <class name="SeparatorToolItem"
44522            c:symbol-prefix="separator_tool_item"
44523            c:type="GtkSeparatorToolItem"
44524            parent="ToolItem"
44525            glib:type-name="GtkSeparatorToolItem"
44526            glib:get-type="gtk_separator_tool_item_get_type"
44527            glib:type-struct="SeparatorToolItemClass">
44528       <implements name="Atk.ImplementorIface"/>
44529       <implements name="Activatable"/>
44530       <implements name="Buildable"/>
44531       <implements name="SizeRequest"/>
44532       <constructor name="new"
44533                    c:identifier="gtk_separator_tool_item_new"
44534                    version="2.4">
44535         <doc xml:whitespace="preserve">Create a new #GtkSeparatorToolItem</doc>
44536         <return-value transfer-ownership="none">
44537           <doc xml:whitespace="preserve">the new #GtkSeparatorToolItem</doc>
44538           <type name="ToolItem" c:type="GtkToolItem*"/>
44539         </return-value>
44540       </constructor>
44541       <method name="get_draw"
44542               c:identifier="gtk_separator_tool_item_get_draw"
44543               version="2.4">
44544         <doc xml:whitespace="preserve">Returns whether @item is drawn as a line, or just blank. 
44545 See gtk_separator_tool_item_set_draw().</doc>
44546         <return-value transfer-ownership="none">
44547           <doc xml:whitespace="preserve">%TRUE if @item is drawn as a line, or just blank.</doc>
44548           <type name="gboolean" c:type="gboolean"/>
44549         </return-value>
44550       </method>
44551       <method name="set_draw"
44552               c:identifier="gtk_separator_tool_item_set_draw"
44553               version="2.4">
44554         <doc xml:whitespace="preserve">Whether @item is drawn as a vertical line, or just blank.
44555 Setting this to %FALSE along with gtk_tool_item_set_expand() is useful
44556 to create an item that forces following items to the end of the toolbar.</doc>
44557         <return-value transfer-ownership="none">
44558           <type name="none" c:type="void"/>
44559         </return-value>
44560         <parameters>
44561           <parameter name="draw" transfer-ownership="none">
44562             <doc xml:whitespace="preserve">whether @item is drawn as a vertical line</doc>
44563             <type name="gboolean" c:type="gboolean"/>
44564           </parameter>
44565         </parameters>
44566       </method>
44567       <property name="draw" writable="1" transfer-ownership="none">
44568         <type name="gboolean"/>
44569       </property>
44570       <field name="parent">
44571         <type name="ToolItem" c:type="GtkToolItem"/>
44572       </field>
44573       <field name="priv">
44574         <type name="SeparatorToolItemPrivate"
44575               c:type="GtkSeparatorToolItemPrivate*"/>
44576       </field>
44577     </class>
44578     <record name="SeparatorToolItemClass"
44579             c:type="GtkSeparatorToolItemClass"
44580             glib:is-gtype-struct-for="SeparatorToolItem">
44581       <field name="parent_class">
44582         <type name="ToolItemClass" c:type="GtkToolItemClass"/>
44583       </field>
44584       <field name="_gtk_reserved1" introspectable="0">
44585         <callback name="_gtk_reserved1">
44586           <return-value transfer-ownership="none">
44587             <type name="none" c:type="void"/>
44588           </return-value>
44589         </callback>
44590       </field>
44591       <field name="_gtk_reserved2" introspectable="0">
44592         <callback name="_gtk_reserved2">
44593           <return-value transfer-ownership="none">
44594             <type name="none" c:type="void"/>
44595           </return-value>
44596         </callback>
44597       </field>
44598       <field name="_gtk_reserved3" introspectable="0">
44599         <callback name="_gtk_reserved3">
44600           <return-value transfer-ownership="none">
44601             <type name="none" c:type="void"/>
44602           </return-value>
44603         </callback>
44604       </field>
44605       <field name="_gtk_reserved4" introspectable="0">
44606         <callback name="_gtk_reserved4">
44607           <return-value transfer-ownership="none">
44608             <type name="none" c:type="void"/>
44609           </return-value>
44610         </callback>
44611       </field>
44612     </record>
44613     <record name="SeparatorToolItemPrivate"
44614             c:type="GtkSeparatorToolItemPrivate"
44615             disguised="1">
44616     </record>
44617     <class name="Settings"
44618            c:symbol-prefix="settings"
44619            c:type="GtkSettings"
44620            parent="GObject.Object"
44621            glib:type-name="GtkSettings"
44622            glib:get-type="gtk_settings_get_type"
44623            glib:type-struct="SettingsClass">
44624       <function name="get_default" c:identifier="gtk_settings_get_default">
44625         <doc xml:whitespace="preserve">Gets the #GtkSettings object for the default GDK screen, creating
44626 it if necessary. See gtk_settings_get_for_screen().
44627 screen, then returns %NULL.</doc>
44628         <return-value transfer-ownership="none">
44629           <doc xml:whitespace="preserve">a #GtkSettings object. If there is no default</doc>
44630           <type name="Settings" c:type="GtkSettings*"/>
44631         </return-value>
44632       </function>
44633       <function name="get_for_screen"
44634                 c:identifier="gtk_settings_get_for_screen"
44635                 version="2.2">
44636         <doc xml:whitespace="preserve">Gets the #GtkSettings object for @screen, creating it if necessary.</doc>
44637         <return-value transfer-ownership="none">
44638           <doc xml:whitespace="preserve">a #GtkSettings object.</doc>
44639           <type name="Settings" c:type="GtkSettings*"/>
44640         </return-value>
44641         <parameters>
44642           <parameter name="screen" transfer-ownership="none">
44643             <doc xml:whitespace="preserve">a #GdkScreen.</doc>
44644             <type name="Gdk.Screen" c:type="GdkScreen*"/>
44645           </parameter>
44646         </parameters>
44647       </function>
44648       <function name="install_property"
44649                 c:identifier="gtk_settings_install_property">
44650         <return-value transfer-ownership="none">
44651           <type name="none" c:type="void"/>
44652         </return-value>
44653         <parameters>
44654           <parameter name="pspec" transfer-ownership="none">
44655             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
44656           </parameter>
44657         </parameters>
44658       </function>
44659       <function name="install_property_parser"
44660                 c:identifier="gtk_settings_install_property_parser"
44661                 introspectable="0">
44662         <return-value transfer-ownership="none">
44663           <type name="none" c:type="void"/>
44664         </return-value>
44665         <parameters>
44666           <parameter name="pspec" transfer-ownership="none">
44667             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
44668           </parameter>
44669           <parameter name="parser" transfer-ownership="none">
44670             <type name="RcPropertyParser" c:type="GtkRcPropertyParser"/>
44671           </parameter>
44672         </parameters>
44673       </function>
44674       <method name="set_double_property"
44675               c:identifier="gtk_settings_set_double_property">
44676         <return-value transfer-ownership="none">
44677           <type name="none" c:type="void"/>
44678         </return-value>
44679         <parameters>
44680           <parameter name="name" transfer-ownership="none">
44681             <type name="utf8" c:type="gchar*"/>
44682           </parameter>
44683           <parameter name="v_double" transfer-ownership="none">
44684             <type name="gdouble" c:type="gdouble"/>
44685           </parameter>
44686           <parameter name="origin" transfer-ownership="none">
44687             <type name="utf8" c:type="gchar*"/>
44688           </parameter>
44689         </parameters>
44690       </method>
44691       <method name="set_long_property"
44692               c:identifier="gtk_settings_set_long_property">
44693         <return-value transfer-ownership="none">
44694           <type name="none" c:type="void"/>
44695         </return-value>
44696         <parameters>
44697           <parameter name="name" transfer-ownership="none">
44698             <type name="utf8" c:type="gchar*"/>
44699           </parameter>
44700           <parameter name="v_long" transfer-ownership="none">
44701             <type name="glong" c:type="glong"/>
44702           </parameter>
44703           <parameter name="origin" transfer-ownership="none">
44704             <type name="utf8" c:type="gchar*"/>
44705           </parameter>
44706         </parameters>
44707       </method>
44708       <method name="set_property_value"
44709               c:identifier="gtk_settings_set_property_value">
44710         <return-value transfer-ownership="none">
44711           <type name="none" c:type="void"/>
44712         </return-value>
44713         <parameters>
44714           <parameter name="name" transfer-ownership="none">
44715             <type name="utf8" c:type="gchar*"/>
44716           </parameter>
44717           <parameter name="svalue" transfer-ownership="none">
44718             <type name="SettingsValue" c:type="GtkSettingsValue*"/>
44719           </parameter>
44720         </parameters>
44721       </method>
44722       <method name="set_string_property"
44723               c:identifier="gtk_settings_set_string_property">
44724         <return-value transfer-ownership="none">
44725           <type name="none" c:type="void"/>
44726         </return-value>
44727         <parameters>
44728           <parameter name="name" transfer-ownership="none">
44729             <type name="utf8" c:type="gchar*"/>
44730           </parameter>
44731           <parameter name="v_string" transfer-ownership="none">
44732             <type name="utf8" c:type="gchar*"/>
44733           </parameter>
44734           <parameter name="origin" transfer-ownership="none">
44735             <type name="utf8" c:type="gchar*"/>
44736           </parameter>
44737         </parameters>
44738       </method>
44739       <property name="color-hash" version="2.10" transfer-ownership="none">
44740         <doc xml:whitespace="preserve">Holds a hash table representation of the #GtkSettings:gtk-color-scheme 
44741 setting, mapping color names to #GdkColor&lt;!-- --&gt;s.</doc>
44742         <type name="GLib.HashTable">
44743           <type name="gpointer" c:type="gpointer"/>
44744           <type name="gpointer" c:type="gpointer"/>
44745         </type>
44746       </property>
44747       <property name="gtk-alternative-button-order"
44748                 writable="1"
44749                 transfer-ownership="none">
44750         <type name="gboolean"/>
44751       </property>
44752       <property name="gtk-alternative-sort-arrows"
44753                 version="2.12"
44754                 writable="1"
44755                 transfer-ownership="none">
44756         <doc xml:whitespace="preserve">Controls the direction of the sort indicators in sorted list and tree
44757 views. By default an arrow pointing down means the column is sorted
44758 in ascending order. When set to %TRUE, this order will be inverted.</doc>
44759         <type name="gboolean"/>
44760       </property>
44761       <property name="gtk-application-prefer-dark-theme"
44762                 version="2.22"
44763                 writable="1"
44764                 transfer-ownership="none">
44765         <doc xml:whitespace="preserve">Whether the application prefers to use a dark theme. If a GTK+ theme
44766 includes a dark variant, it will be used instead of the configured
44767 theme.
44768 Some applications benefit from minimizing the amount of light pollution that
44769 interferes with the content. Good candidates for dark themes are photo and
44770 video editors that make the actual content get all the attention and minimize
44771 the distraction of the chrome.
44772 Dark themes should not be used for documents, where large spaces are white/light
44773 and the dark chrome creates too much contrast (web browser, text editor...).</doc>
44774         <type name="gboolean"/>
44775       </property>
44776       <property name="gtk-auto-mnemonics"
44777                 version="2.20"
44778                 writable="1"
44779                 transfer-ownership="none">
44780         <doc xml:whitespace="preserve">Whether mnemonics should be automatically shown and hidden when the user
44781 presses the mnemonic activator.</doc>
44782         <type name="gboolean"/>
44783       </property>
44784       <property name="gtk-color-scheme"
44785                 version="2.10"
44786                 writable="1"
44787                 transfer-ownership="none">
44788         <doc xml:whitespace="preserve">A palette of named colors for use in themes. The format of the string is
44789 &lt;programlisting&gt;
44790 ...
44791 &lt;/programlisting&gt;
44792 Color names must be acceptable as identifiers in the 
44793 &lt;link linkend="gtk-Resource-Files"&gt;gtkrc&lt;/link&gt; syntax, and
44794 color specifications must be in the format accepted by
44795 gdk_color_parse().
44796 Note that due to the way the color tables from different sources are
44797 merged, color specifications will be converted to hexadecimal form
44798 when getting this property.
44799 Starting with GTK+ 2.12, the entries can alternatively be separated
44800 by ';' instead of newlines:
44801 &lt;programlisting&gt;
44802 &lt;/programlisting&gt;</doc>
44803         <type name="utf8"/>
44804       </property>
44805       <property name="gtk-cursor-blink" writable="1" transfer-ownership="none">
44806         <doc xml:whitespace="preserve">Whether the cursor should blink. 
44807 Also see the #GtkSettings:gtk-cursor-blink-timeout setting, 
44808 which allows more flexible control over cursor blinking.</doc>
44809         <type name="gboolean"/>
44810       </property>
44811       <property name="gtk-cursor-blink-time"
44812                 writable="1"
44813                 transfer-ownership="none">
44814         <type name="gint"/>
44815       </property>
44816       <property name="gtk-cursor-blink-timeout"
44817                 version="2.12"
44818                 writable="1"
44819                 transfer-ownership="none">
44820         <doc xml:whitespace="preserve">Time after which the cursor stops blinking, in seconds.
44821 The timer is reset after each user interaction.
44822 Setting this to zero has the same effect as setting
44823 #GtkSettings:gtk-cursor-blink to %FALSE.</doc>
44824         <type name="gint"/>
44825       </property>
44826       <property name="gtk-cursor-theme-name"
44827                 writable="1"
44828                 transfer-ownership="none">
44829         <type name="utf8"/>
44830       </property>
44831       <property name="gtk-cursor-theme-size"
44832                 writable="1"
44833                 transfer-ownership="none">
44834         <type name="gint"/>
44835       </property>
44836       <property name="gtk-dnd-drag-threshold"
44837                 writable="1"
44838                 transfer-ownership="none">
44839         <type name="gint"/>
44840       </property>
44841       <property name="gtk-double-click-distance"
44842                 writable="1"
44843                 transfer-ownership="none">
44844         <type name="gint"/>
44845       </property>
44846       <property name="gtk-double-click-time"
44847                 writable="1"
44848                 transfer-ownership="none">
44849         <type name="gint"/>
44850       </property>
44851       <property name="gtk-enable-accels"
44852                 version="2.12"
44853                 writable="1"
44854                 transfer-ownership="none">
44855         <doc xml:whitespace="preserve">Whether menu items should have visible accelerators which can be
44856 activated.</doc>
44857         <type name="gboolean"/>
44858       </property>
44859       <property name="gtk-enable-animations"
44860                 writable="1"
44861                 transfer-ownership="none">
44862         <type name="gboolean"/>
44863       </property>
44864       <property name="gtk-enable-event-sounds"
44865                 version="2.14"
44866                 writable="1"
44867                 transfer-ownership="none">
44868         <doc xml:whitespace="preserve">Whether to play any event sounds at all.
44869 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
44870 for more information on event sounds and sound themes.
44871 GTK+ itself does not support event sounds, you have to use a loadable 
44872 module like the one that comes with libcanberra.</doc>
44873         <type name="gboolean"/>
44874       </property>
44875       <property name="gtk-enable-input-feedback-sounds"
44876                 version="2.14"
44877                 writable="1"
44878                 transfer-ownership="none">
44879         <doc xml:whitespace="preserve">Whether to play event sounds as feedback to user input.
44880 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
44881 for more information on event sounds and sound themes.
44882 GTK+ itself does not support event sounds, you have to use a loadable 
44883 module like the one that comes with libcanberra.</doc>
44884         <type name="gboolean"/>
44885       </property>
44886       <property name="gtk-enable-mnemonics"
44887                 version="2.12"
44888                 writable="1"
44889                 transfer-ownership="none">
44890         <doc xml:whitespace="preserve">Whether labels and menu items should have visible mnemonics which
44891 can be activated.</doc>
44892         <type name="gboolean"/>
44893       </property>
44894       <property name="gtk-enable-tooltips"
44895                 version="2.14"
44896                 writable="1"
44897                 transfer-ownership="none">
44898         <doc xml:whitespace="preserve">Whether tooltips should be shown on widgets.</doc>
44899         <type name="gboolean"/>
44900       </property>
44901       <property name="gtk-error-bell"
44902                 version="2.12"
44903                 writable="1"
44904                 transfer-ownership="none">
44905         <doc xml:whitespace="preserve">When %TRUE, keyboard navigation and other input-related errors
44906 will cause a beep. Since the error bell is implemented using
44907 gdk_window_beep(), the windowing system may offer ways to
44908 configure the error bell in many ways, such as flashing the
44909 window or similar visual effects.</doc>
44910         <type name="gboolean"/>
44911       </property>
44912       <property name="gtk-fallback-icon-theme"
44913                 writable="1"
44914                 transfer-ownership="none">
44915         <type name="utf8"/>
44916       </property>
44917       <property name="gtk-file-chooser-backend"
44918                 writable="1"
44919                 transfer-ownership="none">
44920         <type name="utf8"/>
44921       </property>
44922       <property name="gtk-font-name" writable="1" transfer-ownership="none">
44923         <type name="utf8"/>
44924       </property>
44925       <property name="gtk-fontconfig-timestamp"
44926                 writable="1"
44927                 transfer-ownership="none">
44928         <type name="guint"/>
44929       </property>
44930       <property name="gtk-icon-sizes" writable="1" transfer-ownership="none">
44931         <doc xml:whitespace="preserve">A list of icon sizes. The list is separated by colons, and
44932 item has the form:
44933 &lt;replaceable&gt;size-name&lt;/replaceable&gt; = &lt;replaceable&gt;width&lt;/replaceable&gt; , &lt;replaceable&gt;height&lt;/replaceable&gt;
44934 E.g. "gtk-menu=16,16:gtk-button=20,20:gtk-dialog=48,48". 
44935 gtk-button, gtk-small-toolbar, gtk-large-toolbar, gtk-dnd, 
44936 gtk-dialog. Applications can register their own named icon 
44937 sizes with gtk_icon_size_register().</doc>
44938         <type name="utf8"/>
44939       </property>
44940       <property name="gtk-icon-theme-name"
44941                 writable="1"
44942                 transfer-ownership="none">
44943         <type name="utf8"/>
44944       </property>
44945       <property name="gtk-im-module" writable="1" transfer-ownership="none">
44946         <doc xml:whitespace="preserve">Which IM (input method) module should be used by default. This is the 
44947 input method that will be used if the user has not explicitly chosen 
44948 another input method from the IM context menu.  
44949 See #GtkIMContext and see the #GtkSettings:gtk-show-input-method-menu property.</doc>
44950         <type name="utf8"/>
44951       </property>
44952       <property name="gtk-key-theme-name"
44953                 writable="1"
44954                 transfer-ownership="none">
44955         <type name="utf8"/>
44956       </property>
44957       <property name="gtk-keynav-cursor-only"
44958                 version="2.12"
44959                 writable="1"
44960                 transfer-ownership="none">
44961         <doc xml:whitespace="preserve">When %TRUE, keyboard navigation should be able to reach all widgets
44962 by using the cursor keys only. Tab, Shift etc. keys can't be expected
44963 to be present on the used input device.</doc>
44964         <type name="gboolean"/>
44965       </property>
44966       <property name="gtk-keynav-wrap-around"
44967                 version="2.12"
44968                 writable="1"
44969                 transfer-ownership="none">
44970         <doc xml:whitespace="preserve">When %TRUE, some widgets will wrap around when doing keyboard
44971 navigation, such as menus, menubars and notebooks.</doc>
44972         <type name="gboolean"/>
44973       </property>
44974       <property name="gtk-menu-bar-accel"
44975                 writable="1"
44976                 transfer-ownership="none">
44977         <type name="utf8"/>
44978       </property>
44979       <property name="gtk-modules" writable="1" transfer-ownership="none">
44980         <type name="utf8"/>
44981       </property>
44982       <property name="gtk-print-backends"
44983                 version="2.10"
44984                 writable="1"
44985                 transfer-ownership="none">
44986         <doc xml:whitespace="preserve">A comma-separated list of print backends to use in the print
44987 dialog. Available print backends depend on the GTK+ installation,
44988 and may include "file", "cups", "lpr" or "papi".</doc>
44989         <type name="utf8"/>
44990       </property>
44991       <property name="gtk-print-preview-command"
44992                 version="2.10"
44993                 writable="1"
44994                 transfer-ownership="none">
44995         <doc xml:whitespace="preserve">A command to run for displaying the print preview. The command
44996 should contain a %f placeholder, which will get replaced by
44997 the path to the pdf file. The command may also contain a %s
44998 placeholder, which will get replaced by the path to a file
44999 containing the print settings in the format produced by 
45000 gtk_print_settings_to_file().
45001 The preview application is responsible for removing the pdf file
45002 and the print settings file when it is done.</doc>
45003         <type name="utf8"/>
45004       </property>
45005       <property name="gtk-recent-files-limit"
45006                 version="2.12"
45007                 writable="1"
45008                 transfer-ownership="none">
45009         <doc xml:whitespace="preserve">The number of recently used files that should be displayed by default by
45010 #GtkRecentChooser implementations and by the #GtkFileChooser. A value of
45011 -1 means every recently used file stored.</doc>
45012         <type name="gint"/>
45013       </property>
45014       <property name="gtk-recent-files-max-age"
45015                 version="2.14"
45016                 writable="1"
45017                 transfer-ownership="none">
45018         <doc xml:whitespace="preserve">The maximum age, in days, of the items inside the recently used
45019 resources list. Items older than this setting will be excised
45020 from the list. If set to 0, the list will always be empty; if
45021 set to -1, no item will be removed.</doc>
45022         <type name="gint"/>
45023       </property>
45024       <property name="gtk-show-input-method-menu"
45025                 writable="1"
45026                 transfer-ownership="none">
45027         <type name="gboolean"/>
45028       </property>
45029       <property name="gtk-show-unicode-menu"
45030                 writable="1"
45031                 transfer-ownership="none">
45032         <type name="gboolean"/>
45033       </property>
45034       <property name="gtk-sound-theme-name"
45035                 version="2.14"
45036                 writable="1"
45037                 transfer-ownership="none">
45038         <doc xml:whitespace="preserve">The XDG sound theme to use for event sounds.
45039 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
45040 for more information on event sounds and sound themes.
45041 GTK+ itself does not support event sounds, you have to use a loadable 
45042 module like the one that comes with libcanberra.</doc>
45043         <type name="utf8"/>
45044       </property>
45045       <property name="gtk-split-cursor" writable="1" transfer-ownership="none">
45046         <type name="gboolean"/>
45047       </property>
45048       <property name="gtk-theme-name" writable="1" transfer-ownership="none">
45049         <type name="utf8"/>
45050       </property>
45051       <property name="gtk-timeout-expand"
45052                 writable="1"
45053                 transfer-ownership="none">
45054         <type name="gint"/>
45055       </property>
45056       <property name="gtk-timeout-initial"
45057                 writable="1"
45058                 transfer-ownership="none">
45059         <type name="gint"/>
45060       </property>
45061       <property name="gtk-timeout-repeat"
45062                 writable="1"
45063                 transfer-ownership="none">
45064         <type name="gint"/>
45065       </property>
45066       <property name="gtk-toolbar-icon-size"
45067                 writable="1"
45068                 transfer-ownership="none">
45069         <type name="IconSize"/>
45070       </property>
45071       <property name="gtk-toolbar-style"
45072                 writable="1"
45073                 transfer-ownership="none">
45074         <type name="ToolbarStyle"/>
45075       </property>
45076       <property name="gtk-tooltip-browse-mode-timeout"
45077                 version="2.12"
45078                 writable="1"
45079                 transfer-ownership="none">
45080         <doc xml:whitespace="preserve">Amount of time, in milliseconds, after which the browse mode
45081 will be disabled.
45082 See #GtkSettings:gtk-tooltip-browse-timeout for more information
45083 about browse mode.</doc>
45084         <type name="gint"/>
45085       </property>
45086       <property name="gtk-tooltip-browse-timeout"
45087                 version="2.12"
45088                 writable="1"
45089                 transfer-ownership="none">
45090         <doc xml:whitespace="preserve">Controls the time after which tooltips will appear when
45091 browse mode is enabled, in milliseconds.
45092 Browse mode is enabled when the mouse pointer moves off an object
45093 where a tooltip was currently being displayed. If the mouse pointer
45094 hits another object before the browse mode timeout expires (see
45095 #GtkSettings:gtk-tooltip-browse-mode-timeout), it will take the 
45096 amount of milliseconds specified by this setting to popup the tooltip
45097 for the new object.</doc>
45098         <type name="gint"/>
45099       </property>
45100       <property name="gtk-tooltip-timeout"
45101                 version="2.12"
45102                 writable="1"
45103                 transfer-ownership="none">
45104         <doc xml:whitespace="preserve">Time, in milliseconds, after which a tooltip could appear if the
45105 cursor is hovering on top of a widget.</doc>
45106         <type name="gint"/>
45107       </property>
45108       <property name="gtk-touchscreen-mode"
45109                 version="2.10"
45110                 writable="1"
45111                 transfer-ownership="none">
45112         <doc xml:whitespace="preserve">When %TRUE, there are no motion notify events delivered on this screen,
45113 and widgets can't use the pointer hovering them for any essential
45114 functionality.</doc>
45115         <type name="gboolean"/>
45116       </property>
45117       <property name="gtk-xft-antialias"
45118                 writable="1"
45119                 transfer-ownership="none">
45120         <type name="gint"/>
45121       </property>
45122       <property name="gtk-xft-dpi" writable="1" transfer-ownership="none">
45123         <type name="gint"/>
45124       </property>
45125       <property name="gtk-xft-hinting" writable="1" transfer-ownership="none">
45126         <type name="gint"/>
45127       </property>
45128       <property name="gtk-xft-hintstyle"
45129                 writable="1"
45130                 transfer-ownership="none">
45131         <type name="utf8"/>
45132       </property>
45133       <property name="gtk-xft-rgba" writable="1" transfer-ownership="none">
45134         <type name="utf8"/>
45135       </property>
45136       <field name="parent_instance">
45137         <type name="GObject.Object" c:type="GObject"/>
45138       </field>
45139       <field name="queued_settings">
45140         <type name="GLib.Data" c:type="GData*"/>
45141       </field>
45142       <field name="property_values">
45143         <type name="SettingsPropertyValue" c:type="GtkSettingsPropertyValue*"/>
45144       </field>
45145       <field name="rc_context">
45146         <type name="RcContext" c:type="GtkRcContext*"/>
45147       </field>
45148       <field name="screen">
45149         <type name="Gdk.Screen" c:type="GdkScreen*"/>
45150       </field>
45151     </class>
45152     <record name="SettingsClass"
45153             c:type="GtkSettingsClass"
45154             glib:is-gtype-struct-for="Settings">
45155       <field name="parent_class">
45156         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
45157       </field>
45158     </record>
45159     <record name="SettingsPropertyValue"
45160             c:type="GtkSettingsPropertyValue"
45161             disguised="1">
45162     </record>
45163     <record name="SettingsValue" c:type="GtkSettingsValue">
45164       <field name="origin" writable="1">
45165         <type name="utf8" c:type="gchar*"/>
45166       </field>
45167       <field name="value" writable="1">
45168         <type name="GObject.Value" c:type="GValue"/>
45169       </field>
45170     </record>
45171     <enumeration name="ShadowType"
45172                  glib:type-name="GtkShadowType"
45173                  glib:get-type="gtk_shadow_type_get_type"
45174                  c:type="GtkShadowType">
45175       <member name="none"
45176               value="0"
45177               c:identifier="GTK_SHADOW_NONE"
45178               glib:nick="none"/>
45179       <member name="in" value="1" c:identifier="GTK_SHADOW_IN" glib:nick="in"/>
45180       <member name="out"
45181               value="2"
45182               c:identifier="GTK_SHADOW_OUT"
45183               glib:nick="out"/>
45184       <member name="etched_in"
45185               value="3"
45186               c:identifier="GTK_SHADOW_ETCHED_IN"
45187               glib:nick="etched-in"/>
45188       <member name="etched_out"
45189               value="4"
45190               c:identifier="GTK_SHADOW_ETCHED_OUT"
45191               glib:nick="etched-out"/>
45192     </enumeration>
45193     <class name="SizeGroup"
45194            c:symbol-prefix="size_group"
45195            c:type="GtkSizeGroup"
45196            parent="GObject.Object"
45197            glib:type-name="GtkSizeGroup"
45198            glib:get-type="gtk_size_group_get_type"
45199            glib:type-struct="SizeGroupClass">
45200       <implements name="Buildable"/>
45201       <constructor name="new" c:identifier="gtk_size_group_new">
45202         <doc xml:whitespace="preserve">Create a new #GtkSizeGroup.</doc>
45203         <return-value transfer-ownership="full">
45204           <doc xml:whitespace="preserve">a newly created #GtkSizeGroup</doc>
45205           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
45206         </return-value>
45207         <parameters>
45208           <parameter name="mode" transfer-ownership="none">
45209             <doc xml:whitespace="preserve">the mode for the new size group.</doc>
45210             <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
45211           </parameter>
45212         </parameters>
45213       </constructor>
45214       <method name="add_widget" c:identifier="gtk_size_group_add_widget">
45215         <doc xml:whitespace="preserve">Adds a widget to a #GtkSizeGroup. In the future, the requisition
45216 of the widget will be determined as the maximum of its requisition
45217 and the requisition of the other widgets in the size group.
45218 Whether this applies horizontally, vertically, or in both directions
45219 depends on the mode of the size group. See gtk_size_group_set_mode().
45220 When the widget is destroyed or no longer referenced elsewhere, it will 
45221 be removed from the size group.</doc>
45222         <return-value transfer-ownership="none">
45223           <type name="none" c:type="void"/>
45224         </return-value>
45225         <parameters>
45226           <parameter name="widget" transfer-ownership="none">
45227             <doc xml:whitespace="preserve">the #GtkWidget to add</doc>
45228             <type name="Widget" c:type="GtkWidget*"/>
45229           </parameter>
45230         </parameters>
45231       </method>
45232       <method name="get_ignore_hidden"
45233               c:identifier="gtk_size_group_get_ignore_hidden"
45234               version="2.8">
45235         <doc xml:whitespace="preserve">Returns if invisible widgets are ignored when calculating the size.</doc>
45236         <return-value transfer-ownership="none">
45237           <doc xml:whitespace="preserve">%TRUE if invisible widgets are ignored.</doc>
45238           <type name="gboolean" c:type="gboolean"/>
45239         </return-value>
45240       </method>
45241       <method name="get_mode" c:identifier="gtk_size_group_get_mode">
45242         <doc xml:whitespace="preserve">Gets the current mode of the size group. See gtk_size_group_set_mode().</doc>
45243         <return-value transfer-ownership="none">
45244           <doc xml:whitespace="preserve">the current mode of the size group.</doc>
45245           <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
45246         </return-value>
45247       </method>
45248       <method name="get_widgets"
45249               c:identifier="gtk_size_group_get_widgets"
45250               version="2.10">
45251         <doc xml:whitespace="preserve">Returns the list of widgets associated with @size_group.
45252 widgets. The list is owned by GTK+ and should not be modified.</doc>
45253         <return-value transfer-ownership="none">
45254           <doc xml:whitespace="preserve">a #GSList of</doc>
45255           <type name="GLib.SList" c:type="GSList*">
45256             <type name="Widget"/>
45257           </type>
45258         </return-value>
45259       </method>
45260       <method name="remove_widget" c:identifier="gtk_size_group_remove_widget">
45261         <doc xml:whitespace="preserve">Removes a widget from a #GtkSizeGroup.</doc>
45262         <return-value transfer-ownership="none">
45263           <type name="none" c:type="void"/>
45264         </return-value>
45265         <parameters>
45266           <parameter name="widget" transfer-ownership="none">
45267             <doc xml:whitespace="preserve">the #GtkWidget to remove</doc>
45268             <type name="Widget" c:type="GtkWidget*"/>
45269           </parameter>
45270         </parameters>
45271       </method>
45272       <method name="set_ignore_hidden"
45273               c:identifier="gtk_size_group_set_ignore_hidden"
45274               version="2.8">
45275         <doc xml:whitespace="preserve">Sets whether unmapped widgets should be ignored when
45276 calculating the size.</doc>
45277         <return-value transfer-ownership="none">
45278           <type name="none" c:type="void"/>
45279         </return-value>
45280         <parameters>
45281           <parameter name="ignore_hidden" transfer-ownership="none">
45282             <doc xml:whitespace="preserve">whether unmapped widgets should be ignored when calculating the size</doc>
45283             <type name="gboolean" c:type="gboolean"/>
45284           </parameter>
45285         </parameters>
45286       </method>
45287       <method name="set_mode" c:identifier="gtk_size_group_set_mode">
45288         <doc xml:whitespace="preserve">Sets the #GtkSizeGroupMode of the size group. The mode of the size
45289 group determines whether the widgets in the size group should
45290 all have the same horizontal requisition (%GTK_SIZE_GROUP_MODE_HORIZONTAL)
45291 all have the same vertical requisition (%GTK_SIZE_GROUP_MODE_VERTICAL),
45292 or should all have the same requisition in both directions
45293 (%GTK_SIZE_GROUP_MODE_BOTH).</doc>
45294         <return-value transfer-ownership="none">
45295           <type name="none" c:type="void"/>
45296         </return-value>
45297         <parameters>
45298           <parameter name="mode" transfer-ownership="none">
45299             <doc xml:whitespace="preserve">the mode to set for the size group.</doc>
45300             <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
45301           </parameter>
45302         </parameters>
45303       </method>
45304       <property name="ignore-hidden"
45305                 version="2.8"
45306                 writable="1"
45307                 transfer-ownership="none">
45308         <doc xml:whitespace="preserve">If %TRUE, unmapped widgets are ignored when determining 
45309 the size of the group.</doc>
45310         <type name="gboolean"/>
45311       </property>
45312       <property name="mode" writable="1" transfer-ownership="none">
45313         <type name="SizeGroupMode"/>
45314       </property>
45315       <field name="parent_instance">
45316         <type name="GObject.Object" c:type="GObject"/>
45317       </field>
45318       <field name="priv" readable="0" private="1">
45319         <type name="SizeGroupPrivate" c:type="GtkSizeGroupPrivate*"/>
45320       </field>
45321     </class>
45322     <record name="SizeGroupClass"
45323             c:type="GtkSizeGroupClass"
45324             glib:is-gtype-struct-for="SizeGroup">
45325       <field name="parent_class">
45326         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
45327       </field>
45328       <field name="_gtk_reserved1" introspectable="0">
45329         <callback name="_gtk_reserved1">
45330           <return-value transfer-ownership="none">
45331             <type name="none" c:type="void"/>
45332           </return-value>
45333         </callback>
45334       </field>
45335       <field name="_gtk_reserved2" introspectable="0">
45336         <callback name="_gtk_reserved2">
45337           <return-value transfer-ownership="none">
45338             <type name="none" c:type="void"/>
45339           </return-value>
45340         </callback>
45341       </field>
45342       <field name="_gtk_reserved3" introspectable="0">
45343         <callback name="_gtk_reserved3">
45344           <return-value transfer-ownership="none">
45345             <type name="none" c:type="void"/>
45346           </return-value>
45347         </callback>
45348       </field>
45349       <field name="_gtk_reserved4" introspectable="0">
45350         <callback name="_gtk_reserved4">
45351           <return-value transfer-ownership="none">
45352             <type name="none" c:type="void"/>
45353           </return-value>
45354         </callback>
45355       </field>
45356     </record>
45357     <enumeration name="SizeGroupMode"
45358                  glib:type-name="GtkSizeGroupMode"
45359                  glib:get-type="gtk_size_group_mode_get_type"
45360                  c:type="GtkSizeGroupMode">
45361       <doc xml:whitespace="preserve">The mode of the size group determines the directions in which the size
45362 group affects the requested sizes of its component widgets.</doc>
45363       <member name="none"
45364               value="0"
45365               c:identifier="GTK_SIZE_GROUP_NONE"
45366               glib:nick="none"/>
45367       <member name="horizontal"
45368               value="1"
45369               c:identifier="GTK_SIZE_GROUP_HORIZONTAL"
45370               glib:nick="horizontal"/>
45371       <member name="vertical"
45372               value="2"
45373               c:identifier="GTK_SIZE_GROUP_VERTICAL"
45374               glib:nick="vertical"/>
45375       <member name="both"
45376               value="3"
45377               c:identifier="GTK_SIZE_GROUP_BOTH"
45378               glib:nick="both"/>
45379     </enumeration>
45380     <record name="SizeGroupPrivate" c:type="GtkSizeGroupPrivate" disguised="1">
45381     </record>
45382     <interface name="SizeRequest"
45383                c:symbol-prefix="size_request"
45384                c:type="GtkSizeRequest"
45385                glib:type-name="GtkSizeRequest"
45386                glib:get-type="gtk_size_request_get_type"
45387                glib:type-struct="SizeRequestIface">
45388       <prerequisite name="Widget"/>
45389       <virtual-method name="get_height" invoker="get_height" version="3.0">
45390         <doc xml:whitespace="preserve">Retrieves a widget's initial minimum and natural height.
45391 &lt;note&gt;&lt;para&gt;This call is specific to width-for-height requests.&lt;/para&gt;&lt;/note&gt;
45392 The returned request will be modified by the
45393 GtkWidgetClass::adjust_size_request virtual method and by any
45394 #GtkSizeGroup that have been applied. That is, the returned request
45395 is the one that should be used for layout, not necessarily the one
45396 returned by the widget itself.</doc>
45397         <return-value transfer-ownership="none">
45398           <type name="none" c:type="void"/>
45399         </return-value>
45400         <parameters>
45401           <parameter name="minimum_height"
45402                      direction="out"
45403                      caller-allocates="0"
45404                      transfer-ownership="full"
45405                      allow-none="1">
45406             <doc xml:whitespace="preserve">location to store the minimum height, or %NULL</doc>
45407             <type name="gint" c:type="gint*"/>
45408           </parameter>
45409           <parameter name="natural_height"
45410                      direction="out"
45411                      caller-allocates="0"
45412                      transfer-ownership="full"
45413                      allow-none="1">
45414             <doc xml:whitespace="preserve">location to store the natural height, or %NULL</doc>
45415             <type name="gint" c:type="gint*"/>
45416           </parameter>
45417         </parameters>
45418       </virtual-method>
45419       <virtual-method name="get_height_for_width"
45420                       invoker="get_height_for_width"
45421                       version="3.0">
45422         <doc xml:whitespace="preserve">Retrieves a widget's minimum and natural height if it would be given
45423 the specified @width.
45424 The returned request will be modified by the
45425 GtkWidgetClass::adjust_size_request virtual method and by any
45426 #GtkSizeGroup that have been applied. That is, the returned request
45427 is the one that should be used for layout, not necessarily the one
45428 returned by the widget itself.</doc>
45429         <return-value transfer-ownership="none">
45430           <type name="none" c:type="void"/>
45431         </return-value>
45432         <parameters>
45433           <parameter name="width" transfer-ownership="none">
45434             <doc xml:whitespace="preserve">the width which is available for allocation</doc>
45435             <type name="gint" c:type="gint"/>
45436           </parameter>
45437           <parameter name="minimum_height"
45438                      direction="out"
45439                      caller-allocates="0"
45440                      transfer-ownership="full"
45441                      allow-none="1">
45442             <doc xml:whitespace="preserve">location for storing the minimum height, or %NULL</doc>
45443             <type name="gint" c:type="gint*"/>
45444           </parameter>
45445           <parameter name="natural_height"
45446                      direction="out"
45447                      caller-allocates="0"
45448                      transfer-ownership="full"
45449                      allow-none="1">
45450             <doc xml:whitespace="preserve">location for storing the natural height, or %NULL</doc>
45451             <type name="gint" c:type="gint*"/>
45452           </parameter>
45453         </parameters>
45454       </virtual-method>
45455       <virtual-method name="get_request_mode"
45456                       invoker="get_request_mode"
45457                       version="3.0">
45458         <doc xml:whitespace="preserve">Gets whether the widget prefers a height-for-width layout
45459 or a width-for-height layout.
45460 &lt;note&gt;&lt;para&gt;#GtkBin widgets generally propagate the preference of
45461 their child, container widgets need to request something either in
45462 context of their children or in context of their allocation
45463 capabilities.&lt;/para&gt;&lt;/note&gt;</doc>
45464         <return-value transfer-ownership="none">
45465           <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by @widget.</doc>
45466           <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
45467         </return-value>
45468       </virtual-method>
45469       <virtual-method name="get_width" invoker="get_width" version="3.0">
45470         <doc xml:whitespace="preserve">Retrieves a widget's initial minimum and natural width.
45471 &lt;note&gt;&lt;para&gt;This call is specific to height-for-width
45472 requests.&lt;/para&gt;&lt;/note&gt;
45473 The returned request will be modified by the
45474 GtkWidgetClass::adjust_size_request virtual method and by any
45475 #GtkSizeGroup that have been applied. That is, the returned request
45476 is the one that should be used for layout, not necessarily the one
45477 returned by the widget itself.</doc>
45478         <return-value transfer-ownership="none">
45479           <type name="none" c:type="void"/>
45480         </return-value>
45481         <parameters>
45482           <parameter name="minimum_width"
45483                      direction="out"
45484                      caller-allocates="0"
45485                      transfer-ownership="full"
45486                      allow-none="1">
45487             <doc xml:whitespace="preserve">location to store the minimum width, or %NULL</doc>
45488             <type name="gint" c:type="gint*"/>
45489           </parameter>
45490           <parameter name="natural_width"
45491                      direction="out"
45492                      caller-allocates="0"
45493                      transfer-ownership="full"
45494                      allow-none="1">
45495             <doc xml:whitespace="preserve">location to store the natural width, or %NULL</doc>
45496             <type name="gint" c:type="gint*"/>
45497           </parameter>
45498         </parameters>
45499       </virtual-method>
45500       <virtual-method name="get_width_for_height"
45501                       invoker="get_width_for_height"
45502                       version="3.0">
45503         <doc xml:whitespace="preserve">Retrieves a widget's minimum and natural width if it would be given
45504 the specified @height.
45505 The returned request will be modified by the
45506 GtkWidgetClass::adjust_size_request virtual method and by any
45507 #GtkSizeGroup that have been applied. That is, the returned request
45508 is the one that should be used for layout, not necessarily the one
45509 returned by the widget itself.</doc>
45510         <return-value transfer-ownership="none">
45511           <type name="none" c:type="void"/>
45512         </return-value>
45513         <parameters>
45514           <parameter name="height" transfer-ownership="none">
45515             <doc xml:whitespace="preserve">the height which is available for allocation</doc>
45516             <type name="gint" c:type="gint"/>
45517           </parameter>
45518           <parameter name="minimum_width"
45519                      direction="out"
45520                      caller-allocates="0"
45521                      transfer-ownership="full"
45522                      allow-none="1">
45523             <doc xml:whitespace="preserve">location for storing the minimum width, or %NULL</doc>
45524             <type name="gint" c:type="gint*"/>
45525           </parameter>
45526           <parameter name="natural_width"
45527                      direction="out"
45528                      caller-allocates="0"
45529                      transfer-ownership="full"
45530                      allow-none="1">
45531             <doc xml:whitespace="preserve">location for storing the natural width, or %NULL</doc>
45532             <type name="gint" c:type="gint*"/>
45533           </parameter>
45534         </parameters>
45535       </virtual-method>
45536       <method name="get_height"
45537               c:identifier="gtk_size_request_get_height"
45538               version="3.0">
45539         <doc xml:whitespace="preserve">Retrieves a widget's initial minimum and natural height.
45540 &lt;note&gt;&lt;para&gt;This call is specific to width-for-height requests.&lt;/para&gt;&lt;/note&gt;
45541 The returned request will be modified by the
45542 GtkWidgetClass::adjust_size_request virtual method and by any
45543 #GtkSizeGroup that have been applied. That is, the returned request
45544 is the one that should be used for layout, not necessarily the one
45545 returned by the widget itself.</doc>
45546         <return-value transfer-ownership="none">
45547           <type name="none" c:type="void"/>
45548         </return-value>
45549         <parameters>
45550           <parameter name="minimum_height"
45551                      direction="out"
45552                      caller-allocates="0"
45553                      transfer-ownership="full"
45554                      allow-none="1">
45555             <doc xml:whitespace="preserve">location to store the minimum height, or %NULL</doc>
45556             <type name="gint" c:type="gint*"/>
45557           </parameter>
45558           <parameter name="natural_height"
45559                      direction="out"
45560                      caller-allocates="0"
45561                      transfer-ownership="full"
45562                      allow-none="1">
45563             <doc xml:whitespace="preserve">location to store the natural height, or %NULL</doc>
45564             <type name="gint" c:type="gint*"/>
45565           </parameter>
45566         </parameters>
45567       </method>
45568       <method name="get_height_for_width"
45569               c:identifier="gtk_size_request_get_height_for_width"
45570               version="3.0">
45571         <doc xml:whitespace="preserve">Retrieves a widget's minimum and natural height if it would be given
45572 the specified @width.
45573 The returned request will be modified by the
45574 GtkWidgetClass::adjust_size_request virtual method and by any
45575 #GtkSizeGroup that have been applied. That is, the returned request
45576 is the one that should be used for layout, not necessarily the one
45577 returned by the widget itself.</doc>
45578         <return-value transfer-ownership="none">
45579           <type name="none" c:type="void"/>
45580         </return-value>
45581         <parameters>
45582           <parameter name="width" transfer-ownership="none">
45583             <doc xml:whitespace="preserve">the width which is available for allocation</doc>
45584             <type name="gint" c:type="gint"/>
45585           </parameter>
45586           <parameter name="minimum_height"
45587                      direction="out"
45588                      caller-allocates="0"
45589                      transfer-ownership="full"
45590                      allow-none="1">
45591             <doc xml:whitespace="preserve">location for storing the minimum height, or %NULL</doc>
45592             <type name="gint" c:type="gint*"/>
45593           </parameter>
45594           <parameter name="natural_height"
45595                      direction="out"
45596                      caller-allocates="0"
45597                      transfer-ownership="full"
45598                      allow-none="1">
45599             <doc xml:whitespace="preserve">location for storing the natural height, or %NULL</doc>
45600             <type name="gint" c:type="gint*"/>
45601           </parameter>
45602         </parameters>
45603       </method>
45604       <method name="get_request_mode"
45605               c:identifier="gtk_size_request_get_request_mode"
45606               version="3.0">
45607         <doc xml:whitespace="preserve">Gets whether the widget prefers a height-for-width layout
45608 or a width-for-height layout.
45609 &lt;note&gt;&lt;para&gt;#GtkBin widgets generally propagate the preference of
45610 their child, container widgets need to request something either in
45611 context of their children or in context of their allocation
45612 capabilities.&lt;/para&gt;&lt;/note&gt;</doc>
45613         <return-value transfer-ownership="none">
45614           <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by @widget.</doc>
45615           <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
45616         </return-value>
45617       </method>
45618       <method name="get_size"
45619               c:identifier="gtk_size_request_get_size"
45620               version="3.0">
45621         <doc xml:whitespace="preserve">Retrieves the minimum and natural size of a widget taking
45622 into account the widget's preference for height-for-width management.
45623 This is used to retrieve a suitable size by container widgets which do
45624 not impose any restrictions on the child placement.</doc>
45625         <return-value transfer-ownership="none">
45626           <type name="none" c:type="void"/>
45627         </return-value>
45628         <parameters>
45629           <parameter name="minimum_size"
45630                      direction="out"
45631                      caller-allocates="1"
45632                      transfer-ownership="none"
45633                      allow-none="1">
45634             <doc xml:whitespace="preserve">location for storing the minimum size, or %NULL</doc>
45635             <type name="Requisition" c:type="GtkRequisition*"/>
45636           </parameter>
45637           <parameter name="natural_size"
45638                      direction="out"
45639                      caller-allocates="1"
45640                      transfer-ownership="none"
45641                      allow-none="1">
45642             <doc xml:whitespace="preserve">location for storing the natural size, or %NULL</doc>
45643             <type name="Requisition" c:type="GtkRequisition*"/>
45644           </parameter>
45645         </parameters>
45646       </method>
45647       <method name="get_width"
45648               c:identifier="gtk_size_request_get_width"
45649               version="3.0">
45650         <doc xml:whitespace="preserve">Retrieves a widget's initial minimum and natural width.
45651 &lt;note&gt;&lt;para&gt;This call is specific to height-for-width
45652 requests.&lt;/para&gt;&lt;/note&gt;
45653 The returned request will be modified by the
45654 GtkWidgetClass::adjust_size_request virtual method and by any
45655 #GtkSizeGroup that have been applied. That is, the returned request
45656 is the one that should be used for layout, not necessarily the one
45657 returned by the widget itself.</doc>
45658         <return-value transfer-ownership="none">
45659           <type name="none" c:type="void"/>
45660         </return-value>
45661         <parameters>
45662           <parameter name="minimum_width"
45663                      direction="out"
45664                      caller-allocates="0"
45665                      transfer-ownership="full"
45666                      allow-none="1">
45667             <doc xml:whitespace="preserve">location to store the minimum width, or %NULL</doc>
45668             <type name="gint" c:type="gint*"/>
45669           </parameter>
45670           <parameter name="natural_width"
45671                      direction="out"
45672                      caller-allocates="0"
45673                      transfer-ownership="full"
45674                      allow-none="1">
45675             <doc xml:whitespace="preserve">location to store the natural width, or %NULL</doc>
45676             <type name="gint" c:type="gint*"/>
45677           </parameter>
45678         </parameters>
45679       </method>
45680       <method name="get_width_for_height"
45681               c:identifier="gtk_size_request_get_width_for_height"
45682               version="3.0">
45683         <doc xml:whitespace="preserve">Retrieves a widget's minimum and natural width if it would be given
45684 the specified @height.
45685 The returned request will be modified by the
45686 GtkWidgetClass::adjust_size_request virtual method and by any
45687 #GtkSizeGroup that have been applied. That is, the returned request
45688 is the one that should be used for layout, not necessarily the one
45689 returned by the widget itself.</doc>
45690         <return-value transfer-ownership="none">
45691           <type name="none" c:type="void"/>
45692         </return-value>
45693         <parameters>
45694           <parameter name="height" transfer-ownership="none">
45695             <doc xml:whitespace="preserve">the height which is available for allocation</doc>
45696             <type name="gint" c:type="gint"/>
45697           </parameter>
45698           <parameter name="minimum_width"
45699                      direction="out"
45700                      caller-allocates="0"
45701                      transfer-ownership="full"
45702                      allow-none="1">
45703             <doc xml:whitespace="preserve">location for storing the minimum width, or %NULL</doc>
45704             <type name="gint" c:type="gint*"/>
45705           </parameter>
45706           <parameter name="natural_width"
45707                      direction="out"
45708                      caller-allocates="0"
45709                      transfer-ownership="full"
45710                      allow-none="1">
45711             <doc xml:whitespace="preserve">location for storing the natural width, or %NULL</doc>
45712             <type name="gint" c:type="gint*"/>
45713           </parameter>
45714         </parameters>
45715       </method>
45716     </interface>
45717     <record name="SizeRequestIface"
45718             c:type="GtkSizeRequestIface"
45719             glib:is-gtype-struct-for="SizeRequest">
45720       <field name="g_iface">
45721         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
45722       </field>
45723       <field name="get_request_mode">
45724         <callback name="get_request_mode">
45725           <return-value transfer-ownership="none">
45726             <doc xml:whitespace="preserve">The #GtkSizeRequestMode preferred by @widget.</doc>
45727             <type name="SizeRequestMode" c:type="GtkSizeRequestMode"/>
45728           </return-value>
45729           <parameters>
45730             <parameter name="widget" transfer-ownership="none">
45731               <type name="SizeRequest" c:type="GtkSizeRequest*"/>
45732             </parameter>
45733           </parameters>
45734         </callback>
45735       </field>
45736       <field name="get_height">
45737         <callback name="get_height">
45738           <return-value transfer-ownership="none">
45739             <type name="none" c:type="void"/>
45740           </return-value>
45741           <parameters>
45742             <parameter name="widget" transfer-ownership="none">
45743               <type name="SizeRequest" c:type="GtkSizeRequest*"/>
45744             </parameter>
45745             <parameter name="minimum_height"
45746                        direction="out"
45747                        caller-allocates="0"
45748                        transfer-ownership="full"
45749                        allow-none="1">
45750               <doc xml:whitespace="preserve">location to store the minimum height, or %NULL</doc>
45751               <type name="gint" c:type="gint*"/>
45752             </parameter>
45753             <parameter name="natural_height"
45754                        direction="out"
45755                        caller-allocates="0"
45756                        transfer-ownership="full"
45757                        allow-none="1">
45758               <doc xml:whitespace="preserve">location to store the natural height, or %NULL</doc>
45759               <type name="gint" c:type="gint*"/>
45760             </parameter>
45761           </parameters>
45762         </callback>
45763       </field>
45764       <field name="get_width_for_height">
45765         <callback name="get_width_for_height">
45766           <return-value transfer-ownership="none">
45767             <type name="none" c:type="void"/>
45768           </return-value>
45769           <parameters>
45770             <parameter name="widget" transfer-ownership="none">
45771               <type name="SizeRequest" c:type="GtkSizeRequest*"/>
45772             </parameter>
45773             <parameter name="height" transfer-ownership="none">
45774               <doc xml:whitespace="preserve">the height which is available for allocation</doc>
45775               <type name="gint" c:type="gint"/>
45776             </parameter>
45777             <parameter name="minimum_width"
45778                        direction="out"
45779                        caller-allocates="0"
45780                        transfer-ownership="full"
45781                        allow-none="1">
45782               <doc xml:whitespace="preserve">location for storing the minimum width, or %NULL</doc>
45783               <type name="gint" c:type="gint*"/>
45784             </parameter>
45785             <parameter name="natural_width"
45786                        direction="out"
45787                        caller-allocates="0"
45788                        transfer-ownership="full"
45789                        allow-none="1">
45790               <doc xml:whitespace="preserve">location for storing the natural width, or %NULL</doc>
45791               <type name="gint" c:type="gint*"/>
45792             </parameter>
45793           </parameters>
45794         </callback>
45795       </field>
45796       <field name="get_width">
45797         <callback name="get_width">
45798           <return-value transfer-ownership="none">
45799             <type name="none" c:type="void"/>
45800           </return-value>
45801           <parameters>
45802             <parameter name="widget" transfer-ownership="none">
45803               <type name="SizeRequest" c:type="GtkSizeRequest*"/>
45804             </parameter>
45805             <parameter name="minimum_width"
45806                        direction="out"
45807                        caller-allocates="0"
45808                        transfer-ownership="full"
45809                        allow-none="1">
45810               <doc xml:whitespace="preserve">location to store the minimum width, or %NULL</doc>
45811               <type name="gint" c:type="gint*"/>
45812             </parameter>
45813             <parameter name="natural_width"
45814                        direction="out"
45815                        caller-allocates="0"
45816                        transfer-ownership="full"
45817                        allow-none="1">
45818               <doc xml:whitespace="preserve">location to store the natural width, or %NULL</doc>
45819               <type name="gint" c:type="gint*"/>
45820             </parameter>
45821           </parameters>
45822         </callback>
45823       </field>
45824       <field name="get_height_for_width">
45825         <callback name="get_height_for_width">
45826           <return-value transfer-ownership="none">
45827             <type name="none" c:type="void"/>
45828           </return-value>
45829           <parameters>
45830             <parameter name="widget" transfer-ownership="none">
45831               <type name="SizeRequest" c:type="GtkSizeRequest*"/>
45832             </parameter>
45833             <parameter name="width" transfer-ownership="none">
45834               <doc xml:whitespace="preserve">the width which is available for allocation</doc>
45835               <type name="gint" c:type="gint"/>
45836             </parameter>
45837             <parameter name="minimum_height"
45838                        direction="out"
45839                        caller-allocates="0"
45840                        transfer-ownership="full"
45841                        allow-none="1">
45842               <doc xml:whitespace="preserve">location for storing the minimum height, or %NULL</doc>
45843               <type name="gint" c:type="gint*"/>
45844             </parameter>
45845             <parameter name="natural_height"
45846                        direction="out"
45847                        caller-allocates="0"
45848                        transfer-ownership="full"
45849                        allow-none="1">
45850               <doc xml:whitespace="preserve">location for storing the natural height, or %NULL</doc>
45851               <type name="gint" c:type="gint*"/>
45852             </parameter>
45853           </parameters>
45854         </callback>
45855       </field>
45856     </record>
45857     <enumeration name="SizeRequestMode"
45858                  glib:type-name="GtkSizeRequestMode"
45859                  glib:get-type="gtk_size_request_mode_get_type"
45860                  c:type="GtkSizeRequestMode">
45861       <doc xml:whitespace="preserve">Specifies a preference for height-for-width or
45862 width-for-height geometry management.</doc>
45863       <member name="height_for_width"
45864               value="0"
45865               c:identifier="GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH"
45866               glib:nick="height-for-width"/>
45867       <member name="width_for_height"
45868               value="1"
45869               c:identifier="GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT"
45870               glib:nick="width-for-height"/>
45871     </enumeration>
45872     <class name="Socket"
45873            c:symbol-prefix="socket"
45874            c:type="GtkSocket"
45875            parent="Container"
45876            glib:type-name="GtkSocket"
45877            glib:get-type="gtk_socket_get_type"
45878            glib:type-struct="SocketClass">
45879       <implements name="Atk.ImplementorIface"/>
45880       <implements name="Buildable"/>
45881       <implements name="SizeRequest"/>
45882       <constructor name="new" c:identifier="gtk_socket_new">
45883         <doc xml:whitespace="preserve">Create a new empty #GtkSocket.</doc>
45884         <return-value transfer-ownership="none">
45885           <doc xml:whitespace="preserve">the new #GtkSocket.</doc>
45886           <type name="Widget" c:type="GtkWidget*"/>
45887         </return-value>
45888       </constructor>
45889       <method name="add_id" c:identifier="gtk_socket_add_id">
45890         <doc xml:whitespace="preserve">Adds an XEMBED client, such as a #GtkPlug, to the #GtkSocket.  The
45891 client may be in the same process or in a different process. 
45892 To embed a #GtkPlug in a #GtkSocket, you can either create the
45893 #GtkPlug with &lt;literal&gt;gtk_plug_new (0)&lt;/literal&gt;, call 
45894 gtk_plug_get_id() to get the window ID of the plug, and then pass that to the
45895 gtk_socket_add_id(), or you can call gtk_socket_get_id() to get the
45896 window ID for the socket, and call gtk_plug_new() passing in that
45897 ID.
45898 The #GtkSocket must have already be added into a toplevel window
45899 before you can make this call.</doc>
45900         <return-value transfer-ownership="none">
45901           <type name="none" c:type="void"/>
45902         </return-value>
45903         <parameters>
45904           <parameter name="window_id" transfer-ownership="none">
45905             <doc xml:whitespace="preserve">the window ID of a client participating in the XEMBED protocol.</doc>
45906             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
45907           </parameter>
45908         </parameters>
45909       </method>
45910       <method name="get_id" c:identifier="gtk_socket_get_id">
45911         <doc xml:whitespace="preserve">Gets the window ID of a #GtkSocket widget, which can then
45912 be used to create a client embedded inside the socket, for
45913 instance with gtk_plug_new(). 
45914 The #GtkSocket must have already be added into a toplevel window 
45915 before you can make this call.</doc>
45916         <return-value transfer-ownership="none">
45917           <doc xml:whitespace="preserve">the window ID for the socket</doc>
45918           <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
45919         </return-value>
45920       </method>
45921       <method name="get_plug_window"
45922               c:identifier="gtk_socket_get_plug_window"
45923               version=" 2.14">
45924         <doc xml:whitespace="preserve">Retrieves the window of the plug. Use this to check if the plug has
45925 been created inside of the socket.</doc>
45926         <return-value transfer-ownership="none">
45927           <doc xml:whitespace="preserve">the window of the plug if available, or %NULL</doc>
45928           <type name="Gdk.Window" c:type="GdkWindow*"/>
45929         </return-value>
45930       </method>
45931       <field name="container">
45932         <type name="Container" c:type="GtkContainer"/>
45933       </field>
45934       <field name="request_width">
45935         <type name="guint16" c:type="guint16"/>
45936       </field>
45937       <field name="request_height">
45938         <type name="guint16" c:type="guint16"/>
45939       </field>
45940       <field name="current_width">
45941         <type name="guint16" c:type="guint16"/>
45942       </field>
45943       <field name="current_height">
45944         <type name="guint16" c:type="guint16"/>
45945       </field>
45946       <field name="plug_window">
45947         <type name="Gdk.Window" c:type="GdkWindow*"/>
45948       </field>
45949       <field name="plug_widget">
45950         <type name="Widget" c:type="GtkWidget*"/>
45951       </field>
45952       <field name="xembed_version">
45953         <type name="gshort" c:type="gshort"/>
45954       </field>
45955       <field name="same_app" bits="1">
45956         <type name="guint" c:type="guint"/>
45957       </field>
45958       <field name="focus_in" bits="1">
45959         <type name="guint" c:type="guint"/>
45960       </field>
45961       <field name="have_size" bits="1">
45962         <type name="guint" c:type="guint"/>
45963       </field>
45964       <field name="need_map" bits="1">
45965         <type name="guint" c:type="guint"/>
45966       </field>
45967       <field name="is_mapped" bits="1">
45968         <type name="guint" c:type="guint"/>
45969       </field>
45970       <field name="active" bits="1">
45971         <type name="guint" c:type="guint"/>
45972       </field>
45973       <field name="accel_group">
45974         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
45975       </field>
45976       <field name="toplevel">
45977         <type name="Widget" c:type="GtkWidget*"/>
45978       </field>
45979       <glib:signal name="plug-added">
45980         <doc xml:whitespace="preserve">This signal is emitted when a client is successfully
45981 added to the socket.</doc>
45982         <return-value transfer-ownership="none">
45983           <type name="none"/>
45984         </return-value>
45985       </glib:signal>
45986       <glib:signal name="plug-removed">
45987         <doc xml:whitespace="preserve">This signal is emitted when a client is removed from the socket. 
45988 The default action is to destroy the #GtkSocket widget, so if you 
45989 want to reuse it you must add a signal handler that returns %TRUE.</doc>
45990         <return-value transfer-ownership="none">
45991           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked.</doc>
45992           <type name="gboolean"/>
45993         </return-value>
45994       </glib:signal>
45995     </class>
45996     <record name="SocketClass"
45997             c:type="GtkSocketClass"
45998             glib:is-gtype-struct-for="Socket">
45999       <field name="parent_class">
46000         <type name="ContainerClass" c:type="GtkContainerClass"/>
46001       </field>
46002       <field name="plug_added">
46003         <callback name="plug_added">
46004           <return-value transfer-ownership="none">
46005             <type name="none" c:type="void"/>
46006           </return-value>
46007           <parameters>
46008             <parameter name="socket_" transfer-ownership="none">
46009               <type name="Socket" c:type="GtkSocket*"/>
46010             </parameter>
46011           </parameters>
46012         </callback>
46013       </field>
46014       <field name="plug_removed">
46015         <callback name="plug_removed">
46016           <return-value transfer-ownership="none">
46017             <type name="gboolean" c:type="gboolean"/>
46018           </return-value>
46019           <parameters>
46020             <parameter name="socket_" transfer-ownership="none">
46021               <type name="Socket" c:type="GtkSocket*"/>
46022             </parameter>
46023           </parameters>
46024         </callback>
46025       </field>
46026       <field name="_gtk_reserved1" introspectable="0">
46027         <callback name="_gtk_reserved1">
46028           <return-value transfer-ownership="none">
46029             <type name="none" c:type="void"/>
46030           </return-value>
46031         </callback>
46032       </field>
46033       <field name="_gtk_reserved2" introspectable="0">
46034         <callback name="_gtk_reserved2">
46035           <return-value transfer-ownership="none">
46036             <type name="none" c:type="void"/>
46037           </return-value>
46038         </callback>
46039       </field>
46040       <field name="_gtk_reserved3" introspectable="0">
46041         <callback name="_gtk_reserved3">
46042           <return-value transfer-ownership="none">
46043             <type name="none" c:type="void"/>
46044           </return-value>
46045         </callback>
46046       </field>
46047       <field name="_gtk_reserved4" introspectable="0">
46048         <callback name="_gtk_reserved4">
46049           <return-value transfer-ownership="none">
46050             <type name="none" c:type="void"/>
46051           </return-value>
46052         </callback>
46053       </field>
46054     </record>
46055     <enumeration name="SortType"
46056                  glib:type-name="GtkSortType"
46057                  glib:get-type="gtk_sort_type_get_type"
46058                  c:type="GtkSortType">
46059       <member name="ascending"
46060               value="0"
46061               c:identifier="GTK_SORT_ASCENDING"
46062               glib:nick="ascending"/>
46063       <member name="descending"
46064               value="1"
46065               c:identifier="GTK_SORT_DESCENDING"
46066               glib:nick="descending"/>
46067     </enumeration>
46068     <class name="SpinButton"
46069            c:symbol-prefix="spin_button"
46070            c:type="GtkSpinButton"
46071            parent="Entry"
46072            glib:type-name="GtkSpinButton"
46073            glib:get-type="gtk_spin_button_get_type"
46074            glib:type-struct="SpinButtonClass">
46075       <implements name="Atk.ImplementorIface"/>
46076       <implements name="Buildable"/>
46077       <implements name="CellEditable"/>
46078       <implements name="Editable"/>
46079       <implements name="SizeRequest"/>
46080       <constructor name="new" c:identifier="gtk_spin_button_new">
46081         <return-value transfer-ownership="none">
46082           <type name="Widget" c:type="GtkWidget*"/>
46083         </return-value>
46084         <parameters>
46085           <parameter name="adjustment" transfer-ownership="none">
46086             <type name="Adjustment" c:type="GtkAdjustment*"/>
46087           </parameter>
46088           <parameter name="climb_rate" transfer-ownership="none">
46089             <type name="gdouble" c:type="gdouble"/>
46090           </parameter>
46091           <parameter name="digits" transfer-ownership="none">
46092             <type name="guint" c:type="guint"/>
46093           </parameter>
46094         </parameters>
46095       </constructor>
46096       <constructor name="new_with_range"
46097                    c:identifier="gtk_spin_button_new_with_range">
46098         <doc xml:whitespace="preserve">This is a convenience constructor that allows creation of a numeric 
46099 #GtkSpinButton without manually creating an adjustment. The value is 
46100 initially set to the minimum value and a page increment of 10 * @step
46101 is the default. The precision of the spin button is equivalent to the 
46102 precision of @step. 
46103 Note that the way in which the precision is derived works best if @step 
46104 is a power of ten. If the resulting precision is not suitable for your 
46105 needs, use gtk_spin_button_set_digits() to correct it.</doc>
46106         <return-value transfer-ownership="none">
46107           <doc xml:whitespace="preserve">The new spin button as a #GtkWidget.</doc>
46108           <type name="Widget" c:type="GtkWidget*"/>
46109         </return-value>
46110         <parameters>
46111           <parameter name="min" transfer-ownership="none">
46112             <doc xml:whitespace="preserve">Minimum allowable value</doc>
46113             <type name="gdouble" c:type="gdouble"/>
46114           </parameter>
46115           <parameter name="max" transfer-ownership="none">
46116             <doc xml:whitespace="preserve">Maximum allowable value</doc>
46117             <type name="gdouble" c:type="gdouble"/>
46118           </parameter>
46119           <parameter name="step" transfer-ownership="none">
46120             <doc xml:whitespace="preserve">Increment added or subtracted by spinning the widget</doc>
46121             <type name="gdouble" c:type="gdouble"/>
46122           </parameter>
46123         </parameters>
46124       </constructor>
46125       <method name="configure" c:identifier="gtk_spin_button_configure">
46126         <doc xml:whitespace="preserve">Changes the properties of an existing spin button. The adjustment, climb rate,
46127 and number of decimal places are all changed accordingly, after this function call.</doc>
46128         <return-value transfer-ownership="none">
46129           <type name="none" c:type="void"/>
46130         </return-value>
46131         <parameters>
46132           <parameter name="adjustment"
46133                      transfer-ownership="none"
46134                      allow-none="1">
46135             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
46136             <type name="Adjustment" c:type="GtkAdjustment*"/>
46137           </parameter>
46138           <parameter name="climb_rate" transfer-ownership="none">
46139             <doc xml:whitespace="preserve">the new climb rate.</doc>
46140             <type name="gdouble" c:type="gdouble"/>
46141           </parameter>
46142           <parameter name="digits" transfer-ownership="none">
46143             <doc xml:whitespace="preserve">the number of decimal places to display in the spin button.</doc>
46144             <type name="guint" c:type="guint"/>
46145           </parameter>
46146         </parameters>
46147       </method>
46148       <method name="get_adjustment"
46149               c:identifier="gtk_spin_button_get_adjustment">
46150         <doc xml:whitespace="preserve">Get the adjustment associated with a #GtkSpinButton</doc>
46151         <return-value transfer-ownership="none">
46152           <doc xml:whitespace="preserve">the #GtkAdjustment of @spin_button</doc>
46153           <type name="Adjustment" c:type="GtkAdjustment*"/>
46154         </return-value>
46155       </method>
46156       <method name="get_digits" c:identifier="gtk_spin_button_get_digits">
46157         <doc xml:whitespace="preserve">Fetches the precision of @spin_button. See gtk_spin_button_set_digits().</doc>
46158         <return-value transfer-ownership="none">
46159           <doc xml:whitespace="preserve">the current precision</doc>
46160           <type name="guint" c:type="guint"/>
46161         </return-value>
46162       </method>
46163       <method name="get_increments"
46164               c:identifier="gtk_spin_button_get_increments">
46165         <doc xml:whitespace="preserve">Gets the current step and page the increments used by @spin_button. See
46166 gtk_spin_button_set_increments().</doc>
46167         <return-value transfer-ownership="none">
46168           <type name="none" c:type="void"/>
46169         </return-value>
46170         <parameters>
46171           <parameter name="step" transfer-ownership="none" allow-none="1">
46172             <doc xml:whitespace="preserve">location to store step increment, or %NULL</doc>
46173             <type name="gdouble" c:type="gdouble*"/>
46174           </parameter>
46175           <parameter name="page" transfer-ownership="none" allow-none="1">
46176             <doc xml:whitespace="preserve">location to store page increment, or %NULL</doc>
46177             <type name="gdouble" c:type="gdouble*"/>
46178           </parameter>
46179         </parameters>
46180       </method>
46181       <method name="get_numeric" c:identifier="gtk_spin_button_get_numeric">
46182         <doc xml:whitespace="preserve">Returns whether non-numeric text can be typed into the spin button.
46183 See gtk_spin_button_set_numeric().</doc>
46184         <return-value transfer-ownership="none">
46185           <doc xml:whitespace="preserve">%TRUE if only numeric text can be entered</doc>
46186           <type name="gboolean" c:type="gboolean"/>
46187         </return-value>
46188       </method>
46189       <method name="get_range" c:identifier="gtk_spin_button_get_range">
46190         <doc xml:whitespace="preserve">Gets the range allowed for @spin_button. See
46191 gtk_spin_button_set_range().</doc>
46192         <return-value transfer-ownership="none">
46193           <type name="none" c:type="void"/>
46194         </return-value>
46195         <parameters>
46196           <parameter name="min" transfer-ownership="none" allow-none="1">
46197             <doc xml:whitespace="preserve">location to store minimum allowed value, or %NULL</doc>
46198             <type name="gdouble" c:type="gdouble*"/>
46199           </parameter>
46200           <parameter name="max" transfer-ownership="none" allow-none="1">
46201             <doc xml:whitespace="preserve">location to store maximum allowed value, or %NULL</doc>
46202             <type name="gdouble" c:type="gdouble*"/>
46203           </parameter>
46204         </parameters>
46205       </method>
46206       <method name="get_snap_to_ticks"
46207               c:identifier="gtk_spin_button_get_snap_to_ticks">
46208         <doc xml:whitespace="preserve">Returns whether the values are corrected to the nearest step. See
46209 gtk_spin_button_set_snap_to_ticks().</doc>
46210         <return-value transfer-ownership="none">
46211           <doc xml:whitespace="preserve">%TRUE if values are snapped to the nearest step.</doc>
46212           <type name="gboolean" c:type="gboolean"/>
46213         </return-value>
46214       </method>
46215       <method name="get_update_policy"
46216               c:identifier="gtk_spin_button_get_update_policy">
46217         <doc xml:whitespace="preserve">Gets the update behavior of a spin button. See
46218 gtk_spin_button_set_update_policy().</doc>
46219         <return-value transfer-ownership="none">
46220           <doc xml:whitespace="preserve">the current update policy</doc>
46221           <type name="SpinButtonUpdatePolicy"
46222                 c:type="GtkSpinButtonUpdatePolicy"/>
46223         </return-value>
46224       </method>
46225       <method name="get_value" c:identifier="gtk_spin_button_get_value">
46226         <doc xml:whitespace="preserve">Get the value in the @spin_button.</doc>
46227         <return-value transfer-ownership="none">
46228           <doc xml:whitespace="preserve">the value of @spin_button</doc>
46229           <type name="gdouble" c:type="gdouble"/>
46230         </return-value>
46231       </method>
46232       <method name="get_value_as_int"
46233               c:identifier="gtk_spin_button_get_value_as_int">
46234         <doc xml:whitespace="preserve">Get the value @spin_button represented as an integer.</doc>
46235         <return-value transfer-ownership="none">
46236           <doc xml:whitespace="preserve">the value of @spin_button</doc>
46237           <type name="gint" c:type="gint"/>
46238         </return-value>
46239       </method>
46240       <method name="get_wrap" c:identifier="gtk_spin_button_get_wrap">
46241         <doc xml:whitespace="preserve">Returns whether the spin button's value wraps around to the
46242 opposite limit when the upper or lower limit of the range is
46243 exceeded. See gtk_spin_button_set_wrap().</doc>
46244         <return-value transfer-ownership="none">
46245           <doc xml:whitespace="preserve">%TRUE if the spin button wraps around</doc>
46246           <type name="gboolean" c:type="gboolean"/>
46247         </return-value>
46248       </method>
46249       <method name="set_adjustment"
46250               c:identifier="gtk_spin_button_set_adjustment">
46251         <doc xml:whitespace="preserve">Replaces the #GtkAdjustment associated with @spin_button.</doc>
46252         <return-value transfer-ownership="none">
46253           <type name="none" c:type="void"/>
46254         </return-value>
46255         <parameters>
46256           <parameter name="adjustment" transfer-ownership="none">
46257             <doc xml:whitespace="preserve">a #GtkAdjustment to replace the existing adjustment</doc>
46258             <type name="Adjustment" c:type="GtkAdjustment*"/>
46259           </parameter>
46260         </parameters>
46261       </method>
46262       <method name="set_digits" c:identifier="gtk_spin_button_set_digits">
46263         <doc xml:whitespace="preserve">Set the precision to be displayed by @spin_button. Up to 20 digit precision
46264 is allowed.</doc>
46265         <return-value transfer-ownership="none">
46266           <type name="none" c:type="void"/>
46267         </return-value>
46268         <parameters>
46269           <parameter name="digits" transfer-ownership="none">
46270             <doc xml:whitespace="preserve">the number of digits after the decimal point to be displayed for the spin button's value</doc>
46271             <type name="guint" c:type="guint"/>
46272           </parameter>
46273         </parameters>
46274       </method>
46275       <method name="set_increments"
46276               c:identifier="gtk_spin_button_set_increments">
46277         <doc xml:whitespace="preserve">Sets the step and page increments for spin_button.  This affects how 
46278 quickly the value changes when the spin button's arrows are activated.</doc>
46279         <return-value transfer-ownership="none">
46280           <type name="none" c:type="void"/>
46281         </return-value>
46282         <parameters>
46283           <parameter name="step" transfer-ownership="none">
46284             <doc xml:whitespace="preserve">increment applied for a button 1 press.</doc>
46285             <type name="gdouble" c:type="gdouble"/>
46286           </parameter>
46287           <parameter name="page" transfer-ownership="none">
46288             <doc xml:whitespace="preserve">increment applied for a button 2 press.</doc>
46289             <type name="gdouble" c:type="gdouble"/>
46290           </parameter>
46291         </parameters>
46292       </method>
46293       <method name="set_numeric" c:identifier="gtk_spin_button_set_numeric">
46294         <doc xml:whitespace="preserve">Sets the flag that determines if non-numeric text can be typed into
46295 the spin button.</doc>
46296         <return-value transfer-ownership="none">
46297           <type name="none" c:type="void"/>
46298         </return-value>
46299         <parameters>
46300           <parameter name="numeric" transfer-ownership="none">
46301             <doc xml:whitespace="preserve">flag indicating if only numeric entry is allowed.</doc>
46302             <type name="gboolean" c:type="gboolean"/>
46303           </parameter>
46304         </parameters>
46305       </method>
46306       <method name="set_range" c:identifier="gtk_spin_button_set_range">
46307         <doc xml:whitespace="preserve">Sets the minimum and maximum allowable values for @spin_button</doc>
46308         <return-value transfer-ownership="none">
46309           <type name="none" c:type="void"/>
46310         </return-value>
46311         <parameters>
46312           <parameter name="min" transfer-ownership="none">
46313             <doc xml:whitespace="preserve">minimum allowable value</doc>
46314             <type name="gdouble" c:type="gdouble"/>
46315           </parameter>
46316           <parameter name="max" transfer-ownership="none">
46317             <doc xml:whitespace="preserve">maximum allowable value</doc>
46318             <type name="gdouble" c:type="gdouble"/>
46319           </parameter>
46320         </parameters>
46321       </method>
46322       <method name="set_snap_to_ticks"
46323               c:identifier="gtk_spin_button_set_snap_to_ticks">
46324         <doc xml:whitespace="preserve">Sets the policy as to whether values are corrected to the nearest step 
46325 increment when a spin button is activated after providing an invalid value.</doc>
46326         <return-value transfer-ownership="none">
46327           <type name="none" c:type="void"/>
46328         </return-value>
46329         <parameters>
46330           <parameter name="snap_to_ticks" transfer-ownership="none">
46331             <doc xml:whitespace="preserve">a flag indicating if invalid values should be corrected.</doc>
46332             <type name="gboolean" c:type="gboolean"/>
46333           </parameter>
46334         </parameters>
46335       </method>
46336       <method name="set_update_policy"
46337               c:identifier="gtk_spin_button_set_update_policy">
46338         <doc xml:whitespace="preserve">Sets the update behavior of a spin button. This determines whether the
46339 spin button is always updated or only when a valid value is set.</doc>
46340         <return-value transfer-ownership="none">
46341           <type name="none" c:type="void"/>
46342         </return-value>
46343         <parameters>
46344           <parameter name="policy" transfer-ownership="none">
46345             <doc xml:whitespace="preserve">a #GtkSpinButtonUpdatePolicy value</doc>
46346             <type name="SpinButtonUpdatePolicy"
46347                   c:type="GtkSpinButtonUpdatePolicy"/>
46348           </parameter>
46349         </parameters>
46350       </method>
46351       <method name="set_value" c:identifier="gtk_spin_button_set_value">
46352         <doc xml:whitespace="preserve">Set the value of @spin_button.</doc>
46353         <return-value transfer-ownership="none">
46354           <type name="none" c:type="void"/>
46355         </return-value>
46356         <parameters>
46357           <parameter name="value" transfer-ownership="none">
46358             <doc xml:whitespace="preserve">the new value</doc>
46359             <type name="gdouble" c:type="gdouble"/>
46360           </parameter>
46361         </parameters>
46362       </method>
46363       <method name="set_wrap" c:identifier="gtk_spin_button_set_wrap">
46364         <doc xml:whitespace="preserve">Sets the flag that determines if a spin button value wraps around to the
46365 opposite limit when the upper or lower limit of the range is exceeded.</doc>
46366         <return-value transfer-ownership="none">
46367           <type name="none" c:type="void"/>
46368         </return-value>
46369         <parameters>
46370           <parameter name="wrap" transfer-ownership="none">
46371             <doc xml:whitespace="preserve">a flag indicating if wrapping behavior is performed.</doc>
46372             <type name="gboolean" c:type="gboolean"/>
46373           </parameter>
46374         </parameters>
46375       </method>
46376       <method name="spin" c:identifier="gtk_spin_button_spin">
46377         <doc xml:whitespace="preserve">Increment or decrement a spin button's value in a specified direction
46378 by a specified amount.</doc>
46379         <return-value transfer-ownership="none">
46380           <type name="none" c:type="void"/>
46381         </return-value>
46382         <parameters>
46383           <parameter name="direction" transfer-ownership="none">
46384             <doc xml:whitespace="preserve">a #GtkSpinType indicating the direction to spin.</doc>
46385             <type name="SpinType" c:type="GtkSpinType"/>
46386           </parameter>
46387           <parameter name="increment" transfer-ownership="none">
46388             <doc xml:whitespace="preserve">step increment to apply in the specified direction.</doc>
46389             <type name="gdouble" c:type="gdouble"/>
46390           </parameter>
46391         </parameters>
46392       </method>
46393       <method name="update" c:identifier="gtk_spin_button_update">
46394         <doc xml:whitespace="preserve">Manually force an update of the spin button.</doc>
46395         <return-value transfer-ownership="none">
46396           <type name="none" c:type="void"/>
46397         </return-value>
46398       </method>
46399       <property name="adjustment" writable="1" transfer-ownership="none">
46400         <type name="Adjustment"/>
46401       </property>
46402       <property name="climb-rate" writable="1" transfer-ownership="none">
46403         <type name="gdouble"/>
46404       </property>
46405       <property name="digits" writable="1" transfer-ownership="none">
46406         <type name="guint"/>
46407       </property>
46408       <property name="numeric" writable="1" transfer-ownership="none">
46409         <type name="gboolean"/>
46410       </property>
46411       <property name="snap-to-ticks" writable="1" transfer-ownership="none">
46412         <type name="gboolean"/>
46413       </property>
46414       <property name="update-policy" writable="1" transfer-ownership="none">
46415         <type name="SpinButtonUpdatePolicy"/>
46416       </property>
46417       <property name="value" writable="1" transfer-ownership="none">
46418         <type name="gdouble"/>
46419       </property>
46420       <property name="wrap" writable="1" transfer-ownership="none">
46421         <type name="gboolean"/>
46422       </property>
46423       <field name="entry">
46424         <type name="Entry" c:type="GtkEntry"/>
46425       </field>
46426       <field name="priv" readable="0" private="1">
46427         <type name="SpinButtonPrivate" c:type="GtkSpinButtonPrivate*"/>
46428       </field>
46429       <glib:signal name="change-value">
46430         <return-value transfer-ownership="none">
46431           <type name="none"/>
46432         </return-value>
46433         <parameters>
46434           <parameter name="object" transfer-ownership="none">
46435             <type name="ScrollType"/>
46436           </parameter>
46437         </parameters>
46438       </glib:signal>
46439       <glib:signal name="input">
46440         <return-value transfer-ownership="none">
46441           <type name="gint"/>
46442         </return-value>
46443         <parameters>
46444           <parameter name="object" transfer-ownership="none">
46445             <type name="gpointer"/>
46446           </parameter>
46447         </parameters>
46448       </glib:signal>
46449       <glib:signal name="output">
46450         <doc xml:whitespace="preserve">The ::output signal can be used to change to formatting
46451 of the value that is displayed in the spin buttons entry.
46452 |[
46453 /&amp;ast; show leading zeros &amp;ast;/
46454 static gboolean
46455 on_output (GtkSpinButton *spin,
46456 gpointer       data)
46457 {
46458 GtkAdjustment *adj;
46459 gchar *text;
46460 int value;
46461 adj = gtk_spin_button_get_adjustment (spin);
46462 value = (int)gtk_adjustment_get_value (adj);
46463 text = g_strdup_printf ("%02d", value);
46464 gtk_entry_set_text (GTK_ENTRY (spin), text);
46465 g_free (text);
46466 return TRUE;
46467 }
46468 ]|</doc>
46469         <return-value transfer-ownership="none">
46470           <doc xml:whitespace="preserve">%TRUE if the value has been displayed.</doc>
46471           <type name="gboolean"/>
46472         </return-value>
46473       </glib:signal>
46474       <glib:signal name="value-changed">
46475         <return-value transfer-ownership="none">
46476           <type name="none"/>
46477         </return-value>
46478       </glib:signal>
46479       <glib:signal name="wrapped" version="2.10">
46480         <doc xml:whitespace="preserve">The wrapped signal is emitted right after the spinbutton wraps
46481 from its maximum to minimum value or vice-versa.</doc>
46482         <return-value transfer-ownership="none">
46483           <type name="none"/>
46484         </return-value>
46485       </glib:signal>
46486     </class>
46487     <record name="SpinButtonClass"
46488             c:type="GtkSpinButtonClass"
46489             glib:is-gtype-struct-for="SpinButton">
46490       <field name="parent_class">
46491         <type name="EntryClass" c:type="GtkEntryClass"/>
46492       </field>
46493       <field name="input">
46494         <callback name="input">
46495           <return-value transfer-ownership="none">
46496             <type name="gint" c:type="gint"/>
46497           </return-value>
46498           <parameters>
46499             <parameter name="spin_button" transfer-ownership="none">
46500               <type name="SpinButton" c:type="GtkSpinButton*"/>
46501             </parameter>
46502             <parameter name="new_value" transfer-ownership="none">
46503               <type name="gdouble" c:type="gdouble*"/>
46504             </parameter>
46505           </parameters>
46506         </callback>
46507       </field>
46508       <field name="output">
46509         <callback name="output">
46510           <return-value transfer-ownership="none">
46511             <type name="gint" c:type="gint"/>
46512           </return-value>
46513           <parameters>
46514             <parameter name="spin_button" transfer-ownership="none">
46515               <type name="SpinButton" c:type="GtkSpinButton*"/>
46516             </parameter>
46517           </parameters>
46518         </callback>
46519       </field>
46520       <field name="value_changed">
46521         <callback name="value_changed">
46522           <return-value transfer-ownership="none">
46523             <type name="none" c:type="void"/>
46524           </return-value>
46525           <parameters>
46526             <parameter name="spin_button" transfer-ownership="none">
46527               <type name="SpinButton" c:type="GtkSpinButton*"/>
46528             </parameter>
46529           </parameters>
46530         </callback>
46531       </field>
46532       <field name="change_value">
46533         <callback name="change_value">
46534           <return-value transfer-ownership="none">
46535             <type name="none" c:type="void"/>
46536           </return-value>
46537           <parameters>
46538             <parameter name="spin_button" transfer-ownership="none">
46539               <type name="SpinButton" c:type="GtkSpinButton*"/>
46540             </parameter>
46541             <parameter name="scroll" transfer-ownership="none">
46542               <type name="ScrollType" c:type="GtkScrollType"/>
46543             </parameter>
46544           </parameters>
46545         </callback>
46546       </field>
46547       <field name="wrapped">
46548         <callback name="wrapped">
46549           <return-value transfer-ownership="none">
46550             <type name="none" c:type="void"/>
46551           </return-value>
46552           <parameters>
46553             <parameter name="spin_button" transfer-ownership="none">
46554               <type name="SpinButton" c:type="GtkSpinButton*"/>
46555             </parameter>
46556           </parameters>
46557         </callback>
46558       </field>
46559       <field name="_gtk_reserved1" introspectable="0">
46560         <callback name="_gtk_reserved1">
46561           <return-value transfer-ownership="none">
46562             <type name="none" c:type="void"/>
46563           </return-value>
46564         </callback>
46565       </field>
46566       <field name="_gtk_reserved2" introspectable="0">
46567         <callback name="_gtk_reserved2">
46568           <return-value transfer-ownership="none">
46569             <type name="none" c:type="void"/>
46570           </return-value>
46571         </callback>
46572       </field>
46573       <field name="_gtk_reserved3" introspectable="0">
46574         <callback name="_gtk_reserved3">
46575           <return-value transfer-ownership="none">
46576             <type name="none" c:type="void"/>
46577           </return-value>
46578         </callback>
46579       </field>
46580     </record>
46581     <record name="SpinButtonPrivate"
46582             c:type="GtkSpinButtonPrivate"
46583             disguised="1">
46584     </record>
46585     <enumeration name="SpinButtonUpdatePolicy"
46586                  glib:type-name="GtkSpinButtonUpdatePolicy"
46587                  glib:get-type="gtk_spin_button_update_policy_get_type"
46588                  c:type="GtkSpinButtonUpdatePolicy">
46589       <member name="always"
46590               value="0"
46591               c:identifier="GTK_UPDATE_ALWAYS"
46592               glib:nick="always"/>
46593       <member name="if_valid"
46594               value="1"
46595               c:identifier="GTK_UPDATE_IF_VALID"
46596               glib:nick="if-valid"/>
46597     </enumeration>
46598     <enumeration name="SpinType"
46599                  glib:type-name="GtkSpinType"
46600                  glib:get-type="gtk_spin_type_get_type"
46601                  c:type="GtkSpinType">
46602       <member name="step_forward"
46603               value="0"
46604               c:identifier="GTK_SPIN_STEP_FORWARD"
46605               glib:nick="step-forward"/>
46606       <member name="step_backward"
46607               value="1"
46608               c:identifier="GTK_SPIN_STEP_BACKWARD"
46609               glib:nick="step-backward"/>
46610       <member name="page_forward"
46611               value="2"
46612               c:identifier="GTK_SPIN_PAGE_FORWARD"
46613               glib:nick="page-forward"/>
46614       <member name="page_backward"
46615               value="3"
46616               c:identifier="GTK_SPIN_PAGE_BACKWARD"
46617               glib:nick="page-backward"/>
46618       <member name="home"
46619               value="4"
46620               c:identifier="GTK_SPIN_HOME"
46621               glib:nick="home"/>
46622       <member name="end"
46623               value="5"
46624               c:identifier="GTK_SPIN_END"
46625               glib:nick="end"/>
46626       <member name="user_defined"
46627               value="6"
46628               c:identifier="GTK_SPIN_USER_DEFINED"
46629               glib:nick="user-defined"/>
46630     </enumeration>
46631     <class name="Spinner"
46632            c:symbol-prefix="spinner"
46633            c:type="GtkSpinner"
46634            parent="Widget"
46635            glib:type-name="GtkSpinner"
46636            glib:get-type="gtk_spinner_get_type"
46637            glib:type-struct="SpinnerClass">
46638       <implements name="Atk.ImplementorIface"/>
46639       <implements name="Buildable"/>
46640       <implements name="SizeRequest"/>
46641       <constructor name="new" c:identifier="gtk_spinner_new" version="2.20">
46642         <doc xml:whitespace="preserve">Returns a new spinner widget. Not yet started.</doc>
46643         <return-value transfer-ownership="none">
46644           <doc xml:whitespace="preserve">a new #GtkSpinner</doc>
46645           <type name="Widget" c:type="GtkWidget*"/>
46646         </return-value>
46647       </constructor>
46648       <method name="start" c:identifier="gtk_spinner_start" version="2.20">
46649         <doc xml:whitespace="preserve">Starts the animation of the spinner.</doc>
46650         <return-value transfer-ownership="none">
46651           <type name="none" c:type="void"/>
46652         </return-value>
46653       </method>
46654       <method name="stop" c:identifier="gtk_spinner_stop" version="2.20">
46655         <doc xml:whitespace="preserve">Stops the animation of the spinner.</doc>
46656         <return-value transfer-ownership="none">
46657           <type name="none" c:type="void"/>
46658         </return-value>
46659       </method>
46660       <property name="active" writable="1" transfer-ownership="none">
46661         <type name="gboolean"/>
46662       </property>
46663       <field name="parent">
46664         <type name="Widget" c:type="GtkWidget"/>
46665       </field>
46666       <field name="priv" readable="0" private="1">
46667         <type name="SpinnerPrivate" c:type="GtkSpinnerPrivate*"/>
46668       </field>
46669     </class>
46670     <record name="SpinnerClass"
46671             c:type="GtkSpinnerClass"
46672             glib:is-gtype-struct-for="Spinner">
46673       <field name="parent_class">
46674         <type name="WidgetClass" c:type="GtkWidgetClass"/>
46675       </field>
46676     </record>
46677     <record name="SpinnerPrivate" c:type="GtkSpinnerPrivate" disguised="1">
46678     </record>
46679     <enumeration name="StateType"
46680                  glib:type-name="GtkStateType"
46681                  glib:get-type="gtk_state_type_get_type"
46682                  c:type="GtkStateType">
46683       <member name="normal"
46684               value="0"
46685               c:identifier="GTK_STATE_NORMAL"
46686               glib:nick="normal"/>
46687       <member name="active"
46688               value="1"
46689               c:identifier="GTK_STATE_ACTIVE"
46690               glib:nick="active"/>
46691       <member name="prelight"
46692               value="2"
46693               c:identifier="GTK_STATE_PRELIGHT"
46694               glib:nick="prelight"/>
46695       <member name="selected"
46696               value="3"
46697               c:identifier="GTK_STATE_SELECTED"
46698               glib:nick="selected"/>
46699       <member name="insensitive"
46700               value="4"
46701               c:identifier="GTK_STATE_INSENSITIVE"
46702               glib:nick="insensitive"/>
46703     </enumeration>
46704     <class name="StatusIcon"
46705            c:symbol-prefix="status_icon"
46706            c:type="GtkStatusIcon"
46707            parent="GObject.Object"
46708            glib:type-name="GtkStatusIcon"
46709            glib:get-type="gtk_status_icon_get_type"
46710            glib:type-struct="StatusIconClass">
46711       <constructor name="new"
46712                    c:identifier="gtk_status_icon_new"
46713                    version="2.10">
46714         <doc xml:whitespace="preserve">Creates an empty status icon object.</doc>
46715         <return-value transfer-ownership="full">
46716           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46717           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46718         </return-value>
46719       </constructor>
46720       <constructor name="new_from_file"
46721                    c:identifier="gtk_status_icon_new_from_file"
46722                    version="2.10">
46723         <doc xml:whitespace="preserve">Creates a status icon displaying the file @filename. 
46724 The image will be scaled down to fit in the available 
46725 space in the notification area, if necessary.</doc>
46726         <return-value transfer-ownership="full">
46727           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46728           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46729         </return-value>
46730         <parameters>
46731           <parameter name="filename" transfer-ownership="none">
46732             <doc xml:whitespace="preserve">a filename</doc>
46733             <type name="utf8" c:type="gchar*"/>
46734           </parameter>
46735         </parameters>
46736       </constructor>
46737       <constructor name="new_from_gicon"
46738                    c:identifier="gtk_status_icon_new_from_gicon"
46739                    version="2.14">
46740         <doc xml:whitespace="preserve">Creates a status icon displaying a #GIcon. If the icon is a
46741 themed icon, it will be updated when the theme changes.</doc>
46742         <return-value transfer-ownership="full">
46743           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46744           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46745         </return-value>
46746         <parameters>
46747           <parameter name="icon" transfer-ownership="none">
46748             <doc xml:whitespace="preserve">a #GIcon</doc>
46749             <type name="Gio.Icon" c:type="GIcon*"/>
46750           </parameter>
46751         </parameters>
46752       </constructor>
46753       <constructor name="new_from_icon_name"
46754                    c:identifier="gtk_status_icon_new_from_icon_name"
46755                    version="2.10">
46756         <doc xml:whitespace="preserve">Creates a status icon displaying an icon from the current icon theme.
46757 If the current icon theme is changed, the icon will be updated 
46758 appropriately.</doc>
46759         <return-value transfer-ownership="full">
46760           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46761           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46762         </return-value>
46763         <parameters>
46764           <parameter name="icon_name" transfer-ownership="none">
46765             <doc xml:whitespace="preserve">an icon name</doc>
46766             <type name="utf8" c:type="gchar*"/>
46767           </parameter>
46768         </parameters>
46769       </constructor>
46770       <constructor name="new_from_pixbuf"
46771                    c:identifier="gtk_status_icon_new_from_pixbuf"
46772                    version="2.10">
46773         <doc xml:whitespace="preserve">Creates a status icon displaying @pixbuf. 
46774 The image will be scaled down to fit in the available 
46775 space in the notification area, if necessary.</doc>
46776         <return-value transfer-ownership="full">
46777           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46778           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46779         </return-value>
46780         <parameters>
46781           <parameter name="pixbuf" transfer-ownership="none">
46782             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
46783             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
46784           </parameter>
46785         </parameters>
46786       </constructor>
46787       <constructor name="new_from_stock"
46788                    c:identifier="gtk_status_icon_new_from_stock"
46789                    version="2.10">
46790         <doc xml:whitespace="preserve">Creates a status icon displaying a stock icon. Sample stock icon
46791 names are #GTK_STOCK_OPEN, #GTK_STOCK_QUIT. You can register your 
46792 own stock icon names, see gtk_icon_factory_add_default() and 
46793 gtk_icon_factory_add().</doc>
46794         <return-value transfer-ownership="full">
46795           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
46796           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
46797         </return-value>
46798         <parameters>
46799           <parameter name="stock_id" transfer-ownership="none">
46800             <doc xml:whitespace="preserve">a stock icon id</doc>
46801             <type name="utf8" c:type="gchar*"/>
46802           </parameter>
46803         </parameters>
46804       </constructor>
46805       <function name="position_menu"
46806                 c:identifier="gtk_status_icon_position_menu"
46807                 version="2.10">
46808         <doc xml:whitespace="preserve">Menu positioning function to use with gtk_menu_popup()
46809 to position @menu aligned to the status icon @user_data.</doc>
46810         <return-value transfer-ownership="none">
46811           <type name="none" c:type="void"/>
46812         </return-value>
46813         <parameters>
46814           <parameter name="menu" transfer-ownership="none">
46815             <doc xml:whitespace="preserve">the #GtkMenu</doc>
46816             <type name="Menu" c:type="GtkMenu*"/>
46817           </parameter>
46818           <parameter name="x" transfer-ownership="none">
46819             <doc xml:whitespace="preserve">return location for the x position</doc>
46820             <type name="gint" c:type="gint*"/>
46821           </parameter>
46822           <parameter name="y" transfer-ownership="none">
46823             <doc xml:whitespace="preserve">return location for the y position</doc>
46824             <type name="gint" c:type="gint*"/>
46825           </parameter>
46826           <parameter name="push_in" transfer-ownership="none">
46827             <doc xml:whitespace="preserve">whether the first menu item should be offset (pushed in) to be aligned with the menu popup position (only useful for GtkOptionMenu).</doc>
46828             <type name="gboolean" c:type="gboolean*"/>
46829           </parameter>
46830           <parameter name="user_data" transfer-ownership="none">
46831             <doc xml:whitespace="preserve">the status icon to position the menu on</doc>
46832             <type name="gpointer" c:type="gpointer"/>
46833           </parameter>
46834         </parameters>
46835       </function>
46836       <method name="get_geometry"
46837               c:identifier="gtk_status_icon_get_geometry"
46838               version="2.10">
46839         <doc xml:whitespace="preserve">Obtains information about the location of the status icon
46840 on screen. This information can be used to e.g. position 
46841 popups like notification bubbles. 
46842 See gtk_status_icon_position_menu() for a more convenient 
46843 alternative for positioning menus.
46844 Note that some platforms do not allow GTK+ to provide 
46845 this information, and even on platforms that do allow it,
46846 the information is not reliable unless the status icon
46847 is embedded in a notification area, see
46848 gtk_status_icon_is_embedded().
46849 been filled in</doc>
46850         <return-value transfer-ownership="none">
46851           <doc xml:whitespace="preserve">%TRUE if the location information has</doc>
46852           <type name="gboolean" c:type="gboolean"/>
46853         </return-value>
46854         <parameters>
46855           <parameter name="screen"
46856                      direction="out"
46857                      caller-allocates="0"
46858                      transfer-ownership="none"
46859                      allow-none="1">
46860             <doc xml:whitespace="preserve">return location for the screen, or %NULL if the information is not needed</doc>
46861             <type name="Gdk.Screen" c:type="GdkScreen**"/>
46862           </parameter>
46863           <parameter name="area"
46864                      direction="out"
46865                      caller-allocates="1"
46866                      transfer-ownership="none"
46867                      allow-none="1">
46868             <doc xml:whitespace="preserve">return location for the area occupied by the status icon, or %NULL</doc>
46869             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
46870           </parameter>
46871           <parameter name="orientation"
46872                      direction="out"
46873                      caller-allocates="1"
46874                      transfer-ownership="none"
46875                      allow-none="1">
46876             <doc xml:whitespace="preserve">return location for the orientation of the panel in which the status icon is embedded, or %NULL. A panel at the top or bottom of the screen is horizontal, a panel at the left or right is vertical.</doc>
46877             <type name="Orientation" c:type="GtkOrientation*"/>
46878           </parameter>
46879         </parameters>
46880       </method>
46881       <method name="get_gicon"
46882               c:identifier="gtk_status_icon_get_gicon"
46883               version="2.14">
46884         <doc xml:whitespace="preserve">Retrieves the #GIcon being displayed by the #GtkStatusIcon.
46885 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
46886 %GTK_IMAGE_GICON (see gtk_status_icon_get_storage_type()).
46887 The caller of this function does not own a reference to the
46888 returned #GIcon.
46889 If this function fails, @icon is left unchanged;</doc>
46890         <return-value transfer-ownership="none">
46891           <doc xml:whitespace="preserve">the displayed icon, or %NULL if the image is empty</doc>
46892           <type name="Gio.Icon" c:type="GIcon*"/>
46893         </return-value>
46894       </method>
46895       <method name="get_has_tooltip"
46896               c:identifier="gtk_status_icon_get_has_tooltip"
46897               version="2.16">
46898         <doc xml:whitespace="preserve">Returns the current value of the has-tooltip property.
46899 See #GtkStatusIcon:has-tooltip for more information.</doc>
46900         <return-value transfer-ownership="none">
46901           <doc xml:whitespace="preserve">current value of has-tooltip on @status_icon.</doc>
46902           <type name="gboolean" c:type="gboolean"/>
46903         </return-value>
46904       </method>
46905       <method name="get_icon_name"
46906               c:identifier="gtk_status_icon_get_icon_name"
46907               version="2.10">
46908         <doc xml:whitespace="preserve">Gets the name of the icon being displayed by the #GtkStatusIcon.
46909 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
46910 %GTK_IMAGE_ICON_NAME (see gtk_status_icon_get_storage_type()).
46911 The returned string is owned by the #GtkStatusIcon and should not
46912 be freed or modified.</doc>
46913         <return-value transfer-ownership="none">
46914           <doc xml:whitespace="preserve">name of the displayed icon, or %NULL if the image is empty.</doc>
46915           <type name="utf8" c:type="gchar*"/>
46916         </return-value>
46917       </method>
46918       <method name="get_pixbuf"
46919               c:identifier="gtk_status_icon_get_pixbuf"
46920               version="2.10">
46921         <doc xml:whitespace="preserve">Gets the #GdkPixbuf being displayed by the #GtkStatusIcon.
46922 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
46923 %GTK_IMAGE_PIXBUF (see gtk_status_icon_get_storage_type()).
46924 The caller of this function does not own a reference to the
46925 returned pixbuf.
46926 or %NULL if the image is empty.</doc>
46927         <return-value transfer-ownership="none">
46928           <doc xml:whitespace="preserve">the displayed pixbuf,</doc>
46929           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
46930         </return-value>
46931       </method>
46932       <method name="get_screen"
46933               c:identifier="gtk_status_icon_get_screen"
46934               version="2.12">
46935         <doc xml:whitespace="preserve">Returns the #GdkScreen associated with @status_icon.</doc>
46936         <return-value transfer-ownership="none">
46937           <doc xml:whitespace="preserve">a #GdkScreen.</doc>
46938           <type name="Gdk.Screen" c:type="GdkScreen*"/>
46939         </return-value>
46940       </method>
46941       <method name="get_size"
46942               c:identifier="gtk_status_icon_get_size"
46943               version="2.10">
46944         <doc xml:whitespace="preserve">Gets the size in pixels that is available for the image. 
46945 Stock icons and named icons adapt their size automatically
46946 if the size of the notification area changes. For other
46947 storage types, the size-changed signal can be used to
46948 react to size changes.
46949 Note that the returned size is only meaningful while the 
46950 status icon is embedded (see gtk_status_icon_is_embedded()).</doc>
46951         <return-value transfer-ownership="none">
46952           <doc xml:whitespace="preserve">the size that is available for the image</doc>
46953           <type name="gint" c:type="gint"/>
46954         </return-value>
46955       </method>
46956       <method name="get_stock"
46957               c:identifier="gtk_status_icon_get_stock"
46958               version="2.10">
46959         <doc xml:whitespace="preserve">Gets the id of the stock icon being displayed by the #GtkStatusIcon.
46960 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
46961 %GTK_IMAGE_STOCK (see gtk_status_icon_get_storage_type()).
46962 The returned string is owned by the #GtkStatusIcon and should not
46963 be freed or modified.
46964 or %NULL if the image is empty.</doc>
46965         <return-value transfer-ownership="none">
46966           <doc xml:whitespace="preserve">stock id of the displayed stock icon,</doc>
46967           <type name="utf8" c:type="gchar*"/>
46968         </return-value>
46969       </method>
46970       <method name="get_storage_type"
46971               c:identifier="gtk_status_icon_get_storage_type"
46972               version="2.10">
46973         <doc xml:whitespace="preserve">Gets the type of representation being used by the #GtkStatusIcon
46974 to store image data. If the #GtkStatusIcon has no image data,
46975 the return value will be %GTK_IMAGE_EMPTY.</doc>
46976         <return-value transfer-ownership="none">
46977           <doc xml:whitespace="preserve">the image representation being used</doc>
46978           <type name="ImageType" c:type="GtkImageType"/>
46979         </return-value>
46980       </method>
46981       <method name="get_title"
46982               c:identifier="gtk_status_icon_get_title"
46983               version="2.18">
46984         <doc xml:whitespace="preserve">Gets the title of this tray icon. See gtk_status_icon_set_title().</doc>
46985         <return-value transfer-ownership="none">
46986           <doc xml:whitespace="preserve">the title of the status icon</doc>
46987           <type name="utf8" c:type="gchar*"/>
46988         </return-value>
46989       </method>
46990       <method name="get_tooltip_markup"
46991               c:identifier="gtk_status_icon_get_tooltip_markup"
46992               version="2.16">
46993         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @status_icon.
46994 returned string with g_free() when done.</doc>
46995         <return-value transfer-ownership="full">
46996           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
46997           <type name="utf8" c:type="gchar*"/>
46998         </return-value>
46999       </method>
47000       <method name="get_tooltip_text"
47001               c:identifier="gtk_status_icon_get_tooltip_text"
47002               version="2.16">
47003         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @status_icon.
47004 returned string with g_free() when done.</doc>
47005         <return-value transfer-ownership="full">
47006           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
47007           <type name="utf8" c:type="gchar*"/>
47008         </return-value>
47009       </method>
47010       <method name="get_visible"
47011               c:identifier="gtk_status_icon_get_visible"
47012               version="2.10">
47013         <doc xml:whitespace="preserve">Returns whether the status icon is visible or not. 
47014 Note that being visible does not guarantee that 
47015 the user can actually see the icon, see also 
47016 gtk_status_icon_is_embedded().</doc>
47017         <return-value transfer-ownership="none">
47018           <doc xml:whitespace="preserve">%TRUE if the status icon is visible</doc>
47019           <type name="gboolean" c:type="gboolean"/>
47020         </return-value>
47021       </method>
47022       <method name="get_x11_window_id"
47023               c:identifier="gtk_status_icon_get_x11_window_id"
47024               version="2.14">
47025         <doc xml:whitespace="preserve">This function is only useful on the X11/freedesktop.org platform.
47026 It returns a window ID for the widget in the underlying
47027 status icon implementation.  This is useful for the Galago 
47028 notification service, which can send a window ID in the protocol 
47029 in order for the server to position notification windows 
47030 pointing to a status icon reliably.
47031 This function is not intended for other use cases which are
47032 more likely to be met by one of the non-X11 specific methods, such
47033 as gtk_status_icon_position_menu().
47034 underlying X11 Window</doc>
47035         <return-value transfer-ownership="none">
47036           <doc xml:whitespace="preserve">An 32 bit unsigned integer identifier for the</doc>
47037           <type name="guint32" c:type="guint32"/>
47038         </return-value>
47039       </method>
47040       <method name="is_embedded"
47041               c:identifier="gtk_status_icon_is_embedded"
47042               version="2.10">
47043         <doc xml:whitespace="preserve">Returns whether the status icon is embedded in a notification
47044 area. 
47045 a notification area.</doc>
47046         <return-value transfer-ownership="none">
47047           <doc xml:whitespace="preserve">%TRUE if the status icon is embedded in</doc>
47048           <type name="gboolean" c:type="gboolean"/>
47049         </return-value>
47050       </method>
47051       <method name="set_from_file"
47052               c:identifier="gtk_status_icon_set_from_file"
47053               version="2.10 ">
47054         <doc xml:whitespace="preserve">Makes @status_icon display the file @filename.
47055 See gtk_status_icon_new_from_file() for details.</doc>
47056         <return-value transfer-ownership="none">
47057           <type name="none" c:type="void"/>
47058         </return-value>
47059         <parameters>
47060           <parameter name="filename" transfer-ownership="none">
47061             <doc xml:whitespace="preserve">a filename</doc>
47062             <type name="utf8" c:type="gchar*"/>
47063           </parameter>
47064         </parameters>
47065       </method>
47066       <method name="set_from_gicon"
47067               c:identifier="gtk_status_icon_set_from_gicon"
47068               version="2.14">
47069         <doc xml:whitespace="preserve">Makes @status_icon display the #GIcon.
47070 See gtk_status_icon_new_from_gicon() for details.</doc>
47071         <return-value transfer-ownership="none">
47072           <type name="none" c:type="void"/>
47073         </return-value>
47074         <parameters>
47075           <parameter name="icon" transfer-ownership="none">
47076             <doc xml:whitespace="preserve">a GIcon</doc>
47077             <type name="Gio.Icon" c:type="GIcon*"/>
47078           </parameter>
47079         </parameters>
47080       </method>
47081       <method name="set_from_icon_name"
47082               c:identifier="gtk_status_icon_set_from_icon_name"
47083               version="2.10 ">
47084         <doc xml:whitespace="preserve">Makes @status_icon display the icon named @icon_name from the 
47085 current icon theme.
47086 See gtk_status_icon_new_from_icon_name() for details.</doc>
47087         <return-value transfer-ownership="none">
47088           <type name="none" c:type="void"/>
47089         </return-value>
47090         <parameters>
47091           <parameter name="icon_name" transfer-ownership="none">
47092             <doc xml:whitespace="preserve">an icon name</doc>
47093             <type name="utf8" c:type="gchar*"/>
47094           </parameter>
47095         </parameters>
47096       </method>
47097       <method name="set_from_pixbuf"
47098               c:identifier="gtk_status_icon_set_from_pixbuf"
47099               version="2.10">
47100         <doc xml:whitespace="preserve">Makes @status_icon display @pixbuf.
47101 See gtk_status_icon_new_from_pixbuf() for details.</doc>
47102         <return-value transfer-ownership="none">
47103           <type name="none" c:type="void"/>
47104         </return-value>
47105         <parameters>
47106           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
47107             <doc xml:whitespace="preserve">a #GdkPixbuf or %NULL</doc>
47108             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
47109           </parameter>
47110         </parameters>
47111       </method>
47112       <method name="set_from_stock"
47113               c:identifier="gtk_status_icon_set_from_stock"
47114               version="2.10 ">
47115         <doc xml:whitespace="preserve">Makes @status_icon display the stock icon with the id @stock_id.
47116 See gtk_status_icon_new_from_stock() for details.</doc>
47117         <return-value transfer-ownership="none">
47118           <type name="none" c:type="void"/>
47119         </return-value>
47120         <parameters>
47121           <parameter name="stock_id" transfer-ownership="none">
47122             <doc xml:whitespace="preserve">a stock icon id</doc>
47123             <type name="utf8" c:type="gchar*"/>
47124           </parameter>
47125         </parameters>
47126       </method>
47127       <method name="set_has_tooltip"
47128               c:identifier="gtk_status_icon_set_has_tooltip"
47129               version="2.16">
47130         <doc xml:whitespace="preserve">Sets the has-tooltip property on @status_icon to @has_tooltip.
47131 See #GtkStatusIcon:has-tooltip for more information.</doc>
47132         <return-value transfer-ownership="none">
47133           <type name="none" c:type="void"/>
47134         </return-value>
47135         <parameters>
47136           <parameter name="has_tooltip" transfer-ownership="none">
47137             <doc xml:whitespace="preserve">whether or not @status_icon has a tooltip</doc>
47138             <type name="gboolean" c:type="gboolean"/>
47139           </parameter>
47140         </parameters>
47141       </method>
47142       <method name="set_name"
47143               c:identifier="gtk_status_icon_set_name"
47144               version="2.20">
47145         <doc xml:whitespace="preserve">Sets the name of this tray icon.
47146 This should be a string identifying this icon. It is may be
47147 used for sorting the icons in the tray and will not be shown to
47148 the user.</doc>
47149         <return-value transfer-ownership="none">
47150           <type name="none" c:type="void"/>
47151         </return-value>
47152         <parameters>
47153           <parameter name="name" transfer-ownership="none">
47154             <doc xml:whitespace="preserve">the name</doc>
47155             <type name="utf8" c:type="gchar*"/>
47156           </parameter>
47157         </parameters>
47158       </method>
47159       <method name="set_screen"
47160               c:identifier="gtk_status_icon_set_screen"
47161               version="2.12">
47162         <doc xml:whitespace="preserve">Sets the #GdkScreen where @status_icon is displayed; if
47163 the icon is already mapped, it will be unmapped, and
47164 then remapped on the new screen.</doc>
47165         <return-value transfer-ownership="none">
47166           <type name="none" c:type="void"/>
47167         </return-value>
47168         <parameters>
47169           <parameter name="screen" transfer-ownership="none">
47170             <doc xml:whitespace="preserve">a #GdkScreen</doc>
47171             <type name="Gdk.Screen" c:type="GdkScreen*"/>
47172           </parameter>
47173         </parameters>
47174       </method>
47175       <method name="set_title"
47176               c:identifier="gtk_status_icon_set_title"
47177               version="2.18">
47178         <doc xml:whitespace="preserve">Sets the title of this tray icon.
47179 This should be a short, human-readable, localized string 
47180 describing the tray icon. It may be used by tools like screen
47181 readers to render the tray icon.</doc>
47182         <return-value transfer-ownership="none">
47183           <type name="none" c:type="void"/>
47184         </return-value>
47185         <parameters>
47186           <parameter name="title" transfer-ownership="none">
47187             <doc xml:whitespace="preserve">the title</doc>
47188             <type name="utf8" c:type="gchar*"/>
47189           </parameter>
47190         </parameters>
47191       </method>
47192       <method name="set_tooltip_markup"
47193               c:identifier="gtk_status_icon_set_tooltip_markup"
47194               version="2.16">
47195         <doc xml:whitespace="preserve">Sets @markup as the contents of the tooltip, which is marked up with
47196 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
47197 This function will take care of setting #GtkStatusIcon:has-tooltip to %TRUE
47198 and of the default handler for the #GtkStatusIcon::query-tooltip signal.
47199 See also the #GtkStatusIcon:tooltip-markup property and
47200 gtk_tooltip_set_markup().</doc>
47201         <return-value transfer-ownership="none">
47202           <type name="none" c:type="void"/>
47203         </return-value>
47204         <parameters>
47205           <parameter name="markup" transfer-ownership="none" allow-none="1">
47206             <doc xml:whitespace="preserve">the contents of the tooltip for @status_icon, or %NULL</doc>
47207             <type name="utf8" c:type="gchar*"/>
47208           </parameter>
47209         </parameters>
47210       </method>
47211       <method name="set_tooltip_text"
47212               c:identifier="gtk_status_icon_set_tooltip_text"
47213               version="2.16">
47214         <doc xml:whitespace="preserve">Sets @text as the contents of the tooltip.
47215 This function will take care of setting #GtkStatusIcon:has-tooltip to
47216 %TRUE and of the default handler for the #GtkStatusIcon::query-tooltip
47217 signal.
47218 See also the #GtkStatusIcon:tooltip-text property and
47219 gtk_tooltip_set_text().</doc>
47220         <return-value transfer-ownership="none">
47221           <type name="none" c:type="void"/>
47222         </return-value>
47223         <parameters>
47224           <parameter name="text" transfer-ownership="none">
47225             <doc xml:whitespace="preserve">the contents of the tooltip for @status_icon</doc>
47226             <type name="utf8" c:type="gchar*"/>
47227           </parameter>
47228         </parameters>
47229       </method>
47230       <method name="set_visible"
47231               c:identifier="gtk_status_icon_set_visible"
47232               version="2.10">
47233         <doc xml:whitespace="preserve">Shows or hides a status icon.</doc>
47234         <return-value transfer-ownership="none">
47235           <type name="none" c:type="void"/>
47236         </return-value>
47237         <parameters>
47238           <parameter name="visible" transfer-ownership="none">
47239             <doc xml:whitespace="preserve">%TRUE to show the status icon, %FALSE to hide it</doc>
47240             <type name="gboolean" c:type="gboolean"/>
47241           </parameter>
47242         </parameters>
47243       </method>
47244       <property name="embedded" version="2.12" transfer-ownership="none">
47245         <doc xml:whitespace="preserve">%TRUE if the statusicon is embedded in a notification area.</doc>
47246         <type name="gboolean"/>
47247       </property>
47248       <property name="file"
47249                 readable="0"
47250                 writable="1"
47251                 transfer-ownership="none">
47252         <type name="utf8"/>
47253       </property>
47254       <property name="gicon"
47255                 version="2.14"
47256                 writable="1"
47257                 transfer-ownership="none">
47258         <doc xml:whitespace="preserve">The #GIcon displayed in the #GtkStatusIcon. For themed icons,
47259 the image will be updated automatically if the theme changes.</doc>
47260         <type name="Gio.Icon"/>
47261       </property>
47262       <property name="has-tooltip"
47263                 version="2.16"
47264                 writable="1"
47265                 transfer-ownership="none">
47266         <doc xml:whitespace="preserve">Enables or disables the emission of #GtkStatusIcon::query-tooltip on
47267 tooltip, in this case the status icon will be queried using
47268 #GtkStatusIcon::query-tooltip to determine whether it will provide a
47269 tooltip or not.
47270 Note that setting this property to %TRUE for the first time will change
47271 the event masks of the windows of this status icon to include leave-notify
47272 and motion-notify events. This will not be undone when the property is set
47273 to %FALSE again.
47274 Whether this property is respected is platform dependent.
47275 For plain text tooltips, use #GtkStatusIcon:tooltip-text in preference.</doc>
47276         <type name="gboolean"/>
47277       </property>
47278       <property name="icon-name" writable="1" transfer-ownership="none">
47279         <type name="utf8"/>
47280       </property>
47281       <property name="orientation" version="2.12" transfer-ownership="none">
47282         <doc xml:whitespace="preserve">The orientation of the tray in which the statusicon 
47283 is embedded.</doc>
47284         <type name="Orientation"/>
47285       </property>
47286       <property name="pixbuf" writable="1" transfer-ownership="none">
47287         <type name="GdkPixbuf.Pixbuf"/>
47288       </property>
47289       <property name="screen" writable="1" transfer-ownership="none">
47290         <type name="Gdk.Screen"/>
47291       </property>
47292       <property name="size" transfer-ownership="none">
47293         <type name="gint"/>
47294       </property>
47295       <property name="stock" writable="1" transfer-ownership="none">
47296         <type name="utf8"/>
47297       </property>
47298       <property name="storage-type" transfer-ownership="none">
47299         <type name="ImageType"/>
47300       </property>
47301       <property name="title"
47302                 version="2.18"
47303                 writable="1"
47304                 transfer-ownership="none">
47305         <doc xml:whitespace="preserve">The title of this tray icon. This should be a short, human-readable,
47306 localized string describing the tray icon. It may be used by tools
47307 like screen readers to render the tray icon.</doc>
47308         <type name="utf8"/>
47309       </property>
47310       <property name="tooltip-markup"
47311                 version="2.16"
47312                 writable="1"
47313                 transfer-ownership="none">
47314         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string, which is marked up
47315 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
47316 language&lt;/link&gt;. Also see gtk_tooltip_set_markup().
47317 This is a convenience property which will take care of getting the
47318 tooltip shown if the given string is not %NULL.
47319 #GtkStatusIcon:has-tooltip will automatically be set to %TRUE and
47320 the default handler for the #GtkStatusIcon::query-tooltip signal
47321 will take care of displaying the tooltip.
47322 On some platforms, embedded markup will be ignored.</doc>
47323         <type name="utf8"/>
47324       </property>
47325       <property name="tooltip-text"
47326                 version="2.16"
47327                 writable="1"
47328                 transfer-ownership="none">
47329         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string.
47330 Also see gtk_tooltip_set_text().
47331 This is a convenience property which will take care of getting the
47332 tooltip shown if the given string is not %NULL.
47333 #GtkStatusIcon:has-tooltip will automatically be set to %TRUE and
47334 the default handler for the #GtkStatusIcon::query-tooltip signal
47335 will take care of displaying the tooltip.
47336 Note that some platforms have limitations on the length of tooltips
47337 that they allow on status icons, e.g. Windows only shows the first
47338 64 characters.</doc>
47339         <type name="utf8"/>
47340       </property>
47341       <property name="visible" writable="1" transfer-ownership="none">
47342         <type name="gboolean"/>
47343       </property>
47344       <field name="parent_instance">
47345         <type name="GObject.Object" c:type="GObject"/>
47346       </field>
47347       <field name="priv">
47348         <type name="StatusIconPrivate" c:type="GtkStatusIconPrivate*"/>
47349       </field>
47350       <glib:signal name="activate" version="2.10">
47351         <doc xml:whitespace="preserve">Gets emitted when the user activates the status icon. 
47352 If and how status icons can activated is platform-dependent.
47353 Unlike most G_SIGNAL_ACTION signals, this signal is meant to 
47354 be used by applications and should be wrapped by language bindings.</doc>
47355         <return-value transfer-ownership="none">
47356           <type name="none"/>
47357         </return-value>
47358       </glib:signal>
47359       <glib:signal name="button-press-event" version="2.14">
47360         <doc xml:whitespace="preserve">The ::button-press-event signal will be emitted when a button
47361 (typically from a mouse) is pressed.
47362 Whether this event is emitted is platform-dependent.  Use the ::activate
47363 and ::popup-menu signals in preference.
47364 for the event. %FALSE to propagate the event further.</doc>
47365         <return-value transfer-ownership="none">
47366           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked</doc>
47367           <type name="gboolean"/>
47368         </return-value>
47369         <parameters>
47370           <parameter name="object" transfer-ownership="none">
47371             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
47372             <type name="Gdk.Event"/>
47373           </parameter>
47374         </parameters>
47375       </glib:signal>
47376       <glib:signal name="button-release-event" version="2.14">
47377         <doc xml:whitespace="preserve">The ::button-release-event signal will be emitted when a button
47378 (typically from a mouse) is released.
47379 Whether this event is emitted is platform-dependent.  Use the ::activate
47380 and ::popup-menu signals in preference.
47381 for the event. %FALSE to propagate the event further.</doc>
47382         <return-value transfer-ownership="none">
47383           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked</doc>
47384           <type name="gboolean"/>
47385         </return-value>
47386         <parameters>
47387           <parameter name="object" transfer-ownership="none">
47388             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
47389             <type name="Gdk.Event"/>
47390           </parameter>
47391         </parameters>
47392       </glib:signal>
47393       <glib:signal name="popup-menu" version="2.10">
47394         <doc xml:whitespace="preserve">Gets emitted when the user brings up the context menu
47395 of the status icon. Whether status icons can have context 
47396 menus and how these are activated is platform-dependent.
47397 The @button and @activate_time parameters should be 
47398 passed as the last to arguments to gtk_menu_popup().
47399 Unlike most G_SIGNAL_ACTION signals, this signal is meant to 
47400 be used by applications and should be wrapped by language bindings.</doc>
47401         <return-value transfer-ownership="none">
47402           <type name="none"/>
47403         </return-value>
47404         <parameters>
47405           <parameter name="object" transfer-ownership="none">
47406             <doc xml:whitespace="preserve">the button that was pressed, or 0 if the signal is not emitted in response to a button press event</doc>
47407             <type name="guint"/>
47408           </parameter>
47409           <parameter name="p0" transfer-ownership="none">
47410             <doc xml:whitespace="preserve">the timestamp of the event that triggered the signal emission</doc>
47411             <type name="guint"/>
47412           </parameter>
47413         </parameters>
47414       </glib:signal>
47415       <glib:signal name="query-tooltip" version="2.16">
47416         <doc xml:whitespace="preserve">Emitted when the #GtkSettings:gtk-tooltip-timeout has expired with the
47417 cursor hovering above @status_icon; or emitted when @status_icon got
47418 focus in keyboard mode.
47419 Using the given coordinates, the signal handler should determine
47420 whether a tooltip should be shown for @status_icon. If this is
47421 the case %TRUE should be returned, %FALSE otherwise. Note that if
47422 should not be used.
47423 The signal handler is free to manipulate @tooltip with the therefore
47424 destined function calls.
47425 Whether this signal is emitted is platform-dependent.
47426 For plain text tooltips, use #GtkStatusIcon:tooltip-text in preference.</doc>
47427         <return-value transfer-ownership="none">
47428           <doc xml:whitespace="preserve">%TRUE if @tooltip should be shown right now, %FALSE otherwise.</doc>
47429           <type name="gboolean"/>
47430         </return-value>
47431         <parameters>
47432           <parameter name="object" transfer-ownership="none">
47433             <doc xml:whitespace="preserve">the x coordinate of the cursor position where the request has been emitted, relative to @status_icon</doc>
47434             <type name="gint"/>
47435           </parameter>
47436           <parameter name="p0" transfer-ownership="none">
47437             <doc xml:whitespace="preserve">the y coordinate of the cursor position where the request has been emitted, relative to @status_icon</doc>
47438             <type name="gint"/>
47439           </parameter>
47440           <parameter name="p1" transfer-ownership="none">
47441             <doc xml:whitespace="preserve">%TRUE if the tooltip was trigged using the keyboard</doc>
47442             <type name="gboolean"/>
47443           </parameter>
47444           <parameter name="p2" transfer-ownership="none">
47445             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
47446             <type name="Tooltip"/>
47447           </parameter>
47448         </parameters>
47449       </glib:signal>
47450       <glib:signal name="scroll-event" version="2.16">
47451         <doc xml:whitespace="preserve">The ::scroll-event signal is emitted when a button in the 4 to 7
47452 range is pressed. Wheel mice are usually configured to generate
47453 button press events for buttons 4 and 5 when the wheel is turned.
47454 Whether this event is emitted is platform-dependent.
47455 %FALSE to propagate the event further.</doc>
47456         <return-value transfer-ownership="none">
47457           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
47458           <type name="gboolean"/>
47459         </return-value>
47460         <parameters>
47461           <parameter name="object" transfer-ownership="none">
47462             <doc xml:whitespace="preserve">the #GdkEventScroll which triggered this signal</doc>
47463             <type name="Gdk.Event"/>
47464           </parameter>
47465         </parameters>
47466       </glib:signal>
47467       <glib:signal name="size-changed" version="2.10">
47468         <doc xml:whitespace="preserve">Gets emitted when the size available for the image
47469 changes, e.g. because the notification area got resized.
47470 size. Otherwise, GTK+ will scale the icon as necessary.</doc>
47471         <return-value transfer-ownership="none">
47472           <doc xml:whitespace="preserve">%TRUE if the icon was updated for the new</doc>
47473           <type name="gboolean"/>
47474         </return-value>
47475         <parameters>
47476           <parameter name="object" transfer-ownership="none">
47477             <doc xml:whitespace="preserve">the new size</doc>
47478             <type name="gint"/>
47479           </parameter>
47480         </parameters>
47481       </glib:signal>
47482     </class>
47483     <record name="StatusIconClass"
47484             c:type="GtkStatusIconClass"
47485             glib:is-gtype-struct-for="StatusIcon">
47486       <field name="parent_class">
47487         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
47488       </field>
47489       <field name="activate">
47490         <callback name="activate">
47491           <return-value transfer-ownership="none">
47492             <type name="none" c:type="void"/>
47493           </return-value>
47494           <parameters>
47495             <parameter name="status_icon" transfer-ownership="none">
47496               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47497             </parameter>
47498           </parameters>
47499         </callback>
47500       </field>
47501       <field name="popup_menu">
47502         <callback name="popup_menu">
47503           <return-value transfer-ownership="none">
47504             <type name="none" c:type="void"/>
47505           </return-value>
47506           <parameters>
47507             <parameter name="status_icon" transfer-ownership="none">
47508               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47509             </parameter>
47510             <parameter name="button" transfer-ownership="none">
47511               <type name="guint" c:type="guint"/>
47512             </parameter>
47513             <parameter name="activate_time" transfer-ownership="none">
47514               <type name="guint32" c:type="guint32"/>
47515             </parameter>
47516           </parameters>
47517         </callback>
47518       </field>
47519       <field name="size_changed">
47520         <callback name="size_changed">
47521           <return-value transfer-ownership="none">
47522             <type name="gboolean" c:type="gboolean"/>
47523           </return-value>
47524           <parameters>
47525             <parameter name="status_icon" transfer-ownership="none">
47526               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47527             </parameter>
47528             <parameter name="size" transfer-ownership="none">
47529               <type name="gint" c:type="gint"/>
47530             </parameter>
47531           </parameters>
47532         </callback>
47533       </field>
47534       <field name="button_press_event">
47535         <callback name="button_press_event">
47536           <return-value transfer-ownership="none">
47537             <type name="gboolean" c:type="gboolean"/>
47538           </return-value>
47539           <parameters>
47540             <parameter name="status_icon" transfer-ownership="none">
47541               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47542             </parameter>
47543             <parameter name="event" transfer-ownership="none">
47544               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
47545             </parameter>
47546           </parameters>
47547         </callback>
47548       </field>
47549       <field name="button_release_event">
47550         <callback name="button_release_event">
47551           <return-value transfer-ownership="none">
47552             <type name="gboolean" c:type="gboolean"/>
47553           </return-value>
47554           <parameters>
47555             <parameter name="status_icon" transfer-ownership="none">
47556               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47557             </parameter>
47558             <parameter name="event" transfer-ownership="none">
47559               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
47560             </parameter>
47561           </parameters>
47562         </callback>
47563       </field>
47564       <field name="scroll_event">
47565         <callback name="scroll_event">
47566           <return-value transfer-ownership="none">
47567             <type name="gboolean" c:type="gboolean"/>
47568           </return-value>
47569           <parameters>
47570             <parameter name="status_icon" transfer-ownership="none">
47571               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47572             </parameter>
47573             <parameter name="event" transfer-ownership="none">
47574               <type name="Gdk.EventScroll" c:type="GdkEventScroll*"/>
47575             </parameter>
47576           </parameters>
47577         </callback>
47578       </field>
47579       <field name="query_tooltip">
47580         <callback name="query_tooltip">
47581           <return-value transfer-ownership="none">
47582             <type name="gboolean" c:type="gboolean"/>
47583           </return-value>
47584           <parameters>
47585             <parameter name="status_icon" transfer-ownership="none">
47586               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
47587             </parameter>
47588             <parameter name="x" transfer-ownership="none">
47589               <type name="gint" c:type="gint"/>
47590             </parameter>
47591             <parameter name="y" transfer-ownership="none">
47592               <type name="gint" c:type="gint"/>
47593             </parameter>
47594             <parameter name="keyboard_mode" transfer-ownership="none">
47595               <type name="gboolean" c:type="gboolean"/>
47596             </parameter>
47597             <parameter name="tooltip" transfer-ownership="none">
47598               <type name="Tooltip" c:type="GtkTooltip*"/>
47599             </parameter>
47600           </parameters>
47601         </callback>
47602       </field>
47603       <field name="__gtk_reserved1">
47604         <type name="gpointer" c:type="void*"/>
47605       </field>
47606       <field name="__gtk_reserved2">
47607         <type name="gpointer" c:type="void*"/>
47608       </field>
47609     </record>
47610     <record name="StatusIconPrivate"
47611             c:type="GtkStatusIconPrivate"
47612             disguised="1">
47613     </record>
47614     <class name="Statusbar"
47615            c:symbol-prefix="statusbar"
47616            c:type="GtkStatusbar"
47617            parent="HBox"
47618            glib:type-name="GtkStatusbar"
47619            glib:get-type="gtk_statusbar_get_type"
47620            glib:type-struct="StatusbarClass">
47621       <implements name="Atk.ImplementorIface"/>
47622       <implements name="Buildable"/>
47623       <implements name="Orientable"/>
47624       <implements name="SizeRequest"/>
47625       <constructor name="new" c:identifier="gtk_statusbar_new">
47626         <doc xml:whitespace="preserve">Creates a new #GtkStatusbar ready for messages.</doc>
47627         <return-value transfer-ownership="none">
47628           <doc xml:whitespace="preserve">the new #GtkStatusbar</doc>
47629           <type name="Widget" c:type="GtkWidget*"/>
47630         </return-value>
47631       </constructor>
47632       <method name="get_context_id"
47633               c:identifier="gtk_statusbar_get_context_id">
47634         <doc xml:whitespace="preserve">Returns a new context identifier, given a description 
47635 of the actual context. Note that the description is 
47636 &lt;emphasis&gt;not&lt;/emphasis&gt; shown in the UI.</doc>
47637         <return-value transfer-ownership="none">
47638           <doc xml:whitespace="preserve">an integer id</doc>
47639           <type name="guint" c:type="guint"/>
47640         </return-value>
47641         <parameters>
47642           <parameter name="context_description" transfer-ownership="none">
47643             <doc xml:whitespace="preserve">textual description of what context the new message is being used in</doc>
47644             <type name="utf8" c:type="gchar*"/>
47645           </parameter>
47646         </parameters>
47647       </method>
47648       <method name="get_has_resize_grip"
47649               c:identifier="gtk_statusbar_get_has_resize_grip">
47650         <doc xml:whitespace="preserve">Returns whether the statusbar has a resize grip.</doc>
47651         <return-value transfer-ownership="none">
47652           <doc xml:whitespace="preserve">%TRUE if the statusbar has a resize grip.</doc>
47653           <type name="gboolean" c:type="gboolean"/>
47654         </return-value>
47655       </method>
47656       <method name="get_message_area"
47657               c:identifier="gtk_statusbar_get_message_area"
47658               version="2.20">
47659         <doc xml:whitespace="preserve">Retrieves the box containing the label widget.</doc>
47660         <return-value transfer-ownership="none">
47661           <doc xml:whitespace="preserve">a #GtkBox</doc>
47662           <type name="Widget" c:type="GtkWidget*"/>
47663         </return-value>
47664       </method>
47665       <method name="pop" c:identifier="gtk_statusbar_pop">
47666         <doc xml:whitespace="preserve">Removes the first message in the #GtkStatusBar's stack
47667 with the given context id. 
47668 Note that this may not change the displayed message, if 
47669 the message at the top of the stack has a different 
47670 context id.</doc>
47671         <return-value transfer-ownership="none">
47672           <type name="none" c:type="void"/>
47673         </return-value>
47674         <parameters>
47675           <parameter name="context_id" transfer-ownership="none">
47676             <doc xml:whitespace="preserve">a context identifier</doc>
47677             <type name="guint" c:type="guint"/>
47678           </parameter>
47679         </parameters>
47680       </method>
47681       <method name="push" c:identifier="gtk_statusbar_push">
47682         <doc xml:whitespace="preserve">Pushes a new message onto a statusbar's stack.
47683 gtk_statusbar_remove().</doc>
47684         <return-value transfer-ownership="none">
47685           <doc xml:whitespace="preserve">a message id that can be used with</doc>
47686           <type name="guint" c:type="guint"/>
47687         </return-value>
47688         <parameters>
47689           <parameter name="context_id" transfer-ownership="none">
47690             <doc xml:whitespace="preserve">the message's context id, as returned by gtk_statusbar_get_context_id()</doc>
47691             <type name="guint" c:type="guint"/>
47692           </parameter>
47693           <parameter name="text" transfer-ownership="none">
47694             <doc xml:whitespace="preserve">the message to add to the statusbar</doc>
47695             <type name="utf8" c:type="gchar*"/>
47696           </parameter>
47697         </parameters>
47698       </method>
47699       <method name="remove" c:identifier="gtk_statusbar_remove">
47700         <doc xml:whitespace="preserve">Forces the removal of a message from a statusbar's stack. 
47701 The exact @context_id and @message_id must be specified.</doc>
47702         <return-value transfer-ownership="none">
47703           <type name="none" c:type="void"/>
47704         </return-value>
47705         <parameters>
47706           <parameter name="context_id" transfer-ownership="none">
47707             <doc xml:whitespace="preserve">a context identifier</doc>
47708             <type name="guint" c:type="guint"/>
47709           </parameter>
47710           <parameter name="message_id" transfer-ownership="none">
47711             <doc xml:whitespace="preserve">a message identifier, as returned by gtk_statusbar_push()</doc>
47712             <type name="guint" c:type="guint"/>
47713           </parameter>
47714         </parameters>
47715       </method>
47716       <method name="remove_all"
47717               c:identifier="gtk_statusbar_remove_all"
47718               version="2.22">
47719         <doc xml:whitespace="preserve">Forces the removal of all messages from a statusbar's
47720 stack with the exact @context_id.</doc>
47721         <return-value transfer-ownership="none">
47722           <type name="none" c:type="void"/>
47723         </return-value>
47724         <parameters>
47725           <parameter name="context_id" transfer-ownership="none">
47726             <doc xml:whitespace="preserve">a context identifier</doc>
47727             <type name="guint" c:type="guint"/>
47728           </parameter>
47729         </parameters>
47730       </method>
47731       <method name="set_has_resize_grip"
47732               c:identifier="gtk_statusbar_set_has_resize_grip">
47733         <doc xml:whitespace="preserve">Sets whether the statusbar has a resize grip. 
47734 %TRUE by default.</doc>
47735         <return-value transfer-ownership="none">
47736           <type name="none" c:type="void"/>
47737         </return-value>
47738         <parameters>
47739           <parameter name="setting" transfer-ownership="none">
47740             <doc xml:whitespace="preserve">%TRUE to have a resize grip</doc>
47741             <type name="gboolean" c:type="gboolean"/>
47742           </parameter>
47743         </parameters>
47744       </method>
47745       <property name="has-resize-grip"
47746                 version="2.4"
47747                 writable="1"
47748                 transfer-ownership="none">
47749         <doc xml:whitespace="preserve">Whether the statusbar has a grip for resizing the toplevel window.</doc>
47750         <type name="gboolean"/>
47751       </property>
47752       <field name="parent_widget">
47753         <type name="HBox" c:type="GtkHBox"/>
47754       </field>
47755       <field name="priv" readable="0" private="1">
47756         <type name="StatusbarPrivate" c:type="GtkStatusbarPrivate*"/>
47757       </field>
47758       <glib:signal name="text-popped">
47759         <doc xml:whitespace="preserve">Is emitted whenever a new message is popped off a statusbar's stack.</doc>
47760         <return-value transfer-ownership="none">
47761           <type name="none"/>
47762         </return-value>
47763         <parameters>
47764           <parameter name="object" transfer-ownership="none">
47765             <doc xml:whitespace="preserve">the context id of the relevant message/statusbar.</doc>
47766             <type name="guint"/>
47767           </parameter>
47768           <parameter name="p0" transfer-ownership="none">
47769             <doc xml:whitespace="preserve">the message that was just popped.</doc>
47770             <type name="utf8"/>
47771           </parameter>
47772         </parameters>
47773       </glib:signal>
47774       <glib:signal name="text-pushed">
47775         <return-value transfer-ownership="none">
47776           <type name="none"/>
47777         </return-value>
47778         <parameters>
47779           <parameter name="object" transfer-ownership="none">
47780             <type name="guint"/>
47781           </parameter>
47782           <parameter name="p0" transfer-ownership="none">
47783             <type name="utf8"/>
47784           </parameter>
47785         </parameters>
47786       </glib:signal>
47787     </class>
47788     <record name="StatusbarClass"
47789             c:type="GtkStatusbarClass"
47790             glib:is-gtype-struct-for="Statusbar">
47791       <field name="parent_class">
47792         <type name="HBoxClass" c:type="GtkHBoxClass"/>
47793       </field>
47794       <field name="reserved">
47795         <type name="gpointer" c:type="gpointer"/>
47796       </field>
47797       <field name="text_pushed">
47798         <callback name="text_pushed">
47799           <return-value transfer-ownership="none">
47800             <type name="none" c:type="void"/>
47801           </return-value>
47802           <parameters>
47803             <parameter name="statusbar" transfer-ownership="none">
47804               <type name="Statusbar" c:type="GtkStatusbar*"/>
47805             </parameter>
47806             <parameter name="context_id" transfer-ownership="none">
47807               <type name="guint" c:type="guint"/>
47808             </parameter>
47809             <parameter name="text" transfer-ownership="none">
47810               <type name="utf8" c:type="gchar*"/>
47811             </parameter>
47812           </parameters>
47813         </callback>
47814       </field>
47815       <field name="text_popped">
47816         <callback name="text_popped">
47817           <return-value transfer-ownership="none">
47818             <type name="none" c:type="void"/>
47819           </return-value>
47820           <parameters>
47821             <parameter name="statusbar" transfer-ownership="none">
47822               <type name="Statusbar" c:type="GtkStatusbar*"/>
47823             </parameter>
47824             <parameter name="context_id" transfer-ownership="none">
47825               <type name="guint" c:type="guint"/>
47826             </parameter>
47827             <parameter name="text" transfer-ownership="none">
47828               <type name="utf8" c:type="gchar*"/>
47829             </parameter>
47830           </parameters>
47831         </callback>
47832       </field>
47833       <field name="_gtk_reserved1" introspectable="0">
47834         <callback name="_gtk_reserved1">
47835           <return-value transfer-ownership="none">
47836             <type name="none" c:type="void"/>
47837           </return-value>
47838         </callback>
47839       </field>
47840       <field name="_gtk_reserved2" introspectable="0">
47841         <callback name="_gtk_reserved2">
47842           <return-value transfer-ownership="none">
47843             <type name="none" c:type="void"/>
47844           </return-value>
47845         </callback>
47846       </field>
47847       <field name="_gtk_reserved3" introspectable="0">
47848         <callback name="_gtk_reserved3">
47849           <return-value transfer-ownership="none">
47850             <type name="none" c:type="void"/>
47851           </return-value>
47852         </callback>
47853       </field>
47854       <field name="_gtk_reserved4" introspectable="0">
47855         <callback name="_gtk_reserved4">
47856           <return-value transfer-ownership="none">
47857             <type name="none" c:type="void"/>
47858           </return-value>
47859         </callback>
47860       </field>
47861     </record>
47862     <record name="StatusbarPrivate" c:type="GtkStatusbarPrivate" disguised="1">
47863     </record>
47864     <record name="StockItem" c:type="GtkStockItem">
47865       <field name="stock_id" writable="1">
47866         <type name="utf8" c:type="gchar*"/>
47867       </field>
47868       <field name="label" writable="1">
47869         <type name="utf8" c:type="gchar*"/>
47870       </field>
47871       <field name="modifier" writable="1">
47872         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
47873       </field>
47874       <field name="keyval" writable="1">
47875         <type name="guint" c:type="guint"/>
47876       </field>
47877       <field name="translation_domain" writable="1">
47878         <type name="utf8" c:type="gchar*"/>
47879       </field>
47880       <method name="copy"
47881               c:identifier="gtk_stock_item_copy"
47882               introspectable="0">
47883         <doc xml:whitespace="preserve">Copies a stock item, mostly useful for language bindings and not in applications.</doc>
47884         <return-value>
47885           <doc xml:whitespace="preserve">a new #GtkStockItem</doc>
47886           <type name="StockItem" c:type="GtkStockItem*"/>
47887         </return-value>
47888       </method>
47889       <method name="free" c:identifier="gtk_stock_item_free">
47890         <doc xml:whitespace="preserve">Frees a stock item allocated on the heap, such as one returned by
47891 gtk_stock_item_copy(). Also frees the fields inside the stock item,
47892 if they are not %NULL.</doc>
47893         <return-value transfer-ownership="none">
47894           <type name="none" c:type="void"/>
47895         </return-value>
47896       </method>
47897     </record>
47898     <class name="Style"
47899            c:symbol-prefix="style"
47900            c:type="GtkStyle"
47901            parent="GObject.Object"
47902            glib:type-name="GtkStyle"
47903            glib:get-type="gtk_style_get_type"
47904            glib:type-struct="StyleClass">
47905       <constructor name="new" c:identifier="gtk_style_new">
47906         <doc xml:whitespace="preserve">Creates a new #GtkStyle.</doc>
47907         <return-value transfer-ownership="full">
47908           <doc xml:whitespace="preserve">a new #GtkStyle.</doc>
47909           <type name="Style" c:type="GtkStyle*"/>
47910         </return-value>
47911       </constructor>
47912       <virtual-method name="clone" introspectable="0">
47913         <return-value>
47914           <type name="Style" c:type="GtkStyle*"/>
47915         </return-value>
47916       </virtual-method>
47917       <virtual-method name="copy">
47918         <return-value transfer-ownership="none">
47919           <type name="none" c:type="void"/>
47920         </return-value>
47921         <parameters>
47922           <parameter name="src" transfer-ownership="none">
47923             <type name="Style" c:type="GtkStyle*"/>
47924           </parameter>
47925         </parameters>
47926       </virtual-method>
47927       <virtual-method name="draw_arrow">
47928         <return-value transfer-ownership="none">
47929           <type name="none" c:type="void"/>
47930         </return-value>
47931         <parameters>
47932           <parameter name="window" transfer-ownership="none">
47933             <type name="Gdk.Window" c:type="GdkWindow*"/>
47934           </parameter>
47935           <parameter name="state_type" transfer-ownership="none">
47936             <type name="StateType" c:type="GtkStateType"/>
47937           </parameter>
47938           <parameter name="shadow_type" transfer-ownership="none">
47939             <type name="ShadowType" c:type="GtkShadowType"/>
47940           </parameter>
47941           <parameter name="area" transfer-ownership="none">
47942             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
47943           </parameter>
47944           <parameter name="widget" transfer-ownership="none">
47945             <type name="Widget" c:type="GtkWidget*"/>
47946           </parameter>
47947           <parameter name="detail" transfer-ownership="none">
47948             <type name="utf8" c:type="gchar*"/>
47949           </parameter>
47950           <parameter name="arrow_type" transfer-ownership="none">
47951             <type name="ArrowType" c:type="GtkArrowType"/>
47952           </parameter>
47953           <parameter name="fill" transfer-ownership="none">
47954             <type name="gboolean" c:type="gboolean"/>
47955           </parameter>
47956           <parameter name="x" transfer-ownership="none">
47957             <type name="gint" c:type="gint"/>
47958           </parameter>
47959           <parameter name="y" transfer-ownership="none">
47960             <type name="gint" c:type="gint"/>
47961           </parameter>
47962           <parameter name="width" transfer-ownership="none">
47963             <type name="gint" c:type="gint"/>
47964           </parameter>
47965           <parameter name="height" transfer-ownership="none">
47966             <type name="gint" c:type="gint"/>
47967           </parameter>
47968         </parameters>
47969       </virtual-method>
47970       <virtual-method name="draw_box">
47971         <return-value transfer-ownership="none">
47972           <type name="none" c:type="void"/>
47973         </return-value>
47974         <parameters>
47975           <parameter name="window" transfer-ownership="none">
47976             <type name="Gdk.Window" c:type="GdkWindow*"/>
47977           </parameter>
47978           <parameter name="state_type" transfer-ownership="none">
47979             <type name="StateType" c:type="GtkStateType"/>
47980           </parameter>
47981           <parameter name="shadow_type" transfer-ownership="none">
47982             <type name="ShadowType" c:type="GtkShadowType"/>
47983           </parameter>
47984           <parameter name="area" transfer-ownership="none">
47985             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
47986           </parameter>
47987           <parameter name="widget" transfer-ownership="none">
47988             <type name="Widget" c:type="GtkWidget*"/>
47989           </parameter>
47990           <parameter name="detail" transfer-ownership="none">
47991             <type name="utf8" c:type="gchar*"/>
47992           </parameter>
47993           <parameter name="x" transfer-ownership="none">
47994             <type name="gint" c:type="gint"/>
47995           </parameter>
47996           <parameter name="y" transfer-ownership="none">
47997             <type name="gint" c:type="gint"/>
47998           </parameter>
47999           <parameter name="width" transfer-ownership="none">
48000             <type name="gint" c:type="gint"/>
48001           </parameter>
48002           <parameter name="height" transfer-ownership="none">
48003             <type name="gint" c:type="gint"/>
48004           </parameter>
48005         </parameters>
48006       </virtual-method>
48007       <virtual-method name="draw_box_gap">
48008         <return-value transfer-ownership="none">
48009           <type name="none" c:type="void"/>
48010         </return-value>
48011         <parameters>
48012           <parameter name="window" transfer-ownership="none">
48013             <type name="Gdk.Window" c:type="GdkWindow*"/>
48014           </parameter>
48015           <parameter name="state_type" transfer-ownership="none">
48016             <type name="StateType" c:type="GtkStateType"/>
48017           </parameter>
48018           <parameter name="shadow_type" transfer-ownership="none">
48019             <type name="ShadowType" c:type="GtkShadowType"/>
48020           </parameter>
48021           <parameter name="area" transfer-ownership="none">
48022             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48023           </parameter>
48024           <parameter name="widget" transfer-ownership="none">
48025             <type name="Widget" c:type="GtkWidget*"/>
48026           </parameter>
48027           <parameter name="detail" transfer-ownership="none">
48028             <type name="utf8" c:type="gchar*"/>
48029           </parameter>
48030           <parameter name="x" transfer-ownership="none">
48031             <type name="gint" c:type="gint"/>
48032           </parameter>
48033           <parameter name="y" transfer-ownership="none">
48034             <type name="gint" c:type="gint"/>
48035           </parameter>
48036           <parameter name="width" transfer-ownership="none">
48037             <type name="gint" c:type="gint"/>
48038           </parameter>
48039           <parameter name="height" transfer-ownership="none">
48040             <type name="gint" c:type="gint"/>
48041           </parameter>
48042           <parameter name="gap_side" transfer-ownership="none">
48043             <type name="PositionType" c:type="GtkPositionType"/>
48044           </parameter>
48045           <parameter name="gap_x" transfer-ownership="none">
48046             <type name="gint" c:type="gint"/>
48047           </parameter>
48048           <parameter name="gap_width" transfer-ownership="none">
48049             <type name="gint" c:type="gint"/>
48050           </parameter>
48051         </parameters>
48052       </virtual-method>
48053       <virtual-method name="draw_check">
48054         <return-value transfer-ownership="none">
48055           <type name="none" c:type="void"/>
48056         </return-value>
48057         <parameters>
48058           <parameter name="window" transfer-ownership="none">
48059             <type name="Gdk.Window" c:type="GdkWindow*"/>
48060           </parameter>
48061           <parameter name="state_type" transfer-ownership="none">
48062             <type name="StateType" c:type="GtkStateType"/>
48063           </parameter>
48064           <parameter name="shadow_type" transfer-ownership="none">
48065             <type name="ShadowType" c:type="GtkShadowType"/>
48066           </parameter>
48067           <parameter name="area" transfer-ownership="none">
48068             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48069           </parameter>
48070           <parameter name="widget" transfer-ownership="none">
48071             <type name="Widget" c:type="GtkWidget*"/>
48072           </parameter>
48073           <parameter name="detail" transfer-ownership="none">
48074             <type name="utf8" c:type="gchar*"/>
48075           </parameter>
48076           <parameter name="x" transfer-ownership="none">
48077             <type name="gint" c:type="gint"/>
48078           </parameter>
48079           <parameter name="y" transfer-ownership="none">
48080             <type name="gint" c:type="gint"/>
48081           </parameter>
48082           <parameter name="width" transfer-ownership="none">
48083             <type name="gint" c:type="gint"/>
48084           </parameter>
48085           <parameter name="height" transfer-ownership="none">
48086             <type name="gint" c:type="gint"/>
48087           </parameter>
48088         </parameters>
48089       </virtual-method>
48090       <virtual-method name="draw_diamond">
48091         <return-value transfer-ownership="none">
48092           <type name="none" c:type="void"/>
48093         </return-value>
48094         <parameters>
48095           <parameter name="window" transfer-ownership="none">
48096             <type name="Gdk.Window" c:type="GdkWindow*"/>
48097           </parameter>
48098           <parameter name="state_type" transfer-ownership="none">
48099             <type name="StateType" c:type="GtkStateType"/>
48100           </parameter>
48101           <parameter name="shadow_type" transfer-ownership="none">
48102             <type name="ShadowType" c:type="GtkShadowType"/>
48103           </parameter>
48104           <parameter name="area" transfer-ownership="none">
48105             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48106           </parameter>
48107           <parameter name="widget" transfer-ownership="none">
48108             <type name="Widget" c:type="GtkWidget*"/>
48109           </parameter>
48110           <parameter name="detail" transfer-ownership="none">
48111             <type name="utf8" c:type="gchar*"/>
48112           </parameter>
48113           <parameter name="x" transfer-ownership="none">
48114             <type name="gint" c:type="gint"/>
48115           </parameter>
48116           <parameter name="y" transfer-ownership="none">
48117             <type name="gint" c:type="gint"/>
48118           </parameter>
48119           <parameter name="width" transfer-ownership="none">
48120             <type name="gint" c:type="gint"/>
48121           </parameter>
48122           <parameter name="height" transfer-ownership="none">
48123             <type name="gint" c:type="gint"/>
48124           </parameter>
48125         </parameters>
48126       </virtual-method>
48127       <virtual-method name="draw_expander">
48128         <return-value transfer-ownership="none">
48129           <type name="none" c:type="void"/>
48130         </return-value>
48131         <parameters>
48132           <parameter name="window" transfer-ownership="none">
48133             <type name="Gdk.Window" c:type="GdkWindow*"/>
48134           </parameter>
48135           <parameter name="state_type" transfer-ownership="none">
48136             <type name="StateType" c:type="GtkStateType"/>
48137           </parameter>
48138           <parameter name="area" transfer-ownership="none">
48139             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48140           </parameter>
48141           <parameter name="widget" transfer-ownership="none">
48142             <type name="Widget" c:type="GtkWidget*"/>
48143           </parameter>
48144           <parameter name="detail" transfer-ownership="none">
48145             <type name="utf8" c:type="gchar*"/>
48146           </parameter>
48147           <parameter name="x" transfer-ownership="none">
48148             <type name="gint" c:type="gint"/>
48149           </parameter>
48150           <parameter name="y" transfer-ownership="none">
48151             <type name="gint" c:type="gint"/>
48152           </parameter>
48153           <parameter name="expander_style" transfer-ownership="none">
48154             <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
48155           </parameter>
48156         </parameters>
48157       </virtual-method>
48158       <virtual-method name="draw_extension">
48159         <return-value transfer-ownership="none">
48160           <type name="none" c:type="void"/>
48161         </return-value>
48162         <parameters>
48163           <parameter name="window" transfer-ownership="none">
48164             <type name="Gdk.Window" c:type="GdkWindow*"/>
48165           </parameter>
48166           <parameter name="state_type" transfer-ownership="none">
48167             <type name="StateType" c:type="GtkStateType"/>
48168           </parameter>
48169           <parameter name="shadow_type" transfer-ownership="none">
48170             <type name="ShadowType" c:type="GtkShadowType"/>
48171           </parameter>
48172           <parameter name="area" transfer-ownership="none">
48173             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48174           </parameter>
48175           <parameter name="widget" transfer-ownership="none">
48176             <type name="Widget" c:type="GtkWidget*"/>
48177           </parameter>
48178           <parameter name="detail" transfer-ownership="none">
48179             <type name="utf8" c:type="gchar*"/>
48180           </parameter>
48181           <parameter name="x" transfer-ownership="none">
48182             <type name="gint" c:type="gint"/>
48183           </parameter>
48184           <parameter name="y" transfer-ownership="none">
48185             <type name="gint" c:type="gint"/>
48186           </parameter>
48187           <parameter name="width" transfer-ownership="none">
48188             <type name="gint" c:type="gint"/>
48189           </parameter>
48190           <parameter name="height" transfer-ownership="none">
48191             <type name="gint" c:type="gint"/>
48192           </parameter>
48193           <parameter name="gap_side" transfer-ownership="none">
48194             <type name="PositionType" c:type="GtkPositionType"/>
48195           </parameter>
48196         </parameters>
48197       </virtual-method>
48198       <virtual-method name="draw_flat_box">
48199         <return-value transfer-ownership="none">
48200           <type name="none" c:type="void"/>
48201         </return-value>
48202         <parameters>
48203           <parameter name="window" transfer-ownership="none">
48204             <type name="Gdk.Window" c:type="GdkWindow*"/>
48205           </parameter>
48206           <parameter name="state_type" transfer-ownership="none">
48207             <type name="StateType" c:type="GtkStateType"/>
48208           </parameter>
48209           <parameter name="shadow_type" transfer-ownership="none">
48210             <type name="ShadowType" c:type="GtkShadowType"/>
48211           </parameter>
48212           <parameter name="area" transfer-ownership="none">
48213             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48214           </parameter>
48215           <parameter name="widget" transfer-ownership="none">
48216             <type name="Widget" c:type="GtkWidget*"/>
48217           </parameter>
48218           <parameter name="detail" transfer-ownership="none">
48219             <type name="utf8" c:type="gchar*"/>
48220           </parameter>
48221           <parameter name="x" transfer-ownership="none">
48222             <type name="gint" c:type="gint"/>
48223           </parameter>
48224           <parameter name="y" transfer-ownership="none">
48225             <type name="gint" c:type="gint"/>
48226           </parameter>
48227           <parameter name="width" transfer-ownership="none">
48228             <type name="gint" c:type="gint"/>
48229           </parameter>
48230           <parameter name="height" transfer-ownership="none">
48231             <type name="gint" c:type="gint"/>
48232           </parameter>
48233         </parameters>
48234       </virtual-method>
48235       <virtual-method name="draw_focus">
48236         <return-value transfer-ownership="none">
48237           <type name="none" c:type="void"/>
48238         </return-value>
48239         <parameters>
48240           <parameter name="window" transfer-ownership="none">
48241             <type name="Gdk.Window" c:type="GdkWindow*"/>
48242           </parameter>
48243           <parameter name="state_type" transfer-ownership="none">
48244             <type name="StateType" c:type="GtkStateType"/>
48245           </parameter>
48246           <parameter name="area" transfer-ownership="none">
48247             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48248           </parameter>
48249           <parameter name="widget" transfer-ownership="none">
48250             <type name="Widget" c:type="GtkWidget*"/>
48251           </parameter>
48252           <parameter name="detail" transfer-ownership="none">
48253             <type name="utf8" c:type="gchar*"/>
48254           </parameter>
48255           <parameter name="x" transfer-ownership="none">
48256             <type name="gint" c:type="gint"/>
48257           </parameter>
48258           <parameter name="y" transfer-ownership="none">
48259             <type name="gint" c:type="gint"/>
48260           </parameter>
48261           <parameter name="width" transfer-ownership="none">
48262             <type name="gint" c:type="gint"/>
48263           </parameter>
48264           <parameter name="height" transfer-ownership="none">
48265             <type name="gint" c:type="gint"/>
48266           </parameter>
48267         </parameters>
48268       </virtual-method>
48269       <virtual-method name="draw_handle">
48270         <return-value transfer-ownership="none">
48271           <type name="none" c:type="void"/>
48272         </return-value>
48273         <parameters>
48274           <parameter name="window" transfer-ownership="none">
48275             <type name="Gdk.Window" c:type="GdkWindow*"/>
48276           </parameter>
48277           <parameter name="state_type" transfer-ownership="none">
48278             <type name="StateType" c:type="GtkStateType"/>
48279           </parameter>
48280           <parameter name="shadow_type" transfer-ownership="none">
48281             <type name="ShadowType" c:type="GtkShadowType"/>
48282           </parameter>
48283           <parameter name="area" transfer-ownership="none">
48284             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48285           </parameter>
48286           <parameter name="widget" transfer-ownership="none">
48287             <type name="Widget" c:type="GtkWidget*"/>
48288           </parameter>
48289           <parameter name="detail" transfer-ownership="none">
48290             <type name="utf8" c:type="gchar*"/>
48291           </parameter>
48292           <parameter name="x" transfer-ownership="none">
48293             <type name="gint" c:type="gint"/>
48294           </parameter>
48295           <parameter name="y" transfer-ownership="none">
48296             <type name="gint" c:type="gint"/>
48297           </parameter>
48298           <parameter name="width" transfer-ownership="none">
48299             <type name="gint" c:type="gint"/>
48300           </parameter>
48301           <parameter name="height" transfer-ownership="none">
48302             <type name="gint" c:type="gint"/>
48303           </parameter>
48304           <parameter name="orientation" transfer-ownership="none">
48305             <type name="Orientation" c:type="GtkOrientation"/>
48306           </parameter>
48307         </parameters>
48308       </virtual-method>
48309       <virtual-method name="draw_hline">
48310         <return-value transfer-ownership="none">
48311           <type name="none" c:type="void"/>
48312         </return-value>
48313         <parameters>
48314           <parameter name="window" transfer-ownership="none">
48315             <type name="Gdk.Window" c:type="GdkWindow*"/>
48316           </parameter>
48317           <parameter name="state_type" transfer-ownership="none">
48318             <type name="StateType" c:type="GtkStateType"/>
48319           </parameter>
48320           <parameter name="area" transfer-ownership="none">
48321             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48322           </parameter>
48323           <parameter name="widget" transfer-ownership="none">
48324             <type name="Widget" c:type="GtkWidget*"/>
48325           </parameter>
48326           <parameter name="detail" transfer-ownership="none">
48327             <type name="utf8" c:type="gchar*"/>
48328           </parameter>
48329           <parameter name="x1" transfer-ownership="none">
48330             <type name="gint" c:type="gint"/>
48331           </parameter>
48332           <parameter name="x2" transfer-ownership="none">
48333             <type name="gint" c:type="gint"/>
48334           </parameter>
48335           <parameter name="y" transfer-ownership="none">
48336             <type name="gint" c:type="gint"/>
48337           </parameter>
48338         </parameters>
48339       </virtual-method>
48340       <virtual-method name="draw_layout">
48341         <return-value transfer-ownership="none">
48342           <type name="none" c:type="void"/>
48343         </return-value>
48344         <parameters>
48345           <parameter name="window" transfer-ownership="none">
48346             <type name="Gdk.Window" c:type="GdkWindow*"/>
48347           </parameter>
48348           <parameter name="state_type" transfer-ownership="none">
48349             <type name="StateType" c:type="GtkStateType"/>
48350           </parameter>
48351           <parameter name="use_text" transfer-ownership="none">
48352             <type name="gboolean" c:type="gboolean"/>
48353           </parameter>
48354           <parameter name="area" transfer-ownership="none">
48355             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48356           </parameter>
48357           <parameter name="widget" transfer-ownership="none">
48358             <type name="Widget" c:type="GtkWidget*"/>
48359           </parameter>
48360           <parameter name="detail" transfer-ownership="none">
48361             <type name="utf8" c:type="gchar*"/>
48362           </parameter>
48363           <parameter name="x" transfer-ownership="none">
48364             <type name="gint" c:type="gint"/>
48365           </parameter>
48366           <parameter name="y" transfer-ownership="none">
48367             <type name="gint" c:type="gint"/>
48368           </parameter>
48369           <parameter name="layout" transfer-ownership="none">
48370             <type name="Pango.Layout" c:type="PangoLayout*"/>
48371           </parameter>
48372         </parameters>
48373       </virtual-method>
48374       <virtual-method name="draw_option">
48375         <return-value transfer-ownership="none">
48376           <type name="none" c:type="void"/>
48377         </return-value>
48378         <parameters>
48379           <parameter name="window" transfer-ownership="none">
48380             <type name="Gdk.Window" c:type="GdkWindow*"/>
48381           </parameter>
48382           <parameter name="state_type" transfer-ownership="none">
48383             <type name="StateType" c:type="GtkStateType"/>
48384           </parameter>
48385           <parameter name="shadow_type" transfer-ownership="none">
48386             <type name="ShadowType" c:type="GtkShadowType"/>
48387           </parameter>
48388           <parameter name="area" transfer-ownership="none">
48389             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48390           </parameter>
48391           <parameter name="widget" transfer-ownership="none">
48392             <type name="Widget" c:type="GtkWidget*"/>
48393           </parameter>
48394           <parameter name="detail" transfer-ownership="none">
48395             <type name="utf8" c:type="gchar*"/>
48396           </parameter>
48397           <parameter name="x" transfer-ownership="none">
48398             <type name="gint" c:type="gint"/>
48399           </parameter>
48400           <parameter name="y" transfer-ownership="none">
48401             <type name="gint" c:type="gint"/>
48402           </parameter>
48403           <parameter name="width" transfer-ownership="none">
48404             <type name="gint" c:type="gint"/>
48405           </parameter>
48406           <parameter name="height" transfer-ownership="none">
48407             <type name="gint" c:type="gint"/>
48408           </parameter>
48409         </parameters>
48410       </virtual-method>
48411       <virtual-method name="draw_resize_grip">
48412         <return-value transfer-ownership="none">
48413           <type name="none" c:type="void"/>
48414         </return-value>
48415         <parameters>
48416           <parameter name="window" transfer-ownership="none">
48417             <type name="Gdk.Window" c:type="GdkWindow*"/>
48418           </parameter>
48419           <parameter name="state_type" transfer-ownership="none">
48420             <type name="StateType" c:type="GtkStateType"/>
48421           </parameter>
48422           <parameter name="area" transfer-ownership="none">
48423             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48424           </parameter>
48425           <parameter name="widget" transfer-ownership="none">
48426             <type name="Widget" c:type="GtkWidget*"/>
48427           </parameter>
48428           <parameter name="detail" transfer-ownership="none">
48429             <type name="utf8" c:type="gchar*"/>
48430           </parameter>
48431           <parameter name="edge" transfer-ownership="none">
48432             <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
48433           </parameter>
48434           <parameter name="x" transfer-ownership="none">
48435             <type name="gint" c:type="gint"/>
48436           </parameter>
48437           <parameter name="y" transfer-ownership="none">
48438             <type name="gint" c:type="gint"/>
48439           </parameter>
48440           <parameter name="width" transfer-ownership="none">
48441             <type name="gint" c:type="gint"/>
48442           </parameter>
48443           <parameter name="height" transfer-ownership="none">
48444             <type name="gint" c:type="gint"/>
48445           </parameter>
48446         </parameters>
48447       </virtual-method>
48448       <virtual-method name="draw_shadow">
48449         <return-value transfer-ownership="none">
48450           <type name="none" c:type="void"/>
48451         </return-value>
48452         <parameters>
48453           <parameter name="window" transfer-ownership="none">
48454             <type name="Gdk.Window" c:type="GdkWindow*"/>
48455           </parameter>
48456           <parameter name="state_type" transfer-ownership="none">
48457             <type name="StateType" c:type="GtkStateType"/>
48458           </parameter>
48459           <parameter name="shadow_type" transfer-ownership="none">
48460             <type name="ShadowType" c:type="GtkShadowType"/>
48461           </parameter>
48462           <parameter name="area" transfer-ownership="none">
48463             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48464           </parameter>
48465           <parameter name="widget" transfer-ownership="none">
48466             <type name="Widget" c:type="GtkWidget*"/>
48467           </parameter>
48468           <parameter name="detail" transfer-ownership="none">
48469             <type name="utf8" c:type="gchar*"/>
48470           </parameter>
48471           <parameter name="x" transfer-ownership="none">
48472             <type name="gint" c:type="gint"/>
48473           </parameter>
48474           <parameter name="y" transfer-ownership="none">
48475             <type name="gint" c:type="gint"/>
48476           </parameter>
48477           <parameter name="width" transfer-ownership="none">
48478             <type name="gint" c:type="gint"/>
48479           </parameter>
48480           <parameter name="height" transfer-ownership="none">
48481             <type name="gint" c:type="gint"/>
48482           </parameter>
48483         </parameters>
48484       </virtual-method>
48485       <virtual-method name="draw_shadow_gap">
48486         <return-value transfer-ownership="none">
48487           <type name="none" c:type="void"/>
48488         </return-value>
48489         <parameters>
48490           <parameter name="window" transfer-ownership="none">
48491             <type name="Gdk.Window" c:type="GdkWindow*"/>
48492           </parameter>
48493           <parameter name="state_type" transfer-ownership="none">
48494             <type name="StateType" c:type="GtkStateType"/>
48495           </parameter>
48496           <parameter name="shadow_type" transfer-ownership="none">
48497             <type name="ShadowType" c:type="GtkShadowType"/>
48498           </parameter>
48499           <parameter name="area" transfer-ownership="none">
48500             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48501           </parameter>
48502           <parameter name="widget" transfer-ownership="none">
48503             <type name="Widget" c:type="GtkWidget*"/>
48504           </parameter>
48505           <parameter name="detail" transfer-ownership="none">
48506             <type name="utf8" c:type="gchar*"/>
48507           </parameter>
48508           <parameter name="x" transfer-ownership="none">
48509             <type name="gint" c:type="gint"/>
48510           </parameter>
48511           <parameter name="y" transfer-ownership="none">
48512             <type name="gint" c:type="gint"/>
48513           </parameter>
48514           <parameter name="width" transfer-ownership="none">
48515             <type name="gint" c:type="gint"/>
48516           </parameter>
48517           <parameter name="height" transfer-ownership="none">
48518             <type name="gint" c:type="gint"/>
48519           </parameter>
48520           <parameter name="gap_side" transfer-ownership="none">
48521             <type name="PositionType" c:type="GtkPositionType"/>
48522           </parameter>
48523           <parameter name="gap_x" transfer-ownership="none">
48524             <type name="gint" c:type="gint"/>
48525           </parameter>
48526           <parameter name="gap_width" transfer-ownership="none">
48527             <type name="gint" c:type="gint"/>
48528           </parameter>
48529         </parameters>
48530       </virtual-method>
48531       <virtual-method name="draw_slider">
48532         <return-value transfer-ownership="none">
48533           <type name="none" c:type="void"/>
48534         </return-value>
48535         <parameters>
48536           <parameter name="window" transfer-ownership="none">
48537             <type name="Gdk.Window" c:type="GdkWindow*"/>
48538           </parameter>
48539           <parameter name="state_type" transfer-ownership="none">
48540             <type name="StateType" c:type="GtkStateType"/>
48541           </parameter>
48542           <parameter name="shadow_type" transfer-ownership="none">
48543             <type name="ShadowType" c:type="GtkShadowType"/>
48544           </parameter>
48545           <parameter name="area" transfer-ownership="none">
48546             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48547           </parameter>
48548           <parameter name="widget" transfer-ownership="none">
48549             <type name="Widget" c:type="GtkWidget*"/>
48550           </parameter>
48551           <parameter name="detail" transfer-ownership="none">
48552             <type name="utf8" c:type="gchar*"/>
48553           </parameter>
48554           <parameter name="x" transfer-ownership="none">
48555             <type name="gint" c:type="gint"/>
48556           </parameter>
48557           <parameter name="y" transfer-ownership="none">
48558             <type name="gint" c:type="gint"/>
48559           </parameter>
48560           <parameter name="width" transfer-ownership="none">
48561             <type name="gint" c:type="gint"/>
48562           </parameter>
48563           <parameter name="height" transfer-ownership="none">
48564             <type name="gint" c:type="gint"/>
48565           </parameter>
48566           <parameter name="orientation" transfer-ownership="none">
48567             <type name="Orientation" c:type="GtkOrientation"/>
48568           </parameter>
48569         </parameters>
48570       </virtual-method>
48571       <virtual-method name="draw_spinner">
48572         <return-value transfer-ownership="none">
48573           <type name="none" c:type="void"/>
48574         </return-value>
48575         <parameters>
48576           <parameter name="window" transfer-ownership="none">
48577             <type name="Gdk.Window" c:type="GdkWindow*"/>
48578           </parameter>
48579           <parameter name="state_type" transfer-ownership="none">
48580             <type name="StateType" c:type="GtkStateType"/>
48581           </parameter>
48582           <parameter name="area" transfer-ownership="none">
48583             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48584           </parameter>
48585           <parameter name="widget" transfer-ownership="none">
48586             <type name="Widget" c:type="GtkWidget*"/>
48587           </parameter>
48588           <parameter name="detail" transfer-ownership="none">
48589             <type name="utf8" c:type="gchar*"/>
48590           </parameter>
48591           <parameter name="step" transfer-ownership="none">
48592             <type name="guint" c:type="guint"/>
48593           </parameter>
48594           <parameter name="x" transfer-ownership="none">
48595             <type name="gint" c:type="gint"/>
48596           </parameter>
48597           <parameter name="y" transfer-ownership="none">
48598             <type name="gint" c:type="gint"/>
48599           </parameter>
48600           <parameter name="width" transfer-ownership="none">
48601             <type name="gint" c:type="gint"/>
48602           </parameter>
48603           <parameter name="height" transfer-ownership="none">
48604             <type name="gint" c:type="gint"/>
48605           </parameter>
48606         </parameters>
48607       </virtual-method>
48608       <virtual-method name="draw_tab">
48609         <return-value transfer-ownership="none">
48610           <type name="none" c:type="void"/>
48611         </return-value>
48612         <parameters>
48613           <parameter name="window" transfer-ownership="none">
48614             <type name="Gdk.Window" c:type="GdkWindow*"/>
48615           </parameter>
48616           <parameter name="state_type" transfer-ownership="none">
48617             <type name="StateType" c:type="GtkStateType"/>
48618           </parameter>
48619           <parameter name="shadow_type" transfer-ownership="none">
48620             <type name="ShadowType" c:type="GtkShadowType"/>
48621           </parameter>
48622           <parameter name="area" transfer-ownership="none">
48623             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48624           </parameter>
48625           <parameter name="widget" transfer-ownership="none">
48626             <type name="Widget" c:type="GtkWidget*"/>
48627           </parameter>
48628           <parameter name="detail" transfer-ownership="none">
48629             <type name="utf8" c:type="gchar*"/>
48630           </parameter>
48631           <parameter name="x" transfer-ownership="none">
48632             <type name="gint" c:type="gint"/>
48633           </parameter>
48634           <parameter name="y" transfer-ownership="none">
48635             <type name="gint" c:type="gint"/>
48636           </parameter>
48637           <parameter name="width" transfer-ownership="none">
48638             <type name="gint" c:type="gint"/>
48639           </parameter>
48640           <parameter name="height" transfer-ownership="none">
48641             <type name="gint" c:type="gint"/>
48642           </parameter>
48643         </parameters>
48644       </virtual-method>
48645       <virtual-method name="draw_vline">
48646         <return-value transfer-ownership="none">
48647           <type name="none" c:type="void"/>
48648         </return-value>
48649         <parameters>
48650           <parameter name="window" transfer-ownership="none">
48651             <type name="Gdk.Window" c:type="GdkWindow*"/>
48652           </parameter>
48653           <parameter name="state_type" transfer-ownership="none">
48654             <type name="StateType" c:type="GtkStateType"/>
48655           </parameter>
48656           <parameter name="area" transfer-ownership="none">
48657             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48658           </parameter>
48659           <parameter name="widget" transfer-ownership="none">
48660             <type name="Widget" c:type="GtkWidget*"/>
48661           </parameter>
48662           <parameter name="detail" transfer-ownership="none">
48663             <type name="utf8" c:type="gchar*"/>
48664           </parameter>
48665           <parameter name="y1_" transfer-ownership="none">
48666             <type name="gint" c:type="gint"/>
48667           </parameter>
48668           <parameter name="y2_" transfer-ownership="none">
48669             <type name="gint" c:type="gint"/>
48670           </parameter>
48671           <parameter name="x" transfer-ownership="none">
48672             <type name="gint" c:type="gint"/>
48673           </parameter>
48674         </parameters>
48675       </virtual-method>
48676       <virtual-method name="init_from_rc">
48677         <return-value transfer-ownership="none">
48678           <type name="none" c:type="void"/>
48679         </return-value>
48680         <parameters>
48681           <parameter name="rc_style" transfer-ownership="none">
48682             <type name="RcStyle" c:type="GtkRcStyle*"/>
48683           </parameter>
48684         </parameters>
48685       </virtual-method>
48686       <virtual-method name="render_icon" invoker="render_icon">
48687         <doc xml:whitespace="preserve">Renders the icon specified by @source at the given @size
48688 according to the given parameters and returns the result in a
48689 pixbuf.
48690 containing the rendered icon</doc>
48691         <return-value transfer-ownership="full">
48692           <doc xml:whitespace="preserve">a newly-created #GdkPixbuf</doc>
48693           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
48694         </return-value>
48695         <parameters>
48696           <parameter name="source" transfer-ownership="none">
48697             <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
48698             <type name="IconSource" c:type="GtkIconSource*"/>
48699           </parameter>
48700           <parameter name="direction" transfer-ownership="none">
48701             <doc xml:whitespace="preserve">a text direction</doc>
48702             <type name="TextDirection" c:type="GtkTextDirection"/>
48703           </parameter>
48704           <parameter name="state" transfer-ownership="none">
48705             <doc xml:whitespace="preserve">a state</doc>
48706             <type name="StateType" c:type="GtkStateType"/>
48707           </parameter>
48708           <parameter name="size" transfer-ownership="none">
48709             <doc xml:whitespace="preserve">the size to render the icon at. A size of (GtkIconSize)-1 means render at the size of the source and don't scale.</doc>
48710             <type name="gint"/>
48711           </parameter>
48712           <parameter name="widget" transfer-ownership="none" allow-none="1">
48713             <doc xml:whitespace="preserve">the widget</doc>
48714             <type name="Widget" c:type="GtkWidget*"/>
48715           </parameter>
48716           <parameter name="detail" transfer-ownership="none" allow-none="1">
48717             <doc xml:whitespace="preserve">a style detail</doc>
48718             <type name="utf8" c:type="gchar*"/>
48719           </parameter>
48720         </parameters>
48721       </virtual-method>
48722       <virtual-method name="set_background" invoker="set_background">
48723         <doc xml:whitespace="preserve">Sets the background of @window to the background color or pixmap
48724 specified by @style for the given state.</doc>
48725         <return-value transfer-ownership="none">
48726           <type name="none" c:type="void"/>
48727         </return-value>
48728         <parameters>
48729           <parameter name="window" transfer-ownership="none">
48730             <doc xml:whitespace="preserve">a #GdkWindow</doc>
48731             <type name="Gdk.Window" c:type="GdkWindow*"/>
48732           </parameter>
48733           <parameter name="state_type" transfer-ownership="none">
48734             <doc xml:whitespace="preserve">a state</doc>
48735             <type name="StateType" c:type="GtkStateType"/>
48736           </parameter>
48737         </parameters>
48738       </virtual-method>
48739       <method name="apply_default_background"
48740               c:identifier="gtk_style_apply_default_background">
48741         <return-value transfer-ownership="none">
48742           <type name="none" c:type="void"/>
48743         </return-value>
48744         <parameters>
48745           <parameter name="window" transfer-ownership="none">
48746             <type name="Gdk.Window" c:type="GdkWindow*"/>
48747           </parameter>
48748           <parameter name="set_bg" transfer-ownership="none">
48749             <type name="gboolean" c:type="gboolean"/>
48750           </parameter>
48751           <parameter name="state_type" transfer-ownership="none">
48752             <type name="StateType" c:type="GtkStateType"/>
48753           </parameter>
48754           <parameter name="area" transfer-ownership="none" allow-none="1">
48755             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
48756           </parameter>
48757           <parameter name="x" transfer-ownership="none">
48758             <type name="gint" c:type="gint"/>
48759           </parameter>
48760           <parameter name="y" transfer-ownership="none">
48761             <type name="gint" c:type="gint"/>
48762           </parameter>
48763           <parameter name="width" transfer-ownership="none">
48764             <type name="gint" c:type="gint"/>
48765           </parameter>
48766           <parameter name="height" transfer-ownership="none">
48767             <type name="gint" c:type="gint"/>
48768           </parameter>
48769         </parameters>
48770       </method>
48771       <method name="attach" c:identifier="gtk_style_attach" introspectable="0">
48772         <doc xml:whitespace="preserve">Attaches a style to a window; this process allocates the
48773 colors and creates the GC's for the style - it specializes
48774 it to a particular visual and colormap. The process may
48775 involve the creation of a new style if the style has already
48776 been attached to a window with a different style and colormap.
48777 Since this function may return a new object, you have to use it
48778 in the following way:
48779 &lt;literal&gt;style = gtk_style_attach (style, window)&lt;/literal&gt;
48780 If the style is newly created, the style parameter
48781 will be unref'ed, and the new style will have
48782 a reference count belonging to the caller.</doc>
48783         <return-value>
48784           <doc xml:whitespace="preserve">Either @style, or a newly-created #GtkStyle.</doc>
48785           <type name="Style" c:type="GtkStyle*"/>
48786         </return-value>
48787         <parameters>
48788           <parameter name="window" transfer-ownership="none">
48789             <doc xml:whitespace="preserve">a #GdkWindow.</doc>
48790             <type name="Gdk.Window" c:type="GdkWindow*"/>
48791           </parameter>
48792         </parameters>
48793       </method>
48794       <method name="copy" c:identifier="gtk_style_copy">
48795         <doc xml:whitespace="preserve">Creates a copy of the passed in #GtkStyle object.</doc>
48796         <return-value transfer-ownership="full">
48797           <doc xml:whitespace="preserve">a copy of @style</doc>
48798           <type name="Style" c:type="GtkStyle*"/>
48799         </return-value>
48800       </method>
48801       <method name="detach" c:identifier="gtk_style_detach">
48802         <doc xml:whitespace="preserve">Detaches a style from a window. If the style is not attached
48803 to any windows anymore, it is unrealized. See gtk_style_attach().</doc>
48804         <return-value transfer-ownership="none">
48805           <type name="none" c:type="void"/>
48806         </return-value>
48807       </method>
48808       <method name="get"
48809               c:identifier="gtk_style_get"
48810               version="2.16"
48811               introspectable="0">
48812         <doc xml:whitespace="preserve">Gets the values of a multiple style properties for @widget_type
48813 from @style.</doc>
48814         <return-value transfer-ownership="none">
48815           <type name="none" c:type="void"/>
48816         </return-value>
48817         <parameters>
48818           <parameter name="widget_type" transfer-ownership="none">
48819             <doc xml:whitespace="preserve">the #GType of a descendant of #GtkWidget</doc>
48820             <type name="GType" c:type="GType"/>
48821           </parameter>
48822           <parameter name="first_property_name" transfer-ownership="none">
48823             <doc xml:whitespace="preserve">the name of the first style property to get</doc>
48824             <type name="utf8" c:type="gchar*"/>
48825           </parameter>
48826           <parameter transfer-ownership="none">
48827             <varargs>
48828             </varargs>
48829           </parameter>
48830         </parameters>
48831       </method>
48832       <method name="get_style_property"
48833               c:identifier="gtk_style_get_style_property"
48834               version="2.16">
48835         <doc xml:whitespace="preserve">Queries the value of a style property corresponding to a
48836 widget class is in the given style.</doc>
48837         <return-value transfer-ownership="none">
48838           <type name="none" c:type="void"/>
48839         </return-value>
48840         <parameters>
48841           <parameter name="widget_type" transfer-ownership="none">
48842             <doc xml:whitespace="preserve">the #GType of a descendant of #GtkWidget</doc>
48843             <type name="GType" c:type="GType"/>
48844           </parameter>
48845           <parameter name="property_name" transfer-ownership="none">
48846             <doc xml:whitespace="preserve">the name of the style property to get</doc>
48847             <type name="utf8" c:type="gchar*"/>
48848           </parameter>
48849           <parameter name="value" transfer-ownership="none">
48850             <doc xml:whitespace="preserve">a #GValue where the value of the property being queried will be stored</doc>
48851             <type name="GObject.Value" c:type="GValue*"/>
48852           </parameter>
48853         </parameters>
48854       </method>
48855       <method name="get_valist"
48856               c:identifier="gtk_style_get_valist"
48857               version="2.16"
48858               introspectable="0">
48859         <doc xml:whitespace="preserve">Non-vararg variant of gtk_style_get().
48860 Used primarily by language bindings.</doc>
48861         <return-value transfer-ownership="none">
48862           <type name="none" c:type="void"/>
48863         </return-value>
48864         <parameters>
48865           <parameter name="widget_type" transfer-ownership="none">
48866             <doc xml:whitespace="preserve">the #GType of a descendant of #GtkWidget</doc>
48867             <type name="GType" c:type="GType"/>
48868           </parameter>
48869           <parameter name="first_property_name" transfer-ownership="none">
48870             <doc xml:whitespace="preserve">the name of the first style property to get</doc>
48871             <type name="utf8" c:type="gchar*"/>
48872           </parameter>
48873           <parameter name="var_args" transfer-ownership="none">
48874             <doc xml:whitespace="preserve">a &lt;type&gt;va_list&lt;/type&gt; of pairs of property names and locations to return the property values, starting with the location for @first_property_name.</doc>
48875             <type name="va_list" c:type="va_list"/>
48876           </parameter>
48877         </parameters>
48878       </method>
48879       <method name="lookup_color"
48880               c:identifier="gtk_style_lookup_color"
48881               version="2.10">
48882         <doc xml:whitespace="preserve">Looks up @color_name in the style's logical color mappings,
48883 filling in @color and returning %TRUE if found, otherwise
48884 returning %FALSE. Do not cache the found mapping, because
48885 it depends on the #GtkStyle and might change when a theme
48886 switch occurs.</doc>
48887         <return-value transfer-ownership="none">
48888           <doc xml:whitespace="preserve">%TRUE if the mapping was found.</doc>
48889           <type name="gboolean" c:type="gboolean"/>
48890         </return-value>
48891         <parameters>
48892           <parameter name="color_name" transfer-ownership="none">
48893             <doc xml:whitespace="preserve">the name of the logical color to look up</doc>
48894             <type name="utf8" c:type="gchar*"/>
48895           </parameter>
48896           <parameter name="color" transfer-ownership="none">
48897             <doc xml:whitespace="preserve">the #GdkColor to fill in</doc>
48898             <type name="Gdk.Color" c:type="GdkColor*"/>
48899           </parameter>
48900         </parameters>
48901       </method>
48902       <method name="lookup_icon_set" c:identifier="gtk_style_lookup_icon_set">
48903         <doc xml:whitespace="preserve">Looks up @stock_id in the icon factories associated with @style
48904 and the default icon factory, returning an icon set if found,
48905 otherwise %NULL.</doc>
48906         <return-value transfer-ownership="full">
48907           <doc xml:whitespace="preserve">icon set of @stock_id</doc>
48908           <type name="IconSet" c:type="GtkIconSet*"/>
48909         </return-value>
48910         <parameters>
48911           <parameter name="stock_id" transfer-ownership="none">
48912             <doc xml:whitespace="preserve">an icon name</doc>
48913             <type name="utf8" c:type="gchar*"/>
48914           </parameter>
48915         </parameters>
48916       </method>
48917       <method name="render_icon" c:identifier="gtk_style_render_icon">
48918         <doc xml:whitespace="preserve">Renders the icon specified by @source at the given @size
48919 according to the given parameters and returns the result in a
48920 pixbuf.
48921 containing the rendered icon</doc>
48922         <return-value transfer-ownership="full">
48923           <doc xml:whitespace="preserve">a newly-created #GdkPixbuf</doc>
48924           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
48925         </return-value>
48926         <parameters>
48927           <parameter name="source" transfer-ownership="none">
48928             <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
48929             <type name="IconSource" c:type="GtkIconSource*"/>
48930           </parameter>
48931           <parameter name="direction" transfer-ownership="none">
48932             <doc xml:whitespace="preserve">a text direction</doc>
48933             <type name="TextDirection" c:type="GtkTextDirection"/>
48934           </parameter>
48935           <parameter name="state" transfer-ownership="none">
48936             <doc xml:whitespace="preserve">a state</doc>
48937             <type name="StateType" c:type="GtkStateType"/>
48938           </parameter>
48939           <parameter name="size" transfer-ownership="none">
48940             <doc xml:whitespace="preserve">the size to render the icon at. A size of (GtkIconSize)-1 means render at the size of the source and don't scale.</doc>
48941             <type name="gint"/>
48942           </parameter>
48943           <parameter name="widget" transfer-ownership="none" allow-none="1">
48944             <doc xml:whitespace="preserve">the widget</doc>
48945             <type name="Widget" c:type="GtkWidget*"/>
48946           </parameter>
48947           <parameter name="detail" transfer-ownership="none" allow-none="1">
48948             <doc xml:whitespace="preserve">a style detail</doc>
48949             <type name="utf8" c:type="gchar*"/>
48950           </parameter>
48951         </parameters>
48952       </method>
48953       <method name="set_background" c:identifier="gtk_style_set_background">
48954         <doc xml:whitespace="preserve">Sets the background of @window to the background color or pixmap
48955 specified by @style for the given state.</doc>
48956         <return-value transfer-ownership="none">
48957           <type name="none" c:type="void"/>
48958         </return-value>
48959         <parameters>
48960           <parameter name="window" transfer-ownership="none">
48961             <doc xml:whitespace="preserve">a #GdkWindow</doc>
48962             <type name="Gdk.Window" c:type="GdkWindow*"/>
48963           </parameter>
48964           <parameter name="state_type" transfer-ownership="none">
48965             <doc xml:whitespace="preserve">a state</doc>
48966             <type name="StateType" c:type="GtkStateType"/>
48967           </parameter>
48968         </parameters>
48969       </method>
48970       <field name="parent_instance">
48971         <type name="GObject.Object" c:type="GObject"/>
48972       </field>
48973       <field name="fg">
48974         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
48975           <type name="Gdk.Color" c:type="GdkColor"/>
48976         </array>
48977       </field>
48978       <field name="bg">
48979         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
48980           <type name="Gdk.Color" c:type="GdkColor"/>
48981         </array>
48982       </field>
48983       <field name="light">
48984         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
48985           <type name="Gdk.Color" c:type="GdkColor"/>
48986         </array>
48987       </field>
48988       <field name="dark">
48989         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
48990           <type name="Gdk.Color" c:type="GdkColor"/>
48991         </array>
48992       </field>
48993       <field name="mid">
48994         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
48995           <type name="Gdk.Color" c:type="GdkColor"/>
48996         </array>
48997       </field>
48998       <field name="text">
48999         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
49000           <type name="Gdk.Color" c:type="GdkColor"/>
49001         </array>
49002       </field>
49003       <field name="base">
49004         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
49005           <type name="Gdk.Color" c:type="GdkColor"/>
49006         </array>
49007       </field>
49008       <field name="text_aa">
49009         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
49010           <type name="Gdk.Color" c:type="GdkColor"/>
49011         </array>
49012       </field>
49013       <field name="black">
49014         <type name="Gdk.Color" c:type="GdkColor"/>
49015       </field>
49016       <field name="white">
49017         <type name="Gdk.Color" c:type="GdkColor"/>
49018       </field>
49019       <field name="font_desc">
49020         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
49021       </field>
49022       <field name="xthickness">
49023         <type name="gint" c:type="gint"/>
49024       </field>
49025       <field name="ythickness">
49026         <type name="gint" c:type="gint"/>
49027       </field>
49028       <field name="bg_pixmap">
49029         <array zero-terminated="0" c:type="GdkPixmap" fixed-size="5">
49030           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
49031         </array>
49032       </field>
49033       <field name="attach_count">
49034         <type name="gint" c:type="gint"/>
49035       </field>
49036       <field name="depth">
49037         <type name="gint" c:type="gint"/>
49038       </field>
49039       <field name="colormap">
49040         <type name="Gdk.Colormap" c:type="GdkColormap*"/>
49041       </field>
49042       <field name="private_font_desc">
49043         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
49044       </field>
49045       <field name="rc_style">
49046         <type name="RcStyle" c:type="GtkRcStyle*"/>
49047       </field>
49048       <field name="styles">
49049         <type name="GLib.SList" c:type="GSList*">
49050           <type name="gpointer" c:type="gpointer"/>
49051         </type>
49052       </field>
49053       <field name="property_cache">
49054         <array name="GLib.Array" c:type="GArray*">
49055           <type name="gpointer" c:type="gpointer"/>
49056         </array>
49057       </field>
49058       <field name="icon_factories">
49059         <type name="GLib.SList" c:type="GSList*">
49060           <type name="gpointer" c:type="gpointer"/>
49061         </type>
49062       </field>
49063       <glib:signal name="realize" version="2.4">
49064         <doc xml:whitespace="preserve">Emitted when the style has been initialized for a particular
49065 colormap and depth. Connecting to this signal is probably seldom
49066 useful since most of the time applications and widgets only
49067 deal with styles that have been already realized.</doc>
49068         <return-value transfer-ownership="none">
49069           <type name="none"/>
49070         </return-value>
49071       </glib:signal>
49072       <glib:signal name="unrealize" version="2.4">
49073         <doc xml:whitespace="preserve">Emitted when the aspects of the style specific to a particular colormap
49074 and depth are being cleaned up. A connection to this signal can be useful
49075 if a widget wants to cache objects as object data on #GtkStyle.
49076 This signal provides a convenient place to free such cached objects.</doc>
49077         <return-value transfer-ownership="none">
49078           <type name="none"/>
49079         </return-value>
49080       </glib:signal>
49081     </class>
49082     <record name="StyleClass"
49083             c:type="GtkStyleClass"
49084             glib:is-gtype-struct-for="Style">
49085       <field name="parent_class">
49086         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
49087       </field>
49088       <field name="realize">
49089         <callback name="realize">
49090           <return-value transfer-ownership="none">
49091             <type name="none" c:type="void"/>
49092           </return-value>
49093           <parameters>
49094             <parameter name="style" transfer-ownership="none">
49095               <type name="Style" c:type="GtkStyle*"/>
49096             </parameter>
49097           </parameters>
49098         </callback>
49099       </field>
49100       <field name="unrealize">
49101         <callback name="unrealize">
49102           <return-value transfer-ownership="none">
49103             <type name="none" c:type="void"/>
49104           </return-value>
49105           <parameters>
49106             <parameter name="style" transfer-ownership="none">
49107               <type name="Style" c:type="GtkStyle*"/>
49108             </parameter>
49109           </parameters>
49110         </callback>
49111       </field>
49112       <field name="copy">
49113         <callback name="copy">
49114           <return-value transfer-ownership="none">
49115             <type name="none" c:type="void"/>
49116           </return-value>
49117           <parameters>
49118             <parameter name="style" transfer-ownership="none">
49119               <type name="Style" c:type="GtkStyle*"/>
49120             </parameter>
49121             <parameter name="src" transfer-ownership="none">
49122               <type name="Style" c:type="GtkStyle*"/>
49123             </parameter>
49124           </parameters>
49125         </callback>
49126       </field>
49127       <field name="clone" introspectable="0">
49128         <callback name="clone" introspectable="0">
49129           <return-value>
49130             <type name="Style" c:type="GtkStyle*"/>
49131           </return-value>
49132           <parameters>
49133             <parameter name="style" transfer-ownership="none">
49134               <type name="Style" c:type="GtkStyle*"/>
49135             </parameter>
49136           </parameters>
49137         </callback>
49138       </field>
49139       <field name="init_from_rc">
49140         <callback name="init_from_rc">
49141           <return-value transfer-ownership="none">
49142             <type name="none" c:type="void"/>
49143           </return-value>
49144           <parameters>
49145             <parameter name="style" transfer-ownership="none">
49146               <type name="Style" c:type="GtkStyle*"/>
49147             </parameter>
49148             <parameter name="rc_style" transfer-ownership="none">
49149               <type name="RcStyle" c:type="GtkRcStyle*"/>
49150             </parameter>
49151           </parameters>
49152         </callback>
49153       </field>
49154       <field name="set_background">
49155         <callback name="set_background">
49156           <return-value transfer-ownership="none">
49157             <type name="none" c:type="void"/>
49158           </return-value>
49159           <parameters>
49160             <parameter name="style" transfer-ownership="none">
49161               <type name="Style" c:type="GtkStyle*"/>
49162             </parameter>
49163             <parameter name="window" transfer-ownership="none">
49164               <doc xml:whitespace="preserve">a #GdkWindow</doc>
49165               <type name="Gdk.Window" c:type="GdkWindow*"/>
49166             </parameter>
49167             <parameter name="state_type" transfer-ownership="none">
49168               <doc xml:whitespace="preserve">a state</doc>
49169               <type name="StateType" c:type="GtkStateType"/>
49170             </parameter>
49171           </parameters>
49172         </callback>
49173       </field>
49174       <field name="render_icon">
49175         <callback name="render_icon">
49176           <return-value transfer-ownership="full">
49177             <doc xml:whitespace="preserve">a newly-created #GdkPixbuf</doc>
49178             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
49179           </return-value>
49180           <parameters>
49181             <parameter name="style" transfer-ownership="none">
49182               <type name="Style" c:type="GtkStyle*"/>
49183             </parameter>
49184             <parameter name="source" transfer-ownership="none">
49185               <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
49186               <type name="IconSource" c:type="GtkIconSource*"/>
49187             </parameter>
49188             <parameter name="direction" transfer-ownership="none">
49189               <doc xml:whitespace="preserve">a text direction</doc>
49190               <type name="TextDirection" c:type="GtkTextDirection"/>
49191             </parameter>
49192             <parameter name="state" transfer-ownership="none">
49193               <doc xml:whitespace="preserve">a state</doc>
49194               <type name="StateType" c:type="GtkStateType"/>
49195             </parameter>
49196             <parameter name="size" transfer-ownership="none">
49197               <doc xml:whitespace="preserve">the size to render the icon at. A size of (GtkIconSize)-1 means render at the size of the source and don't scale.</doc>
49198               <type name="gint"/>
49199             </parameter>
49200             <parameter name="widget" transfer-ownership="none" allow-none="1">
49201               <doc xml:whitespace="preserve">the widget</doc>
49202               <type name="Widget" c:type="GtkWidget*"/>
49203             </parameter>
49204             <parameter name="detail" transfer-ownership="none" allow-none="1">
49205               <doc xml:whitespace="preserve">a style detail</doc>
49206               <type name="utf8" c:type="gchar*"/>
49207             </parameter>
49208           </parameters>
49209         </callback>
49210       </field>
49211       <field name="draw_hline">
49212         <callback name="draw_hline">
49213           <return-value transfer-ownership="none">
49214             <type name="none" c:type="void"/>
49215           </return-value>
49216           <parameters>
49217             <parameter name="style" transfer-ownership="none">
49218               <type name="Style" c:type="GtkStyle*"/>
49219             </parameter>
49220             <parameter name="window" transfer-ownership="none">
49221               <type name="Gdk.Window" c:type="GdkWindow*"/>
49222             </parameter>
49223             <parameter name="state_type" transfer-ownership="none">
49224               <type name="StateType" c:type="GtkStateType"/>
49225             </parameter>
49226             <parameter name="area" transfer-ownership="none">
49227               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49228             </parameter>
49229             <parameter name="widget" transfer-ownership="none">
49230               <type name="Widget" c:type="GtkWidget*"/>
49231             </parameter>
49232             <parameter name="detail" transfer-ownership="none">
49233               <type name="utf8" c:type="gchar*"/>
49234             </parameter>
49235             <parameter name="x1" transfer-ownership="none">
49236               <type name="gint" c:type="gint"/>
49237             </parameter>
49238             <parameter name="x2" transfer-ownership="none">
49239               <type name="gint" c:type="gint"/>
49240             </parameter>
49241             <parameter name="y" transfer-ownership="none">
49242               <type name="gint" c:type="gint"/>
49243             </parameter>
49244           </parameters>
49245         </callback>
49246       </field>
49247       <field name="draw_vline">
49248         <callback name="draw_vline">
49249           <return-value transfer-ownership="none">
49250             <type name="none" c:type="void"/>
49251           </return-value>
49252           <parameters>
49253             <parameter name="style" transfer-ownership="none">
49254               <type name="Style" c:type="GtkStyle*"/>
49255             </parameter>
49256             <parameter name="window" transfer-ownership="none">
49257               <type name="Gdk.Window" c:type="GdkWindow*"/>
49258             </parameter>
49259             <parameter name="state_type" transfer-ownership="none">
49260               <type name="StateType" c:type="GtkStateType"/>
49261             </parameter>
49262             <parameter name="area" transfer-ownership="none">
49263               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49264             </parameter>
49265             <parameter name="widget" transfer-ownership="none">
49266               <type name="Widget" c:type="GtkWidget*"/>
49267             </parameter>
49268             <parameter name="detail" transfer-ownership="none">
49269               <type name="utf8" c:type="gchar*"/>
49270             </parameter>
49271             <parameter name="y1_" transfer-ownership="none">
49272               <type name="gint" c:type="gint"/>
49273             </parameter>
49274             <parameter name="y2_" transfer-ownership="none">
49275               <type name="gint" c:type="gint"/>
49276             </parameter>
49277             <parameter name="x" transfer-ownership="none">
49278               <type name="gint" c:type="gint"/>
49279             </parameter>
49280           </parameters>
49281         </callback>
49282       </field>
49283       <field name="draw_shadow">
49284         <callback name="draw_shadow">
49285           <return-value transfer-ownership="none">
49286             <type name="none" c:type="void"/>
49287           </return-value>
49288           <parameters>
49289             <parameter name="style" transfer-ownership="none">
49290               <type name="Style" c:type="GtkStyle*"/>
49291             </parameter>
49292             <parameter name="window" transfer-ownership="none">
49293               <type name="Gdk.Window" c:type="GdkWindow*"/>
49294             </parameter>
49295             <parameter name="state_type" transfer-ownership="none">
49296               <type name="StateType" c:type="GtkStateType"/>
49297             </parameter>
49298             <parameter name="shadow_type" transfer-ownership="none">
49299               <type name="ShadowType" c:type="GtkShadowType"/>
49300             </parameter>
49301             <parameter name="area" transfer-ownership="none">
49302               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49303             </parameter>
49304             <parameter name="widget" transfer-ownership="none">
49305               <type name="Widget" c:type="GtkWidget*"/>
49306             </parameter>
49307             <parameter name="detail" transfer-ownership="none">
49308               <type name="utf8" c:type="gchar*"/>
49309             </parameter>
49310             <parameter name="x" transfer-ownership="none">
49311               <type name="gint" c:type="gint"/>
49312             </parameter>
49313             <parameter name="y" transfer-ownership="none">
49314               <type name="gint" c:type="gint"/>
49315             </parameter>
49316             <parameter name="width" transfer-ownership="none">
49317               <type name="gint" c:type="gint"/>
49318             </parameter>
49319             <parameter name="height" transfer-ownership="none">
49320               <type name="gint" c:type="gint"/>
49321             </parameter>
49322           </parameters>
49323         </callback>
49324       </field>
49325       <field name="draw_arrow">
49326         <callback name="draw_arrow">
49327           <return-value transfer-ownership="none">
49328             <type name="none" c:type="void"/>
49329           </return-value>
49330           <parameters>
49331             <parameter name="style" transfer-ownership="none">
49332               <type name="Style" c:type="GtkStyle*"/>
49333             </parameter>
49334             <parameter name="window" transfer-ownership="none">
49335               <type name="Gdk.Window" c:type="GdkWindow*"/>
49336             </parameter>
49337             <parameter name="state_type" transfer-ownership="none">
49338               <type name="StateType" c:type="GtkStateType"/>
49339             </parameter>
49340             <parameter name="shadow_type" transfer-ownership="none">
49341               <type name="ShadowType" c:type="GtkShadowType"/>
49342             </parameter>
49343             <parameter name="area" transfer-ownership="none">
49344               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49345             </parameter>
49346             <parameter name="widget" transfer-ownership="none">
49347               <type name="Widget" c:type="GtkWidget*"/>
49348             </parameter>
49349             <parameter name="detail" transfer-ownership="none">
49350               <type name="utf8" c:type="gchar*"/>
49351             </parameter>
49352             <parameter name="arrow_type" transfer-ownership="none">
49353               <type name="ArrowType" c:type="GtkArrowType"/>
49354             </parameter>
49355             <parameter name="fill" transfer-ownership="none">
49356               <type name="gboolean" c:type="gboolean"/>
49357             </parameter>
49358             <parameter name="x" transfer-ownership="none">
49359               <type name="gint" c:type="gint"/>
49360             </parameter>
49361             <parameter name="y" transfer-ownership="none">
49362               <type name="gint" c:type="gint"/>
49363             </parameter>
49364             <parameter name="width" transfer-ownership="none">
49365               <type name="gint" c:type="gint"/>
49366             </parameter>
49367             <parameter name="height" transfer-ownership="none">
49368               <type name="gint" c:type="gint"/>
49369             </parameter>
49370           </parameters>
49371         </callback>
49372       </field>
49373       <field name="draw_diamond">
49374         <callback name="draw_diamond">
49375           <return-value transfer-ownership="none">
49376             <type name="none" c:type="void"/>
49377           </return-value>
49378           <parameters>
49379             <parameter name="style" transfer-ownership="none">
49380               <type name="Style" c:type="GtkStyle*"/>
49381             </parameter>
49382             <parameter name="window" transfer-ownership="none">
49383               <type name="Gdk.Window" c:type="GdkWindow*"/>
49384             </parameter>
49385             <parameter name="state_type" transfer-ownership="none">
49386               <type name="StateType" c:type="GtkStateType"/>
49387             </parameter>
49388             <parameter name="shadow_type" transfer-ownership="none">
49389               <type name="ShadowType" c:type="GtkShadowType"/>
49390             </parameter>
49391             <parameter name="area" transfer-ownership="none">
49392               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49393             </parameter>
49394             <parameter name="widget" transfer-ownership="none">
49395               <type name="Widget" c:type="GtkWidget*"/>
49396             </parameter>
49397             <parameter name="detail" transfer-ownership="none">
49398               <type name="utf8" c:type="gchar*"/>
49399             </parameter>
49400             <parameter name="x" transfer-ownership="none">
49401               <type name="gint" c:type="gint"/>
49402             </parameter>
49403             <parameter name="y" transfer-ownership="none">
49404               <type name="gint" c:type="gint"/>
49405             </parameter>
49406             <parameter name="width" transfer-ownership="none">
49407               <type name="gint" c:type="gint"/>
49408             </parameter>
49409             <parameter name="height" transfer-ownership="none">
49410               <type name="gint" c:type="gint"/>
49411             </parameter>
49412           </parameters>
49413         </callback>
49414       </field>
49415       <field name="draw_box">
49416         <callback name="draw_box">
49417           <return-value transfer-ownership="none">
49418             <type name="none" c:type="void"/>
49419           </return-value>
49420           <parameters>
49421             <parameter name="style" transfer-ownership="none">
49422               <type name="Style" c:type="GtkStyle*"/>
49423             </parameter>
49424             <parameter name="window" transfer-ownership="none">
49425               <type name="Gdk.Window" c:type="GdkWindow*"/>
49426             </parameter>
49427             <parameter name="state_type" transfer-ownership="none">
49428               <type name="StateType" c:type="GtkStateType"/>
49429             </parameter>
49430             <parameter name="shadow_type" transfer-ownership="none">
49431               <type name="ShadowType" c:type="GtkShadowType"/>
49432             </parameter>
49433             <parameter name="area" transfer-ownership="none">
49434               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49435             </parameter>
49436             <parameter name="widget" transfer-ownership="none">
49437               <type name="Widget" c:type="GtkWidget*"/>
49438             </parameter>
49439             <parameter name="detail" transfer-ownership="none">
49440               <type name="utf8" c:type="gchar*"/>
49441             </parameter>
49442             <parameter name="x" transfer-ownership="none">
49443               <type name="gint" c:type="gint"/>
49444             </parameter>
49445             <parameter name="y" transfer-ownership="none">
49446               <type name="gint" c:type="gint"/>
49447             </parameter>
49448             <parameter name="width" transfer-ownership="none">
49449               <type name="gint" c:type="gint"/>
49450             </parameter>
49451             <parameter name="height" transfer-ownership="none">
49452               <type name="gint" c:type="gint"/>
49453             </parameter>
49454           </parameters>
49455         </callback>
49456       </field>
49457       <field name="draw_flat_box">
49458         <callback name="draw_flat_box">
49459           <return-value transfer-ownership="none">
49460             <type name="none" c:type="void"/>
49461           </return-value>
49462           <parameters>
49463             <parameter name="style" transfer-ownership="none">
49464               <type name="Style" c:type="GtkStyle*"/>
49465             </parameter>
49466             <parameter name="window" transfer-ownership="none">
49467               <type name="Gdk.Window" c:type="GdkWindow*"/>
49468             </parameter>
49469             <parameter name="state_type" transfer-ownership="none">
49470               <type name="StateType" c:type="GtkStateType"/>
49471             </parameter>
49472             <parameter name="shadow_type" transfer-ownership="none">
49473               <type name="ShadowType" c:type="GtkShadowType"/>
49474             </parameter>
49475             <parameter name="area" transfer-ownership="none">
49476               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49477             </parameter>
49478             <parameter name="widget" transfer-ownership="none">
49479               <type name="Widget" c:type="GtkWidget*"/>
49480             </parameter>
49481             <parameter name="detail" transfer-ownership="none">
49482               <type name="utf8" c:type="gchar*"/>
49483             </parameter>
49484             <parameter name="x" transfer-ownership="none">
49485               <type name="gint" c:type="gint"/>
49486             </parameter>
49487             <parameter name="y" transfer-ownership="none">
49488               <type name="gint" c:type="gint"/>
49489             </parameter>
49490             <parameter name="width" transfer-ownership="none">
49491               <type name="gint" c:type="gint"/>
49492             </parameter>
49493             <parameter name="height" transfer-ownership="none">
49494               <type name="gint" c:type="gint"/>
49495             </parameter>
49496           </parameters>
49497         </callback>
49498       </field>
49499       <field name="draw_check">
49500         <callback name="draw_check">
49501           <return-value transfer-ownership="none">
49502             <type name="none" c:type="void"/>
49503           </return-value>
49504           <parameters>
49505             <parameter name="style" transfer-ownership="none">
49506               <type name="Style" c:type="GtkStyle*"/>
49507             </parameter>
49508             <parameter name="window" transfer-ownership="none">
49509               <type name="Gdk.Window" c:type="GdkWindow*"/>
49510             </parameter>
49511             <parameter name="state_type" transfer-ownership="none">
49512               <type name="StateType" c:type="GtkStateType"/>
49513             </parameter>
49514             <parameter name="shadow_type" transfer-ownership="none">
49515               <type name="ShadowType" c:type="GtkShadowType"/>
49516             </parameter>
49517             <parameter name="area" transfer-ownership="none">
49518               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49519             </parameter>
49520             <parameter name="widget" transfer-ownership="none">
49521               <type name="Widget" c:type="GtkWidget*"/>
49522             </parameter>
49523             <parameter name="detail" transfer-ownership="none">
49524               <type name="utf8" c:type="gchar*"/>
49525             </parameter>
49526             <parameter name="x" transfer-ownership="none">
49527               <type name="gint" c:type="gint"/>
49528             </parameter>
49529             <parameter name="y" transfer-ownership="none">
49530               <type name="gint" c:type="gint"/>
49531             </parameter>
49532             <parameter name="width" transfer-ownership="none">
49533               <type name="gint" c:type="gint"/>
49534             </parameter>
49535             <parameter name="height" transfer-ownership="none">
49536               <type name="gint" c:type="gint"/>
49537             </parameter>
49538           </parameters>
49539         </callback>
49540       </field>
49541       <field name="draw_option">
49542         <callback name="draw_option">
49543           <return-value transfer-ownership="none">
49544             <type name="none" c:type="void"/>
49545           </return-value>
49546           <parameters>
49547             <parameter name="style" transfer-ownership="none">
49548               <type name="Style" c:type="GtkStyle*"/>
49549             </parameter>
49550             <parameter name="window" transfer-ownership="none">
49551               <type name="Gdk.Window" c:type="GdkWindow*"/>
49552             </parameter>
49553             <parameter name="state_type" transfer-ownership="none">
49554               <type name="StateType" c:type="GtkStateType"/>
49555             </parameter>
49556             <parameter name="shadow_type" transfer-ownership="none">
49557               <type name="ShadowType" c:type="GtkShadowType"/>
49558             </parameter>
49559             <parameter name="area" transfer-ownership="none">
49560               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49561             </parameter>
49562             <parameter name="widget" transfer-ownership="none">
49563               <type name="Widget" c:type="GtkWidget*"/>
49564             </parameter>
49565             <parameter name="detail" transfer-ownership="none">
49566               <type name="utf8" c:type="gchar*"/>
49567             </parameter>
49568             <parameter name="x" transfer-ownership="none">
49569               <type name="gint" c:type="gint"/>
49570             </parameter>
49571             <parameter name="y" transfer-ownership="none">
49572               <type name="gint" c:type="gint"/>
49573             </parameter>
49574             <parameter name="width" transfer-ownership="none">
49575               <type name="gint" c:type="gint"/>
49576             </parameter>
49577             <parameter name="height" transfer-ownership="none">
49578               <type name="gint" c:type="gint"/>
49579             </parameter>
49580           </parameters>
49581         </callback>
49582       </field>
49583       <field name="draw_tab">
49584         <callback name="draw_tab">
49585           <return-value transfer-ownership="none">
49586             <type name="none" c:type="void"/>
49587           </return-value>
49588           <parameters>
49589             <parameter name="style" transfer-ownership="none">
49590               <type name="Style" c:type="GtkStyle*"/>
49591             </parameter>
49592             <parameter name="window" transfer-ownership="none">
49593               <type name="Gdk.Window" c:type="GdkWindow*"/>
49594             </parameter>
49595             <parameter name="state_type" transfer-ownership="none">
49596               <type name="StateType" c:type="GtkStateType"/>
49597             </parameter>
49598             <parameter name="shadow_type" transfer-ownership="none">
49599               <type name="ShadowType" c:type="GtkShadowType"/>
49600             </parameter>
49601             <parameter name="area" transfer-ownership="none">
49602               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49603             </parameter>
49604             <parameter name="widget" transfer-ownership="none">
49605               <type name="Widget" c:type="GtkWidget*"/>
49606             </parameter>
49607             <parameter name="detail" transfer-ownership="none">
49608               <type name="utf8" c:type="gchar*"/>
49609             </parameter>
49610             <parameter name="x" transfer-ownership="none">
49611               <type name="gint" c:type="gint"/>
49612             </parameter>
49613             <parameter name="y" transfer-ownership="none">
49614               <type name="gint" c:type="gint"/>
49615             </parameter>
49616             <parameter name="width" transfer-ownership="none">
49617               <type name="gint" c:type="gint"/>
49618             </parameter>
49619             <parameter name="height" transfer-ownership="none">
49620               <type name="gint" c:type="gint"/>
49621             </parameter>
49622           </parameters>
49623         </callback>
49624       </field>
49625       <field name="draw_shadow_gap">
49626         <callback name="draw_shadow_gap">
49627           <return-value transfer-ownership="none">
49628             <type name="none" c:type="void"/>
49629           </return-value>
49630           <parameters>
49631             <parameter name="style" transfer-ownership="none">
49632               <type name="Style" c:type="GtkStyle*"/>
49633             </parameter>
49634             <parameter name="window" transfer-ownership="none">
49635               <type name="Gdk.Window" c:type="GdkWindow*"/>
49636             </parameter>
49637             <parameter name="state_type" transfer-ownership="none">
49638               <type name="StateType" c:type="GtkStateType"/>
49639             </parameter>
49640             <parameter name="shadow_type" transfer-ownership="none">
49641               <type name="ShadowType" c:type="GtkShadowType"/>
49642             </parameter>
49643             <parameter name="area" transfer-ownership="none">
49644               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49645             </parameter>
49646             <parameter name="widget" transfer-ownership="none">
49647               <type name="Widget" c:type="GtkWidget*"/>
49648             </parameter>
49649             <parameter name="detail" transfer-ownership="none">
49650               <type name="utf8" c:type="gchar*"/>
49651             </parameter>
49652             <parameter name="x" transfer-ownership="none">
49653               <type name="gint" c:type="gint"/>
49654             </parameter>
49655             <parameter name="y" transfer-ownership="none">
49656               <type name="gint" c:type="gint"/>
49657             </parameter>
49658             <parameter name="width" transfer-ownership="none">
49659               <type name="gint" c:type="gint"/>
49660             </parameter>
49661             <parameter name="height" transfer-ownership="none">
49662               <type name="gint" c:type="gint"/>
49663             </parameter>
49664             <parameter name="gap_side" transfer-ownership="none">
49665               <type name="PositionType" c:type="GtkPositionType"/>
49666             </parameter>
49667             <parameter name="gap_x" transfer-ownership="none">
49668               <type name="gint" c:type="gint"/>
49669             </parameter>
49670             <parameter name="gap_width" transfer-ownership="none">
49671               <type name="gint" c:type="gint"/>
49672             </parameter>
49673           </parameters>
49674         </callback>
49675       </field>
49676       <field name="draw_box_gap">
49677         <callback name="draw_box_gap">
49678           <return-value transfer-ownership="none">
49679             <type name="none" c:type="void"/>
49680           </return-value>
49681           <parameters>
49682             <parameter name="style" transfer-ownership="none">
49683               <type name="Style" c:type="GtkStyle*"/>
49684             </parameter>
49685             <parameter name="window" transfer-ownership="none">
49686               <type name="Gdk.Window" c:type="GdkWindow*"/>
49687             </parameter>
49688             <parameter name="state_type" transfer-ownership="none">
49689               <type name="StateType" c:type="GtkStateType"/>
49690             </parameter>
49691             <parameter name="shadow_type" transfer-ownership="none">
49692               <type name="ShadowType" c:type="GtkShadowType"/>
49693             </parameter>
49694             <parameter name="area" transfer-ownership="none">
49695               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49696             </parameter>
49697             <parameter name="widget" transfer-ownership="none">
49698               <type name="Widget" c:type="GtkWidget*"/>
49699             </parameter>
49700             <parameter name="detail" transfer-ownership="none">
49701               <type name="utf8" c:type="gchar*"/>
49702             </parameter>
49703             <parameter name="x" transfer-ownership="none">
49704               <type name="gint" c:type="gint"/>
49705             </parameter>
49706             <parameter name="y" transfer-ownership="none">
49707               <type name="gint" c:type="gint"/>
49708             </parameter>
49709             <parameter name="width" transfer-ownership="none">
49710               <type name="gint" c:type="gint"/>
49711             </parameter>
49712             <parameter name="height" transfer-ownership="none">
49713               <type name="gint" c:type="gint"/>
49714             </parameter>
49715             <parameter name="gap_side" transfer-ownership="none">
49716               <type name="PositionType" c:type="GtkPositionType"/>
49717             </parameter>
49718             <parameter name="gap_x" transfer-ownership="none">
49719               <type name="gint" c:type="gint"/>
49720             </parameter>
49721             <parameter name="gap_width" transfer-ownership="none">
49722               <type name="gint" c:type="gint"/>
49723             </parameter>
49724           </parameters>
49725         </callback>
49726       </field>
49727       <field name="draw_extension">
49728         <callback name="draw_extension">
49729           <return-value transfer-ownership="none">
49730             <type name="none" c:type="void"/>
49731           </return-value>
49732           <parameters>
49733             <parameter name="style" transfer-ownership="none">
49734               <type name="Style" c:type="GtkStyle*"/>
49735             </parameter>
49736             <parameter name="window" transfer-ownership="none">
49737               <type name="Gdk.Window" c:type="GdkWindow*"/>
49738             </parameter>
49739             <parameter name="state_type" transfer-ownership="none">
49740               <type name="StateType" c:type="GtkStateType"/>
49741             </parameter>
49742             <parameter name="shadow_type" transfer-ownership="none">
49743               <type name="ShadowType" c:type="GtkShadowType"/>
49744             </parameter>
49745             <parameter name="area" transfer-ownership="none">
49746               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49747             </parameter>
49748             <parameter name="widget" transfer-ownership="none">
49749               <type name="Widget" c:type="GtkWidget*"/>
49750             </parameter>
49751             <parameter name="detail" transfer-ownership="none">
49752               <type name="utf8" c:type="gchar*"/>
49753             </parameter>
49754             <parameter name="x" transfer-ownership="none">
49755               <type name="gint" c:type="gint"/>
49756             </parameter>
49757             <parameter name="y" transfer-ownership="none">
49758               <type name="gint" c:type="gint"/>
49759             </parameter>
49760             <parameter name="width" transfer-ownership="none">
49761               <type name="gint" c:type="gint"/>
49762             </parameter>
49763             <parameter name="height" transfer-ownership="none">
49764               <type name="gint" c:type="gint"/>
49765             </parameter>
49766             <parameter name="gap_side" transfer-ownership="none">
49767               <type name="PositionType" c:type="GtkPositionType"/>
49768             </parameter>
49769           </parameters>
49770         </callback>
49771       </field>
49772       <field name="draw_focus">
49773         <callback name="draw_focus">
49774           <return-value transfer-ownership="none">
49775             <type name="none" c:type="void"/>
49776           </return-value>
49777           <parameters>
49778             <parameter name="style" transfer-ownership="none">
49779               <type name="Style" c:type="GtkStyle*"/>
49780             </parameter>
49781             <parameter name="window" transfer-ownership="none">
49782               <type name="Gdk.Window" c:type="GdkWindow*"/>
49783             </parameter>
49784             <parameter name="state_type" transfer-ownership="none">
49785               <type name="StateType" c:type="GtkStateType"/>
49786             </parameter>
49787             <parameter name="area" transfer-ownership="none">
49788               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49789             </parameter>
49790             <parameter name="widget" transfer-ownership="none">
49791               <type name="Widget" c:type="GtkWidget*"/>
49792             </parameter>
49793             <parameter name="detail" transfer-ownership="none">
49794               <type name="utf8" c:type="gchar*"/>
49795             </parameter>
49796             <parameter name="x" transfer-ownership="none">
49797               <type name="gint" c:type="gint"/>
49798             </parameter>
49799             <parameter name="y" transfer-ownership="none">
49800               <type name="gint" c:type="gint"/>
49801             </parameter>
49802             <parameter name="width" transfer-ownership="none">
49803               <type name="gint" c:type="gint"/>
49804             </parameter>
49805             <parameter name="height" transfer-ownership="none">
49806               <type name="gint" c:type="gint"/>
49807             </parameter>
49808           </parameters>
49809         </callback>
49810       </field>
49811       <field name="draw_slider">
49812         <callback name="draw_slider">
49813           <return-value transfer-ownership="none">
49814             <type name="none" c:type="void"/>
49815           </return-value>
49816           <parameters>
49817             <parameter name="style" transfer-ownership="none">
49818               <type name="Style" c:type="GtkStyle*"/>
49819             </parameter>
49820             <parameter name="window" transfer-ownership="none">
49821               <type name="Gdk.Window" c:type="GdkWindow*"/>
49822             </parameter>
49823             <parameter name="state_type" transfer-ownership="none">
49824               <type name="StateType" c:type="GtkStateType"/>
49825             </parameter>
49826             <parameter name="shadow_type" transfer-ownership="none">
49827               <type name="ShadowType" c:type="GtkShadowType"/>
49828             </parameter>
49829             <parameter name="area" transfer-ownership="none">
49830               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49831             </parameter>
49832             <parameter name="widget" transfer-ownership="none">
49833               <type name="Widget" c:type="GtkWidget*"/>
49834             </parameter>
49835             <parameter name="detail" transfer-ownership="none">
49836               <type name="utf8" c:type="gchar*"/>
49837             </parameter>
49838             <parameter name="x" transfer-ownership="none">
49839               <type name="gint" c:type="gint"/>
49840             </parameter>
49841             <parameter name="y" transfer-ownership="none">
49842               <type name="gint" c:type="gint"/>
49843             </parameter>
49844             <parameter name="width" transfer-ownership="none">
49845               <type name="gint" c:type="gint"/>
49846             </parameter>
49847             <parameter name="height" transfer-ownership="none">
49848               <type name="gint" c:type="gint"/>
49849             </parameter>
49850             <parameter name="orientation" transfer-ownership="none">
49851               <type name="Orientation" c:type="GtkOrientation"/>
49852             </parameter>
49853           </parameters>
49854         </callback>
49855       </field>
49856       <field name="draw_handle">
49857         <callback name="draw_handle">
49858           <return-value transfer-ownership="none">
49859             <type name="none" c:type="void"/>
49860           </return-value>
49861           <parameters>
49862             <parameter name="style" transfer-ownership="none">
49863               <type name="Style" c:type="GtkStyle*"/>
49864             </parameter>
49865             <parameter name="window" transfer-ownership="none">
49866               <type name="Gdk.Window" c:type="GdkWindow*"/>
49867             </parameter>
49868             <parameter name="state_type" transfer-ownership="none">
49869               <type name="StateType" c:type="GtkStateType"/>
49870             </parameter>
49871             <parameter name="shadow_type" transfer-ownership="none">
49872               <type name="ShadowType" c:type="GtkShadowType"/>
49873             </parameter>
49874             <parameter name="area" transfer-ownership="none">
49875               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49876             </parameter>
49877             <parameter name="widget" transfer-ownership="none">
49878               <type name="Widget" c:type="GtkWidget*"/>
49879             </parameter>
49880             <parameter name="detail" transfer-ownership="none">
49881               <type name="utf8" c:type="gchar*"/>
49882             </parameter>
49883             <parameter name="x" transfer-ownership="none">
49884               <type name="gint" c:type="gint"/>
49885             </parameter>
49886             <parameter name="y" transfer-ownership="none">
49887               <type name="gint" c:type="gint"/>
49888             </parameter>
49889             <parameter name="width" transfer-ownership="none">
49890               <type name="gint" c:type="gint"/>
49891             </parameter>
49892             <parameter name="height" transfer-ownership="none">
49893               <type name="gint" c:type="gint"/>
49894             </parameter>
49895             <parameter name="orientation" transfer-ownership="none">
49896               <type name="Orientation" c:type="GtkOrientation"/>
49897             </parameter>
49898           </parameters>
49899         </callback>
49900       </field>
49901       <field name="draw_expander">
49902         <callback name="draw_expander">
49903           <return-value transfer-ownership="none">
49904             <type name="none" c:type="void"/>
49905           </return-value>
49906           <parameters>
49907             <parameter name="style" transfer-ownership="none">
49908               <type name="Style" c:type="GtkStyle*"/>
49909             </parameter>
49910             <parameter name="window" transfer-ownership="none">
49911               <type name="Gdk.Window" c:type="GdkWindow*"/>
49912             </parameter>
49913             <parameter name="state_type" transfer-ownership="none">
49914               <type name="StateType" c:type="GtkStateType"/>
49915             </parameter>
49916             <parameter name="area" transfer-ownership="none">
49917               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49918             </parameter>
49919             <parameter name="widget" transfer-ownership="none">
49920               <type name="Widget" c:type="GtkWidget*"/>
49921             </parameter>
49922             <parameter name="detail" transfer-ownership="none">
49923               <type name="utf8" c:type="gchar*"/>
49924             </parameter>
49925             <parameter name="x" transfer-ownership="none">
49926               <type name="gint" c:type="gint"/>
49927             </parameter>
49928             <parameter name="y" transfer-ownership="none">
49929               <type name="gint" c:type="gint"/>
49930             </parameter>
49931             <parameter name="expander_style" transfer-ownership="none">
49932               <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
49933             </parameter>
49934           </parameters>
49935         </callback>
49936       </field>
49937       <field name="draw_layout">
49938         <callback name="draw_layout">
49939           <return-value transfer-ownership="none">
49940             <type name="none" c:type="void"/>
49941           </return-value>
49942           <parameters>
49943             <parameter name="style" transfer-ownership="none">
49944               <type name="Style" c:type="GtkStyle*"/>
49945             </parameter>
49946             <parameter name="window" transfer-ownership="none">
49947               <type name="Gdk.Window" c:type="GdkWindow*"/>
49948             </parameter>
49949             <parameter name="state_type" transfer-ownership="none">
49950               <type name="StateType" c:type="GtkStateType"/>
49951             </parameter>
49952             <parameter name="use_text" transfer-ownership="none">
49953               <type name="gboolean" c:type="gboolean"/>
49954             </parameter>
49955             <parameter name="area" transfer-ownership="none">
49956               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49957             </parameter>
49958             <parameter name="widget" transfer-ownership="none">
49959               <type name="Widget" c:type="GtkWidget*"/>
49960             </parameter>
49961             <parameter name="detail" transfer-ownership="none">
49962               <type name="utf8" c:type="gchar*"/>
49963             </parameter>
49964             <parameter name="x" transfer-ownership="none">
49965               <type name="gint" c:type="gint"/>
49966             </parameter>
49967             <parameter name="y" transfer-ownership="none">
49968               <type name="gint" c:type="gint"/>
49969             </parameter>
49970             <parameter name="layout" transfer-ownership="none">
49971               <type name="Pango.Layout" c:type="PangoLayout*"/>
49972             </parameter>
49973           </parameters>
49974         </callback>
49975       </field>
49976       <field name="draw_resize_grip">
49977         <callback name="draw_resize_grip">
49978           <return-value transfer-ownership="none">
49979             <type name="none" c:type="void"/>
49980           </return-value>
49981           <parameters>
49982             <parameter name="style" transfer-ownership="none">
49983               <type name="Style" c:type="GtkStyle*"/>
49984             </parameter>
49985             <parameter name="window" transfer-ownership="none">
49986               <type name="Gdk.Window" c:type="GdkWindow*"/>
49987             </parameter>
49988             <parameter name="state_type" transfer-ownership="none">
49989               <type name="StateType" c:type="GtkStateType"/>
49990             </parameter>
49991             <parameter name="area" transfer-ownership="none">
49992               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
49993             </parameter>
49994             <parameter name="widget" transfer-ownership="none">
49995               <type name="Widget" c:type="GtkWidget*"/>
49996             </parameter>
49997             <parameter name="detail" transfer-ownership="none">
49998               <type name="utf8" c:type="gchar*"/>
49999             </parameter>
50000             <parameter name="edge" transfer-ownership="none">
50001               <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
50002             </parameter>
50003             <parameter name="x" transfer-ownership="none">
50004               <type name="gint" c:type="gint"/>
50005             </parameter>
50006             <parameter name="y" transfer-ownership="none">
50007               <type name="gint" c:type="gint"/>
50008             </parameter>
50009             <parameter name="width" transfer-ownership="none">
50010               <type name="gint" c:type="gint"/>
50011             </parameter>
50012             <parameter name="height" transfer-ownership="none">
50013               <type name="gint" c:type="gint"/>
50014             </parameter>
50015           </parameters>
50016         </callback>
50017       </field>
50018       <field name="draw_spinner">
50019         <callback name="draw_spinner">
50020           <return-value transfer-ownership="none">
50021             <type name="none" c:type="void"/>
50022           </return-value>
50023           <parameters>
50024             <parameter name="style" transfer-ownership="none">
50025               <type name="Style" c:type="GtkStyle*"/>
50026             </parameter>
50027             <parameter name="window" transfer-ownership="none">
50028               <type name="Gdk.Window" c:type="GdkWindow*"/>
50029             </parameter>
50030             <parameter name="state_type" transfer-ownership="none">
50031               <type name="StateType" c:type="GtkStateType"/>
50032             </parameter>
50033             <parameter name="area" transfer-ownership="none">
50034               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
50035             </parameter>
50036             <parameter name="widget" transfer-ownership="none">
50037               <type name="Widget" c:type="GtkWidget*"/>
50038             </parameter>
50039             <parameter name="detail" transfer-ownership="none">
50040               <type name="utf8" c:type="gchar*"/>
50041             </parameter>
50042             <parameter name="step" transfer-ownership="none">
50043               <type name="guint" c:type="guint"/>
50044             </parameter>
50045             <parameter name="x" transfer-ownership="none">
50046               <type name="gint" c:type="gint"/>
50047             </parameter>
50048             <parameter name="y" transfer-ownership="none">
50049               <type name="gint" c:type="gint"/>
50050             </parameter>
50051             <parameter name="width" transfer-ownership="none">
50052               <type name="gint" c:type="gint"/>
50053             </parameter>
50054             <parameter name="height" transfer-ownership="none">
50055               <type name="gint" c:type="gint"/>
50056             </parameter>
50057           </parameters>
50058         </callback>
50059       </field>
50060       <field name="_gtk_reserved1" introspectable="0">
50061         <callback name="_gtk_reserved1">
50062           <return-value transfer-ownership="none">
50063             <type name="none" c:type="void"/>
50064           </return-value>
50065         </callback>
50066       </field>
50067       <field name="_gtk_reserved2" introspectable="0">
50068         <callback name="_gtk_reserved2">
50069           <return-value transfer-ownership="none">
50070             <type name="none" c:type="void"/>
50071           </return-value>
50072         </callback>
50073       </field>
50074       <field name="_gtk_reserved3" introspectable="0">
50075         <callback name="_gtk_reserved3">
50076           <return-value transfer-ownership="none">
50077             <type name="none" c:type="void"/>
50078           </return-value>
50079         </callback>
50080       </field>
50081       <field name="_gtk_reserved4" introspectable="0">
50082         <callback name="_gtk_reserved4">
50083           <return-value transfer-ownership="none">
50084             <type name="none" c:type="void"/>
50085           </return-value>
50086         </callback>
50087       </field>
50088       <field name="_gtk_reserved5" introspectable="0">
50089         <callback name="_gtk_reserved5">
50090           <return-value transfer-ownership="none">
50091             <type name="none" c:type="void"/>
50092           </return-value>
50093         </callback>
50094       </field>
50095       <field name="_gtk_reserved6" introspectable="0">
50096         <callback name="_gtk_reserved6">
50097           <return-value transfer-ownership="none">
50098             <type name="none" c:type="void"/>
50099           </return-value>
50100         </callback>
50101       </field>
50102       <field name="_gtk_reserved7" introspectable="0">
50103         <callback name="_gtk_reserved7">
50104           <return-value transfer-ownership="none">
50105             <type name="none" c:type="void"/>
50106           </return-value>
50107         </callback>
50108       </field>
50109       <field name="_gtk_reserved8" introspectable="0">
50110         <callback name="_gtk_reserved8">
50111           <return-value transfer-ownership="none">
50112             <type name="none" c:type="void"/>
50113           </return-value>
50114         </callback>
50115       </field>
50116       <field name="_gtk_reserved9" introspectable="0">
50117         <callback name="_gtk_reserved9">
50118           <return-value transfer-ownership="none">
50119             <type name="none" c:type="void"/>
50120           </return-value>
50121         </callback>
50122       </field>
50123       <field name="_gtk_reserved10" introspectable="0">
50124         <callback name="_gtk_reserved10">
50125           <return-value transfer-ownership="none">
50126             <type name="none" c:type="void"/>
50127           </return-value>
50128         </callback>
50129       </field>
50130       <field name="_gtk_reserved11" introspectable="0">
50131         <callback name="_gtk_reserved11">
50132           <return-value transfer-ownership="none">
50133             <type name="none" c:type="void"/>
50134           </return-value>
50135         </callback>
50136       </field>
50137     </record>
50138     <constant name="TEXT_VIEW_PRIORITY_VALIDATE" value="5">
50139       <type name="gint" c:type="gint"/>
50140     </constant>
50141     <class name="Table"
50142            c:symbol-prefix="table"
50143            c:type="GtkTable"
50144            parent="Container"
50145            glib:type-name="GtkTable"
50146            glib:get-type="gtk_table_get_type"
50147            glib:type-struct="TableClass">
50148       <implements name="Atk.ImplementorIface"/>
50149       <implements name="Buildable"/>
50150       <implements name="SizeRequest"/>
50151       <constructor name="new" c:identifier="gtk_table_new">
50152         <return-value transfer-ownership="none">
50153           <type name="Widget" c:type="GtkWidget*"/>
50154         </return-value>
50155         <parameters>
50156           <parameter name="rows" transfer-ownership="none">
50157             <type name="guint" c:type="guint"/>
50158           </parameter>
50159           <parameter name="columns" transfer-ownership="none">
50160             <type name="guint" c:type="guint"/>
50161           </parameter>
50162           <parameter name="homogeneous" transfer-ownership="none">
50163             <type name="gboolean" c:type="gboolean"/>
50164           </parameter>
50165         </parameters>
50166       </constructor>
50167       <method name="attach" c:identifier="gtk_table_attach">
50168         <return-value transfer-ownership="none">
50169           <type name="none" c:type="void"/>
50170         </return-value>
50171         <parameters>
50172           <parameter name="child" transfer-ownership="none">
50173             <type name="Widget" c:type="GtkWidget*"/>
50174           </parameter>
50175           <parameter name="left_attach" transfer-ownership="none">
50176             <type name="guint" c:type="guint"/>
50177           </parameter>
50178           <parameter name="right_attach" transfer-ownership="none">
50179             <type name="guint" c:type="guint"/>
50180           </parameter>
50181           <parameter name="top_attach" transfer-ownership="none">
50182             <type name="guint" c:type="guint"/>
50183           </parameter>
50184           <parameter name="bottom_attach" transfer-ownership="none">
50185             <type name="guint" c:type="guint"/>
50186           </parameter>
50187           <parameter name="xoptions" transfer-ownership="none">
50188             <type name="AttachOptions" c:type="GtkAttachOptions"/>
50189           </parameter>
50190           <parameter name="yoptions" transfer-ownership="none">
50191             <type name="AttachOptions" c:type="GtkAttachOptions"/>
50192           </parameter>
50193           <parameter name="xpadding" transfer-ownership="none">
50194             <type name="guint" c:type="guint"/>
50195           </parameter>
50196           <parameter name="ypadding" transfer-ownership="none">
50197             <type name="guint" c:type="guint"/>
50198           </parameter>
50199         </parameters>
50200       </method>
50201       <method name="attach_defaults" c:identifier="gtk_table_attach_defaults">
50202         <return-value transfer-ownership="none">
50203           <type name="none" c:type="void"/>
50204         </return-value>
50205         <parameters>
50206           <parameter name="widget" transfer-ownership="none">
50207             <type name="Widget" c:type="GtkWidget*"/>
50208           </parameter>
50209           <parameter name="left_attach" transfer-ownership="none">
50210             <type name="guint" c:type="guint"/>
50211           </parameter>
50212           <parameter name="right_attach" transfer-ownership="none">
50213             <type name="guint" c:type="guint"/>
50214           </parameter>
50215           <parameter name="top_attach" transfer-ownership="none">
50216             <type name="guint" c:type="guint"/>
50217           </parameter>
50218           <parameter name="bottom_attach" transfer-ownership="none">
50219             <type name="guint" c:type="guint"/>
50220           </parameter>
50221         </parameters>
50222       </method>
50223       <method name="get_col_spacing" c:identifier="gtk_table_get_col_spacing">
50224         <doc xml:whitespace="preserve">Gets the amount of space between column @col, and
50225 column @col + 1. See gtk_table_set_col_spacing().</doc>
50226         <return-value transfer-ownership="none">
50227           <doc xml:whitespace="preserve">the column spacing</doc>
50228           <type name="guint" c:type="guint"/>
50229         </return-value>
50230         <parameters>
50231           <parameter name="column" transfer-ownership="none">
50232             <doc xml:whitespace="preserve">a column in the table, 0 indicates the first column</doc>
50233             <type name="guint" c:type="guint"/>
50234           </parameter>
50235         </parameters>
50236       </method>
50237       <method name="get_default_col_spacing"
50238               c:identifier="gtk_table_get_default_col_spacing">
50239         <doc xml:whitespace="preserve">Gets the default column spacing for the table. This is
50240 the spacing that will be used for newly added columns.
50241 (See gtk_table_set_col_spacings())</doc>
50242         <return-value transfer-ownership="none">
50243           <doc xml:whitespace="preserve">the default column spacing</doc>
50244           <type name="guint" c:type="guint"/>
50245         </return-value>
50246       </method>
50247       <method name="get_default_row_spacing"
50248               c:identifier="gtk_table_get_default_row_spacing">
50249         <doc xml:whitespace="preserve">Gets the default row spacing for the table. This is
50250 the spacing that will be used for newly added rows.
50251 (See gtk_table_set_row_spacings())</doc>
50252         <return-value transfer-ownership="none">
50253           <doc xml:whitespace="preserve">the default row spacing</doc>
50254           <type name="guint" c:type="guint"/>
50255         </return-value>
50256       </method>
50257       <method name="get_homogeneous" c:identifier="gtk_table_get_homogeneous">
50258         <doc xml:whitespace="preserve">Returns whether the table cells are all constrained to the same
50259 width and height. (See gtk_table_set_homogenous ())</doc>
50260         <return-value transfer-ownership="none">
50261           <doc xml:whitespace="preserve">%TRUE if the cells are all constrained to the same size</doc>
50262           <type name="gboolean" c:type="gboolean"/>
50263         </return-value>
50264       </method>
50265       <method name="get_row_spacing" c:identifier="gtk_table_get_row_spacing">
50266         <doc xml:whitespace="preserve">Gets the amount of space between row @row, and
50267 row @row + 1. See gtk_table_set_row_spacing().</doc>
50268         <return-value transfer-ownership="none">
50269           <doc xml:whitespace="preserve">the row spacing</doc>
50270           <type name="guint" c:type="guint"/>
50271         </return-value>
50272         <parameters>
50273           <parameter name="row" transfer-ownership="none">
50274             <doc xml:whitespace="preserve">a row in the table, 0 indicates the first row</doc>
50275             <type name="guint" c:type="guint"/>
50276           </parameter>
50277         </parameters>
50278       </method>
50279       <method name="get_size" c:identifier="gtk_table_get_size" version="2.22">
50280         <doc xml:whitespace="preserve">Returns the number of rows and columns in the table.</doc>
50281         <return-value transfer-ownership="none">
50282           <type name="none" c:type="void"/>
50283         </return-value>
50284         <parameters>
50285           <parameter name="rows"
50286                      direction="out"
50287                      caller-allocates="0"
50288                      transfer-ownership="full"
50289                      allow-none="1">
50290             <doc xml:whitespace="preserve">return location for the number of rows, or %NULL</doc>
50291             <type name="guint" c:type="guint*"/>
50292           </parameter>
50293           <parameter name="columns"
50294                      direction="out"
50295                      caller-allocates="0"
50296                      transfer-ownership="full"
50297                      allow-none="1">
50298             <doc xml:whitespace="preserve">return location for the number of columns, or %NULL</doc>
50299             <type name="guint" c:type="guint*"/>
50300           </parameter>
50301         </parameters>
50302       </method>
50303       <method name="resize" c:identifier="gtk_table_resize">
50304         <return-value transfer-ownership="none">
50305           <type name="none" c:type="void"/>
50306         </return-value>
50307         <parameters>
50308           <parameter name="rows" transfer-ownership="none">
50309             <type name="guint" c:type="guint"/>
50310           </parameter>
50311           <parameter name="columns" transfer-ownership="none">
50312             <type name="guint" c:type="guint"/>
50313           </parameter>
50314         </parameters>
50315       </method>
50316       <method name="set_col_spacing" c:identifier="gtk_table_set_col_spacing">
50317         <return-value transfer-ownership="none">
50318           <type name="none" c:type="void"/>
50319         </return-value>
50320         <parameters>
50321           <parameter name="column" transfer-ownership="none">
50322             <type name="guint" c:type="guint"/>
50323           </parameter>
50324           <parameter name="spacing" transfer-ownership="none">
50325             <type name="guint" c:type="guint"/>
50326           </parameter>
50327         </parameters>
50328       </method>
50329       <method name="set_col_spacings"
50330               c:identifier="gtk_table_set_col_spacings">
50331         <return-value transfer-ownership="none">
50332           <type name="none" c:type="void"/>
50333         </return-value>
50334         <parameters>
50335           <parameter name="spacing" transfer-ownership="none">
50336             <type name="guint" c:type="guint"/>
50337           </parameter>
50338         </parameters>
50339       </method>
50340       <method name="set_homogeneous" c:identifier="gtk_table_set_homogeneous">
50341         <return-value transfer-ownership="none">
50342           <type name="none" c:type="void"/>
50343         </return-value>
50344         <parameters>
50345           <parameter name="homogeneous" transfer-ownership="none">
50346             <type name="gboolean" c:type="gboolean"/>
50347           </parameter>
50348         </parameters>
50349       </method>
50350       <method name="set_row_spacing" c:identifier="gtk_table_set_row_spacing">
50351         <return-value transfer-ownership="none">
50352           <type name="none" c:type="void"/>
50353         </return-value>
50354         <parameters>
50355           <parameter name="row" transfer-ownership="none">
50356             <type name="guint" c:type="guint"/>
50357           </parameter>
50358           <parameter name="spacing" transfer-ownership="none">
50359             <type name="guint" c:type="guint"/>
50360           </parameter>
50361         </parameters>
50362       </method>
50363       <method name="set_row_spacings"
50364               c:identifier="gtk_table_set_row_spacings">
50365         <return-value transfer-ownership="none">
50366           <type name="none" c:type="void"/>
50367         </return-value>
50368         <parameters>
50369           <parameter name="spacing" transfer-ownership="none">
50370             <type name="guint" c:type="guint"/>
50371           </parameter>
50372         </parameters>
50373       </method>
50374       <property name="column-spacing" writable="1" transfer-ownership="none">
50375         <type name="guint"/>
50376       </property>
50377       <property name="homogeneous" writable="1" transfer-ownership="none">
50378         <type name="gboolean"/>
50379       </property>
50380       <property name="n-columns" writable="1" transfer-ownership="none">
50381         <type name="guint"/>
50382       </property>
50383       <property name="n-rows" writable="1" transfer-ownership="none">
50384         <type name="guint"/>
50385       </property>
50386       <property name="row-spacing" writable="1" transfer-ownership="none">
50387         <type name="guint"/>
50388       </property>
50389       <field name="container">
50390         <type name="Container" c:type="GtkContainer"/>
50391       </field>
50392       <field name="priv" readable="0" private="1">
50393         <type name="TablePrivate" c:type="GtkTablePrivate*"/>
50394       </field>
50395     </class>
50396     <record name="TableChild" c:type="GtkTableChild">
50397       <field name="widget" writable="1">
50398         <type name="Widget" c:type="GtkWidget*"/>
50399       </field>
50400       <field name="left_attach" writable="1">
50401         <type name="guint16" c:type="guint16"/>
50402       </field>
50403       <field name="right_attach" writable="1">
50404         <type name="guint16" c:type="guint16"/>
50405       </field>
50406       <field name="top_attach" writable="1">
50407         <type name="guint16" c:type="guint16"/>
50408       </field>
50409       <field name="bottom_attach" writable="1">
50410         <type name="guint16" c:type="guint16"/>
50411       </field>
50412       <field name="xpadding" writable="1">
50413         <type name="guint16" c:type="guint16"/>
50414       </field>
50415       <field name="ypadding" writable="1">
50416         <type name="guint16" c:type="guint16"/>
50417       </field>
50418       <field name="xexpand" writable="1" bits="1">
50419         <type name="guint" c:type="guint"/>
50420       </field>
50421       <field name="yexpand" writable="1" bits="1">
50422         <type name="guint" c:type="guint"/>
50423       </field>
50424       <field name="xshrink" writable="1" bits="1">
50425         <type name="guint" c:type="guint"/>
50426       </field>
50427       <field name="yshrink" writable="1" bits="1">
50428         <type name="guint" c:type="guint"/>
50429       </field>
50430       <field name="xfill" writable="1" bits="1">
50431         <type name="guint" c:type="guint"/>
50432       </field>
50433       <field name="yfill" writable="1" bits="1">
50434         <type name="guint" c:type="guint"/>
50435       </field>
50436     </record>
50437     <record name="TableClass"
50438             c:type="GtkTableClass"
50439             glib:is-gtype-struct-for="Table">
50440       <field name="parent_class">
50441         <type name="ContainerClass" c:type="GtkContainerClass"/>
50442       </field>
50443     </record>
50444     <record name="TablePrivate" c:type="GtkTablePrivate" disguised="1">
50445     </record>
50446     <record name="TableRowCol" c:type="GtkTableRowCol">
50447       <field name="requisition" writable="1">
50448         <type name="guint16" c:type="guint16"/>
50449       </field>
50450       <field name="allocation" writable="1">
50451         <type name="guint16" c:type="guint16"/>
50452       </field>
50453       <field name="spacing" writable="1">
50454         <type name="guint16" c:type="guint16"/>
50455       </field>
50456       <field name="need_expand" writable="1" bits="1">
50457         <type name="guint" c:type="guint"/>
50458       </field>
50459       <field name="need_shrink" writable="1" bits="1">
50460         <type name="guint" c:type="guint"/>
50461       </field>
50462       <field name="expand" writable="1" bits="1">
50463         <type name="guint" c:type="guint"/>
50464       </field>
50465       <field name="shrink" writable="1" bits="1">
50466         <type name="guint" c:type="guint"/>
50467       </field>
50468       <field name="empty" writable="1" bits="1">
50469         <type name="guint" c:type="guint"/>
50470       </field>
50471     </record>
50472     <record name="TargetEntry" c:type="GtkTargetEntry">
50473       <field name="target" writable="1">
50474         <type name="utf8" c:type="gchar*"/>
50475       </field>
50476       <field name="flags" writable="1">
50477         <type name="guint" c:type="guint"/>
50478       </field>
50479       <field name="info" writable="1">
50480         <type name="guint" c:type="guint"/>
50481       </field>
50482     </record>
50483     <bitfield name="TargetFlags"
50484               glib:type-name="GtkTargetFlags"
50485               glib:get-type="gtk_target_flags_get_type"
50486               c:type="GtkTargetFlags">
50487       <member name="same_app"
50488               value="1"
50489               c:identifier="GTK_TARGET_SAME_APP"
50490               glib:nick="same-app"/>
50491       <member name="same_widget"
50492               value="2"
50493               c:identifier="GTK_TARGET_SAME_WIDGET"
50494               glib:nick="same-widget"/>
50495       <member name="other_app"
50496               value="4"
50497               c:identifier="GTK_TARGET_OTHER_APP"
50498               glib:nick="other-app"/>
50499       <member name="other_widget"
50500               value="8"
50501               c:identifier="GTK_TARGET_OTHER_WIDGET"
50502               glib:nick="other-widget"/>
50503     </bitfield>
50504     <record name="TargetList"
50505             c:type="GtkTargetList"
50506             glib:type-name="GtkTargetList"
50507             glib:get-type="gtk_target_list_get_type"
50508             c:symbol-prefix="target_list">
50509       <field name="list" writable="1">
50510         <type name="GLib.List" c:type="GList*">
50511           <type name="gpointer" c:type="gpointer"/>
50512         </type>
50513       </field>
50514       <field name="ref_count" writable="1">
50515         <type name="guint" c:type="guint"/>
50516       </field>
50517       <constructor name="new" c:identifier="gtk_target_list_new">
50518         <doc xml:whitespace="preserve">Creates a new #GtkTargetList from an array of #GtkTargetEntry.</doc>
50519         <return-value transfer-ownership="full">
50520           <doc xml:whitespace="preserve">the new #GtkTargetList.</doc>
50521           <type name="TargetList" c:type="GtkTargetList*"/>
50522         </return-value>
50523         <parameters>
50524           <parameter name="targets" transfer-ownership="none">
50525             <doc xml:whitespace="preserve">Pointer to an array of #GtkTargetEntry</doc>
50526             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
50527           </parameter>
50528           <parameter name="ntargets" transfer-ownership="none">
50529             <doc xml:whitespace="preserve">number of entries in @targets.</doc>
50530             <type name="guint" c:type="guint"/>
50531           </parameter>
50532         </parameters>
50533       </constructor>
50534       <method name="add" c:identifier="gtk_target_list_add">
50535         <doc xml:whitespace="preserve">Appends another target to a #GtkTargetList.</doc>
50536         <return-value transfer-ownership="none">
50537           <type name="none" c:type="void"/>
50538         </return-value>
50539         <parameters>
50540           <parameter name="target" transfer-ownership="none">
50541             <doc xml:whitespace="preserve">the interned atom representing the target</doc>
50542             <type name="Gdk.Atom" c:type="GdkAtom"/>
50543           </parameter>
50544           <parameter name="flags" transfer-ownership="none">
50545             <doc xml:whitespace="preserve">the flags for this target</doc>
50546             <type name="guint" c:type="guint"/>
50547           </parameter>
50548           <parameter name="info" transfer-ownership="none">
50549             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
50550             <type name="guint" c:type="guint"/>
50551           </parameter>
50552         </parameters>
50553       </method>
50554       <method name="add_image_targets"
50555               c:identifier="gtk_target_list_add_image_targets"
50556               version="2.6">
50557         <doc xml:whitespace="preserve">Appends the image targets supported by #GtkSelection to
50558 the target list. All targets are added with the same @info.</doc>
50559         <return-value transfer-ownership="none">
50560           <type name="none" c:type="void"/>
50561         </return-value>
50562         <parameters>
50563           <parameter name="info" transfer-ownership="none">
50564             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
50565             <type name="guint" c:type="guint"/>
50566           </parameter>
50567           <parameter name="writable" transfer-ownership="none">
50568             <doc xml:whitespace="preserve">whether to add only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
50569             <type name="gboolean" c:type="gboolean"/>
50570           </parameter>
50571         </parameters>
50572       </method>
50573       <method name="add_rich_text_targets"
50574               c:identifier="gtk_target_list_add_rich_text_targets"
50575               version="2.10">
50576         <doc xml:whitespace="preserve">Appends the rich text targets registered with
50577 gtk_text_buffer_register_serialize_format() or
50578 gtk_text_buffer_register_deserialize_format() to the target list. All
50579 targets are added with the same @info.</doc>
50580         <return-value transfer-ownership="none">
50581           <type name="none" c:type="void"/>
50582         </return-value>
50583         <parameters>
50584           <parameter name="info" transfer-ownership="none">
50585             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
50586             <type name="guint" c:type="guint"/>
50587           </parameter>
50588           <parameter name="deserializable" transfer-ownership="none">
50589             <doc xml:whitespace="preserve">if %TRUE, then deserializable rich text formats will be added, serializable formats otherwise.</doc>
50590             <type name="gboolean" c:type="gboolean"/>
50591           </parameter>
50592           <parameter name="buffer" transfer-ownership="none">
50593             <doc xml:whitespace="preserve">a #GtkTextBuffer.</doc>
50594             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
50595           </parameter>
50596         </parameters>
50597       </method>
50598       <method name="add_table" c:identifier="gtk_target_list_add_table">
50599         <doc xml:whitespace="preserve">Prepends a table of #GtkTargetEntry to a target list.</doc>
50600         <return-value transfer-ownership="none">
50601           <type name="none" c:type="void"/>
50602         </return-value>
50603         <parameters>
50604           <parameter name="targets" transfer-ownership="none">
50605             <doc xml:whitespace="preserve">the table of #GtkTargetEntry</doc>
50606             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
50607           </parameter>
50608           <parameter name="ntargets" transfer-ownership="none">
50609             <doc xml:whitespace="preserve">number of targets in the table</doc>
50610             <type name="guint" c:type="guint"/>
50611           </parameter>
50612         </parameters>
50613       </method>
50614       <method name="add_text_targets"
50615               c:identifier="gtk_target_list_add_text_targets"
50616               version="2.6">
50617         <doc xml:whitespace="preserve">Appends the text targets supported by #GtkSelection to
50618 the target list. All targets are added with the same @info.</doc>
50619         <return-value transfer-ownership="none">
50620           <type name="none" c:type="void"/>
50621         </return-value>
50622         <parameters>
50623           <parameter name="info" transfer-ownership="none">
50624             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
50625             <type name="guint" c:type="guint"/>
50626           </parameter>
50627         </parameters>
50628       </method>
50629       <method name="add_uri_targets"
50630               c:identifier="gtk_target_list_add_uri_targets"
50631               version="2.6">
50632         <doc xml:whitespace="preserve">Appends the URI targets supported by #GtkSelection to
50633 the target list. All targets are added with the same @info.</doc>
50634         <return-value transfer-ownership="none">
50635           <type name="none" c:type="void"/>
50636         </return-value>
50637         <parameters>
50638           <parameter name="info" transfer-ownership="none">
50639             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
50640             <type name="guint" c:type="guint"/>
50641           </parameter>
50642         </parameters>
50643       </method>
50644       <method name="find" c:identifier="gtk_target_list_find">
50645         <doc xml:whitespace="preserve">Looks up a given target in a #GtkTargetList.</doc>
50646         <return-value transfer-ownership="none">
50647           <doc xml:whitespace="preserve">%TRUE if the target was found, otherwise %FALSE</doc>
50648           <type name="gboolean" c:type="gboolean"/>
50649         </return-value>
50650         <parameters>
50651           <parameter name="target" transfer-ownership="none">
50652             <doc xml:whitespace="preserve">an interned atom representing the target to search for</doc>
50653             <type name="Gdk.Atom" c:type="GdkAtom"/>
50654           </parameter>
50655           <parameter name="info" transfer-ownership="none">
50656             <doc xml:whitespace="preserve">a pointer to the location to store application info for target, or %NULL</doc>
50657             <type name="guint" c:type="guint*"/>
50658           </parameter>
50659         </parameters>
50660       </method>
50661       <method name="ref" c:identifier="gtk_target_list_ref">
50662         <doc xml:whitespace="preserve">Increases the reference count of a #GtkTargetList by one.</doc>
50663         <return-value transfer-ownership="full">
50664           <doc xml:whitespace="preserve">the passed in #GtkTargetList.</doc>
50665           <type name="TargetList" c:type="GtkTargetList*"/>
50666         </return-value>
50667       </method>
50668       <method name="remove" c:identifier="gtk_target_list_remove">
50669         <doc xml:whitespace="preserve">Removes a target from a target list.</doc>
50670         <return-value transfer-ownership="none">
50671           <type name="none" c:type="void"/>
50672         </return-value>
50673         <parameters>
50674           <parameter name="target" transfer-ownership="none">
50675             <doc xml:whitespace="preserve">the interned atom representing the target</doc>
50676             <type name="Gdk.Atom" c:type="GdkAtom"/>
50677           </parameter>
50678         </parameters>
50679       </method>
50680       <method name="unref" c:identifier="gtk_target_list_unref">
50681         <doc xml:whitespace="preserve">Decreases the reference count of a #GtkTargetList by one.
50682 If the resulting reference count is zero, frees the list.</doc>
50683         <return-value transfer-ownership="none">
50684           <type name="none" c:type="void"/>
50685         </return-value>
50686       </method>
50687     </record>
50688     <record name="TargetPair" c:type="GtkTargetPair">
50689       <field name="target" writable="1">
50690         <type name="Gdk.Atom" c:type="GdkAtom"/>
50691       </field>
50692       <field name="flags" writable="1">
50693         <type name="guint" c:type="guint"/>
50694       </field>
50695       <field name="info" writable="1">
50696         <type name="guint" c:type="guint"/>
50697       </field>
50698     </record>
50699     <class name="TearoffMenuItem"
50700            c:symbol-prefix="tearoff_menu_item"
50701            c:type="GtkTearoffMenuItem"
50702            parent="MenuItem"
50703            glib:type-name="GtkTearoffMenuItem"
50704            glib:get-type="gtk_tearoff_menu_item_get_type"
50705            glib:type-struct="TearoffMenuItemClass">
50706       <implements name="Atk.ImplementorIface"/>
50707       <implements name="Activatable"/>
50708       <implements name="Buildable"/>
50709       <implements name="SizeRequest"/>
50710       <constructor name="new" c:identifier="gtk_tearoff_menu_item_new">
50711         <return-value transfer-ownership="none">
50712           <type name="Widget" c:type="GtkWidget*"/>
50713         </return-value>
50714       </constructor>
50715       <field name="menu_item">
50716         <type name="MenuItem" c:type="GtkMenuItem"/>
50717       </field>
50718       <field name="priv" readable="0" private="1">
50719         <type name="TearoffMenuItemPrivate"
50720               c:type="GtkTearoffMenuItemPrivate*"/>
50721       </field>
50722     </class>
50723     <record name="TearoffMenuItemClass"
50724             c:type="GtkTearoffMenuItemClass"
50725             glib:is-gtype-struct-for="TearoffMenuItem">
50726       <field name="parent_class">
50727         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
50728       </field>
50729       <field name="_gtk_reserved1" introspectable="0">
50730         <callback name="_gtk_reserved1">
50731           <return-value transfer-ownership="none">
50732             <type name="none" c:type="void"/>
50733           </return-value>
50734         </callback>
50735       </field>
50736       <field name="_gtk_reserved2" introspectable="0">
50737         <callback name="_gtk_reserved2">
50738           <return-value transfer-ownership="none">
50739             <type name="none" c:type="void"/>
50740           </return-value>
50741         </callback>
50742       </field>
50743       <field name="_gtk_reserved3" introspectable="0">
50744         <callback name="_gtk_reserved3">
50745           <return-value transfer-ownership="none">
50746             <type name="none" c:type="void"/>
50747           </return-value>
50748         </callback>
50749       </field>
50750       <field name="_gtk_reserved4" introspectable="0">
50751         <callback name="_gtk_reserved4">
50752           <return-value transfer-ownership="none">
50753             <type name="none" c:type="void"/>
50754           </return-value>
50755         </callback>
50756       </field>
50757     </record>
50758     <record name="TearoffMenuItemPrivate"
50759             c:type="GtkTearoffMenuItemPrivate"
50760             disguised="1">
50761     </record>
50762     <record name="TextAppearance" c:type="GtkTextAppearance">
50763       <field name="bg_color" writable="1">
50764         <type name="Gdk.Color" c:type="GdkColor"/>
50765       </field>
50766       <field name="fg_color" writable="1">
50767         <type name="Gdk.Color" c:type="GdkColor"/>
50768       </field>
50769       <field name="rise" writable="1">
50770         <type name="gint" c:type="gint"/>
50771       </field>
50772       <field name="padding1" writable="1">
50773         <type name="gpointer" c:type="gpointer"/>
50774       </field>
50775       <field name="underline" writable="1" bits="4">
50776         <type name="guint" c:type="guint"/>
50777       </field>
50778       <field name="strikethrough" writable="1" bits="1">
50779         <type name="guint" c:type="guint"/>
50780       </field>
50781       <field name="draw_bg" writable="1" bits="1">
50782         <type name="guint" c:type="guint"/>
50783       </field>
50784       <field name="inside_selection" writable="1" bits="1">
50785         <type name="guint" c:type="guint"/>
50786       </field>
50787       <field name="is_text" writable="1" bits="1">
50788         <type name="guint" c:type="guint"/>
50789       </field>
50790       <field name="pad1" writable="1" bits="1">
50791         <type name="guint" c:type="guint"/>
50792       </field>
50793       <field name="pad2" writable="1" bits="1">
50794         <type name="guint" c:type="guint"/>
50795       </field>
50796       <field name="pad3" writable="1" bits="1">
50797         <type name="guint" c:type="guint"/>
50798       </field>
50799       <field name="pad4" writable="1" bits="1">
50800         <type name="guint" c:type="guint"/>
50801       </field>
50802     </record>
50803     <record name="TextAttributes"
50804             c:type="GtkTextAttributes"
50805             glib:type-name="GtkTextAttributes"
50806             glib:get-type="gtk_text_attributes_get_type"
50807             c:symbol-prefix="text_attributes">
50808       <field name="refcount" writable="1">
50809         <type name="guint" c:type="guint"/>
50810       </field>
50811       <field name="appearance" writable="1">
50812         <type name="TextAppearance" c:type="GtkTextAppearance"/>
50813       </field>
50814       <field name="justification" writable="1">
50815         <type name="Justification" c:type="GtkJustification"/>
50816       </field>
50817       <field name="direction" writable="1">
50818         <type name="TextDirection" c:type="GtkTextDirection"/>
50819       </field>
50820       <field name="font" writable="1">
50821         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
50822       </field>
50823       <field name="font_scale" writable="1">
50824         <type name="gdouble" c:type="gdouble"/>
50825       </field>
50826       <field name="left_margin" writable="1">
50827         <type name="gint" c:type="gint"/>
50828       </field>
50829       <field name="indent" writable="1">
50830         <type name="gint" c:type="gint"/>
50831       </field>
50832       <field name="right_margin" writable="1">
50833         <type name="gint" c:type="gint"/>
50834       </field>
50835       <field name="pixels_above_lines" writable="1">
50836         <type name="gint" c:type="gint"/>
50837       </field>
50838       <field name="pixels_below_lines" writable="1">
50839         <type name="gint" c:type="gint"/>
50840       </field>
50841       <field name="pixels_inside_wrap" writable="1">
50842         <type name="gint" c:type="gint"/>
50843       </field>
50844       <field name="tabs" writable="1">
50845         <type name="Pango.TabArray" c:type="PangoTabArray*"/>
50846       </field>
50847       <field name="wrap_mode" writable="1">
50848         <type name="WrapMode" c:type="GtkWrapMode"/>
50849       </field>
50850       <field name="language" writable="1">
50851         <type name="Pango.Language" c:type="PangoLanguage*"/>
50852       </field>
50853       <field name="pg_bg_color" writable="1">
50854         <type name="Gdk.Color" c:type="GdkColor*"/>
50855       </field>
50856       <field name="invisible" writable="1" bits="1">
50857         <type name="guint" c:type="guint"/>
50858       </field>
50859       <field name="bg_full_height" writable="1" bits="1">
50860         <type name="guint" c:type="guint"/>
50861       </field>
50862       <field name="editable" writable="1" bits="1">
50863         <type name="guint" c:type="guint"/>
50864       </field>
50865       <field name="pad1" writable="1" bits="1">
50866         <type name="guint" c:type="guint"/>
50867       </field>
50868       <field name="pad2" writable="1" bits="1">
50869         <type name="guint" c:type="guint"/>
50870       </field>
50871       <field name="pad3" writable="1" bits="1">
50872         <type name="guint" c:type="guint"/>
50873       </field>
50874       <field name="pad4" writable="1" bits="1">
50875         <type name="guint" c:type="guint"/>
50876       </field>
50877       <constructor name="new" c:identifier="gtk_text_attributes_new">
50878         <doc xml:whitespace="preserve">Creates a #GtkTextAttributes, which describes
50879 a set of properties on some text.</doc>
50880         <return-value transfer-ownership="full">
50881           <doc xml:whitespace="preserve">a new #GtkTextAttributes</doc>
50882           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
50883         </return-value>
50884       </constructor>
50885       <method name="copy" c:identifier="gtk_text_attributes_copy">
50886         <doc xml:whitespace="preserve">Copies @src and returns a new #GtkTextAttributes.</doc>
50887         <return-value transfer-ownership="full">
50888           <doc xml:whitespace="preserve">a copy of @src</doc>
50889           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
50890         </return-value>
50891       </method>
50892       <method name="copy_values"
50893               c:identifier="gtk_text_attributes_copy_values">
50894         <doc xml:whitespace="preserve">Copies the values from @src to @dest so that @dest has the same values
50895 as @src. Frees existing values in @dest.</doc>
50896         <return-value transfer-ownership="none">
50897           <type name="none" c:type="void"/>
50898         </return-value>
50899         <parameters>
50900           <parameter name="dest" transfer-ownership="none">
50901             <doc xml:whitespace="preserve">another #GtkTextAttributes</doc>
50902             <type name="TextAttributes" c:type="GtkTextAttributes*"/>
50903           </parameter>
50904         </parameters>
50905       </method>
50906       <method name="ref" c:identifier="gtk_text_attributes_ref">
50907         <doc xml:whitespace="preserve">Increments the reference count on @values.</doc>
50908         <return-value transfer-ownership="full">
50909           <doc xml:whitespace="preserve">the #GtkTextAttributes that were passed in</doc>
50910           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
50911         </return-value>
50912       </method>
50913       <method name="unref" c:identifier="gtk_text_attributes_unref">
50914         <doc xml:whitespace="preserve">Decrements the reference count on @values, freeing the structure
50915 if the reference count reaches 0.</doc>
50916         <return-value transfer-ownership="none">
50917           <type name="none" c:type="void"/>
50918         </return-value>
50919       </method>
50920     </record>
50921     <record name="TextBTree" c:type="GtkTextBTree" disguised="1">
50922     </record>
50923     <class name="TextBuffer"
50924            c:symbol-prefix="text_buffer"
50925            c:type="GtkTextBuffer"
50926            parent="GObject.Object"
50927            glib:type-name="GtkTextBuffer"
50928            glib:get-type="gtk_text_buffer_get_type"
50929            glib:type-struct="TextBufferClass">
50930       <constructor name="new" c:identifier="gtk_text_buffer_new">
50931         <doc xml:whitespace="preserve">Creates a new text buffer.</doc>
50932         <return-value transfer-ownership="full">
50933           <doc xml:whitespace="preserve">a new text buffer</doc>
50934           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
50935         </return-value>
50936         <parameters>
50937           <parameter name="table" transfer-ownership="none" allow-none="1">
50938             <doc xml:whitespace="preserve">a tag table, or %NULL to create a new one</doc>
50939             <type name="TextTagTable" c:type="GtkTextTagTable*"/>
50940           </parameter>
50941         </parameters>
50942       </constructor>
50943       <method name="add_mark"
50944               c:identifier="gtk_text_buffer_add_mark"
50945               version="2.12">
50946         <doc xml:whitespace="preserve">Adds the mark at position @where. The mark must not be added to
50947 another buffer, and if its name is not %NULL then there must not
50948 be another mark in the buffer with the same name.
50949 Emits the "mark-set" signal as notification of the mark's initial
50950 placement.</doc>
50951         <return-value transfer-ownership="none">
50952           <type name="none" c:type="void"/>
50953         </return-value>
50954         <parameters>
50955           <parameter name="mark" transfer-ownership="none">
50956             <doc xml:whitespace="preserve">the mark to add</doc>
50957             <type name="TextMark" c:type="GtkTextMark*"/>
50958           </parameter>
50959           <parameter name="where" transfer-ownership="none">
50960             <doc xml:whitespace="preserve">location to place mark</doc>
50961             <type name="TextIter" c:type="GtkTextIter*"/>
50962           </parameter>
50963         </parameters>
50964       </method>
50965       <method name="add_selection_clipboard"
50966               c:identifier="gtk_text_buffer_add_selection_clipboard">
50967         <doc xml:whitespace="preserve">Adds @clipboard to the list of clipboards in which the selection 
50968 contents of @buffer are available. In most cases, @clipboard will be 
50969 the #GtkClipboard of type %GDK_SELECTION_PRIMARY for a view of @buffer.</doc>
50970         <return-value transfer-ownership="none">
50971           <type name="none" c:type="void"/>
50972         </return-value>
50973         <parameters>
50974           <parameter name="clipboard" transfer-ownership="none">
50975             <doc xml:whitespace="preserve">a #GtkClipboard</doc>
50976             <type name="Clipboard" c:type="GtkClipboard*"/>
50977           </parameter>
50978         </parameters>
50979       </method>
50980       <method name="apply_tag" c:identifier="gtk_text_buffer_apply_tag">
50981         <doc xml:whitespace="preserve">Emits the "apply-tag" signal on @buffer. The default
50982 handler for the signal applies @tag to the given range.</doc>
50983         <return-value transfer-ownership="none">
50984           <type name="none" c:type="void"/>
50985         </return-value>
50986         <parameters>
50987           <parameter name="tag" transfer-ownership="none">
50988             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
50989             <type name="TextTag" c:type="GtkTextTag*"/>
50990           </parameter>
50991           <parameter name="start" transfer-ownership="none">
50992             <doc xml:whitespace="preserve">one bound of range to be tagged</doc>
50993             <type name="TextIter" c:type="GtkTextIter*"/>
50994           </parameter>
50995           <parameter name="end" transfer-ownership="none">
50996             <doc xml:whitespace="preserve">other bound of range to be tagged</doc>
50997             <type name="TextIter" c:type="GtkTextIter*"/>
50998           </parameter>
50999         </parameters>
51000       </method>
51001       <method name="apply_tag_by_name"
51002               c:identifier="gtk_text_buffer_apply_tag_by_name">
51003         <doc xml:whitespace="preserve">Calls gtk_text_tag_table_lookup() on the buffer's tag table to
51004 get a #GtkTextTag, then calls gtk_text_buffer_apply_tag().</doc>
51005         <return-value transfer-ownership="none">
51006           <type name="none" c:type="void"/>
51007         </return-value>
51008         <parameters>
51009           <parameter name="name" transfer-ownership="none">
51010             <doc xml:whitespace="preserve">name of a named #GtkTextTag</doc>
51011             <type name="utf8" c:type="gchar*"/>
51012           </parameter>
51013           <parameter name="start" transfer-ownership="none">
51014             <doc xml:whitespace="preserve">one bound of range to be tagged</doc>
51015             <type name="TextIter" c:type="GtkTextIter*"/>
51016           </parameter>
51017           <parameter name="end" transfer-ownership="none">
51018             <doc xml:whitespace="preserve">other bound of range to be tagged</doc>
51019             <type name="TextIter" c:type="GtkTextIter*"/>
51020           </parameter>
51021         </parameters>
51022       </method>
51023       <method name="backspace"
51024               c:identifier="gtk_text_buffer_backspace"
51025               version="2.6">
51026         <doc xml:whitespace="preserve">Performs the appropriate action as if the user hit the delete
51027 key with the cursor at the position specified by @iter. In the
51028 normal case a single character will be deleted, but when
51029 combining accents are involved, more than one character can
51030 be deleted, and when precomposed character and accent combinations
51031 are involved, less than one character will be deleted.
51032 Because the buffer is modified, all outstanding iterators become 
51033 invalid after calling this function; however, the @iter will be
51034 re-initialized to point to the location where text was deleted.</doc>
51035         <return-value transfer-ownership="none">
51036           <doc xml:whitespace="preserve">%TRUE if the buffer was modified</doc>
51037           <type name="gboolean" c:type="gboolean"/>
51038         </return-value>
51039         <parameters>
51040           <parameter name="iter" transfer-ownership="none">
51041             <doc xml:whitespace="preserve">a position in @buffer</doc>
51042             <type name="TextIter" c:type="GtkTextIter*"/>
51043           </parameter>
51044           <parameter name="interactive" transfer-ownership="none">
51045             <doc xml:whitespace="preserve">whether the deletion is caused by user interaction</doc>
51046             <type name="gboolean" c:type="gboolean"/>
51047           </parameter>
51048           <parameter name="default_editable" transfer-ownership="none">
51049             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
51050             <type name="gboolean" c:type="gboolean"/>
51051           </parameter>
51052         </parameters>
51053       </method>
51054       <method name="begin_user_action"
51055               c:identifier="gtk_text_buffer_begin_user_action">
51056         <doc xml:whitespace="preserve">Called to indicate that the buffer operations between here and a
51057 call to gtk_text_buffer_end_user_action() are part of a single
51058 user-visible operation. The operations between
51059 gtk_text_buffer_begin_user_action() and
51060 gtk_text_buffer_end_user_action() can then be grouped when creating
51061 an undo stack. #GtkTextBuffer maintains a count of calls to
51062 gtk_text_buffer_begin_user_action() that have not been closed with
51063 a call to gtk_text_buffer_end_user_action(), and emits the 
51064 "begin-user-action" and "end-user-action" signals only for the 
51065 outermost pair of calls. This allows you to build user actions 
51066 from other user actions.
51067 The "interactive" buffer mutation functions, such as
51068 gtk_text_buffer_insert_interactive(), automatically call begin/end
51069 user action around the buffer operations they perform, so there's
51070 no need to add extra calls if you user action consists solely of a
51071 single call to one of those functions.</doc>
51072         <return-value transfer-ownership="none">
51073           <type name="none" c:type="void"/>
51074         </return-value>
51075       </method>
51076       <method name="copy_clipboard"
51077               c:identifier="gtk_text_buffer_copy_clipboard">
51078         <doc xml:whitespace="preserve">Copies the currently-selected text to a clipboard.</doc>
51079         <return-value transfer-ownership="none">
51080           <type name="none" c:type="void"/>
51081         </return-value>
51082         <parameters>
51083           <parameter name="clipboard" transfer-ownership="none">
51084             <doc xml:whitespace="preserve">the #GtkClipboard object to copy to</doc>
51085             <type name="Clipboard" c:type="GtkClipboard*"/>
51086           </parameter>
51087         </parameters>
51088       </method>
51089       <method name="create_child_anchor"
51090               c:identifier="gtk_text_buffer_create_child_anchor">
51091         <doc xml:whitespace="preserve">This is a convenience function which simply creates a child anchor
51092 with gtk_text_child_anchor_new() and inserts it into the buffer
51093 with gtk_text_buffer_insert_child_anchor(). The new anchor is
51094 owned by the buffer; no reference count is returned to
51095 the caller of gtk_text_buffer_create_child_anchor().</doc>
51096         <return-value transfer-ownership="none">
51097           <doc xml:whitespace="preserve">the created child anchor</doc>
51098           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
51099         </return-value>
51100         <parameters>
51101           <parameter name="iter" transfer-ownership="none">
51102             <doc xml:whitespace="preserve">location in the buffer</doc>
51103             <type name="TextIter" c:type="GtkTextIter*"/>
51104           </parameter>
51105         </parameters>
51106       </method>
51107       <method name="create_mark" c:identifier="gtk_text_buffer_create_mark">
51108         <doc xml:whitespace="preserve">Creates a mark at position @where. If @mark_name is %NULL, the mark
51109 is anonymous; otherwise, the mark can be retrieved by name using
51110 gtk_text_buffer_get_mark(). If a mark has left gravity, and text is
51111 inserted at the mark's current location, the mark will be moved to
51112 the left of the newly-inserted text. If the mark has right gravity
51113 (@left_gravity = %FALSE), the mark will end up on the right of
51114 newly-inserted text. The standard left-to-right cursor is a mark
51115 with right gravity (when you type, the cursor stays on the right
51116 side of the text you're typing).
51117 The caller of this function does &lt;emphasis&gt;not&lt;/emphasis&gt; own a 
51118 reference to the returned #GtkTextMark, so you can ignore the 
51119 return value if you like. Marks are owned by the buffer and go 
51120 away when the buffer does.
51121 Emits the "mark-set" signal as notification of the mark's initial
51122 placement.</doc>
51123         <return-value transfer-ownership="none">
51124           <doc xml:whitespace="preserve">the new #GtkTextMark object</doc>
51125           <type name="TextMark" c:type="GtkTextMark*"/>
51126         </return-value>
51127         <parameters>
51128           <parameter name="mark_name" transfer-ownership="none" allow-none="1">
51129             <doc xml:whitespace="preserve">name for mark, or %NULL</doc>
51130             <type name="utf8" c:type="gchar*"/>
51131           </parameter>
51132           <parameter name="where" transfer-ownership="none">
51133             <doc xml:whitespace="preserve">location to place mark</doc>
51134             <type name="TextIter" c:type="GtkTextIter*"/>
51135           </parameter>
51136           <parameter name="left_gravity" transfer-ownership="none">
51137             <doc xml:whitespace="preserve">whether the mark has left gravity</doc>
51138             <type name="gboolean" c:type="gboolean"/>
51139           </parameter>
51140         </parameters>
51141       </method>
51142       <method name="create_tag"
51143               c:identifier="gtk_text_buffer_create_tag"
51144               introspectable="0">
51145         <doc xml:whitespace="preserve">Creates a tag and adds it to the tag table for @buffer.
51146 Equivalent to calling gtk_text_tag_new() and then adding the
51147 tag to the buffer's tag table. The returned tag is owned by
51148 the buffer's tag table, so the ref count will be equal to one.
51149 If @tag_name is %NULL, the tag is anonymous.
51150 If @tag_name is non-%NULL, a tag called @tag_name must not already
51151 exist in the tag table for this buffer.
51152 The @first_property_name argument and subsequent arguments are a list
51153 of properties to set on the tag, as with g_object_set().</doc>
51154         <return-value transfer-ownership="none">
51155           <doc xml:whitespace="preserve">a new tag</doc>
51156           <type name="TextTag" c:type="GtkTextTag*"/>
51157         </return-value>
51158         <parameters>
51159           <parameter name="tag_name" transfer-ownership="none" allow-none="1">
51160             <doc xml:whitespace="preserve">name of the new tag, or %NULL</doc>
51161             <type name="utf8" c:type="gchar*"/>
51162           </parameter>
51163           <parameter name="first_property_name"
51164                      transfer-ownership="none"
51165                      allow-none="1">
51166             <doc xml:whitespace="preserve">name of first property to set, or %NULL</doc>
51167             <type name="utf8" c:type="gchar*"/>
51168           </parameter>
51169           <parameter transfer-ownership="none">
51170             <varargs>
51171             </varargs>
51172           </parameter>
51173         </parameters>
51174       </method>
51175       <method name="cut_clipboard"
51176               c:identifier="gtk_text_buffer_cut_clipboard">
51177         <doc xml:whitespace="preserve">Copies the currently-selected text to a clipboard, then deletes
51178 said text if it's editable.</doc>
51179         <return-value transfer-ownership="none">
51180           <type name="none" c:type="void"/>
51181         </return-value>
51182         <parameters>
51183           <parameter name="clipboard" transfer-ownership="none">
51184             <doc xml:whitespace="preserve">the #GtkClipboard object to cut to</doc>
51185             <type name="Clipboard" c:type="GtkClipboard*"/>
51186           </parameter>
51187           <parameter name="default_editable" transfer-ownership="none">
51188             <doc xml:whitespace="preserve">default editability of the buffer</doc>
51189             <type name="gboolean" c:type="gboolean"/>
51190           </parameter>
51191         </parameters>
51192       </method>
51193       <method name="delete" c:identifier="gtk_text_buffer_delete">
51194         <doc xml:whitespace="preserve">Deletes text between @start and @end. The order of @start and @end
51195 is not actually relevant; gtk_text_buffer_delete() will reorder
51196 them. This function actually emits the "delete-range" signal, and
51197 the default handler of that signal deletes the text. Because the
51198 buffer is modified, all outstanding iterators become invalid after
51199 calling this function; however, the @start and @end will be
51200 re-initialized to point to the location where text was deleted.</doc>
51201         <return-value transfer-ownership="none">
51202           <type name="none" c:type="void"/>
51203         </return-value>
51204         <parameters>
51205           <parameter name="start" transfer-ownership="none">
51206             <doc xml:whitespace="preserve">a position in @buffer</doc>
51207             <type name="TextIter" c:type="GtkTextIter*"/>
51208           </parameter>
51209           <parameter name="end" transfer-ownership="none">
51210             <doc xml:whitespace="preserve">another position in @buffer</doc>
51211             <type name="TextIter" c:type="GtkTextIter*"/>
51212           </parameter>
51213         </parameters>
51214       </method>
51215       <method name="delete_interactive"
51216               c:identifier="gtk_text_buffer_delete_interactive">
51217         <doc xml:whitespace="preserve">Deletes all &lt;emphasis&gt;editable&lt;/emphasis&gt; text in the given range.
51218 Calls gtk_text_buffer_delete() for each editable sub-range of
51219 [@start,@end). @start and @end are revalidated to point to
51220 the location of the last deleted range, or left untouched if
51221 no text was deleted.</doc>
51222         <return-value transfer-ownership="none">
51223           <doc xml:whitespace="preserve">whether some text was actually deleted</doc>
51224           <type name="gboolean" c:type="gboolean"/>
51225         </return-value>
51226         <parameters>
51227           <parameter name="start_iter" transfer-ownership="none">
51228             <doc xml:whitespace="preserve">start of range to delete</doc>
51229             <type name="TextIter" c:type="GtkTextIter*"/>
51230           </parameter>
51231           <parameter name="end_iter" transfer-ownership="none">
51232             <doc xml:whitespace="preserve">end of range</doc>
51233             <type name="TextIter" c:type="GtkTextIter*"/>
51234           </parameter>
51235           <parameter name="default_editable" transfer-ownership="none">
51236             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
51237             <type name="gboolean" c:type="gboolean"/>
51238           </parameter>
51239         </parameters>
51240       </method>
51241       <method name="delete_mark" c:identifier="gtk_text_buffer_delete_mark">
51242         <doc xml:whitespace="preserve">Deletes @mark, so that it's no longer located anywhere in the
51243 buffer. Removes the reference the buffer holds to the mark, so if
51244 you haven't called g_object_ref() on the mark, it will be freed. Even
51245 if the mark isn't freed, most operations on @mark become
51246 invalid, until it gets added to a buffer again with 
51247 gtk_text_buffer_add_mark(). Use gtk_text_mark_get_deleted() to  
51248 find out if a mark has been removed from its buffer.
51249 The "mark-deleted" signal will be emitted as notification after 
51250 the mark is deleted.</doc>
51251         <return-value transfer-ownership="none">
51252           <type name="none" c:type="void"/>
51253         </return-value>
51254         <parameters>
51255           <parameter name="mark" transfer-ownership="none">
51256             <doc xml:whitespace="preserve">a #GtkTextMark in @buffer</doc>
51257             <type name="TextMark" c:type="GtkTextMark*"/>
51258           </parameter>
51259         </parameters>
51260       </method>
51261       <method name="delete_mark_by_name"
51262               c:identifier="gtk_text_buffer_delete_mark_by_name">
51263         <doc xml:whitespace="preserve">Deletes the mark named @name; the mark must exist. See
51264 gtk_text_buffer_delete_mark() for details.</doc>
51265         <return-value transfer-ownership="none">
51266           <type name="none" c:type="void"/>
51267         </return-value>
51268         <parameters>
51269           <parameter name="name" transfer-ownership="none">
51270             <doc xml:whitespace="preserve">name of a mark in @buffer</doc>
51271             <type name="utf8" c:type="gchar*"/>
51272           </parameter>
51273         </parameters>
51274       </method>
51275       <method name="delete_selection"
51276               c:identifier="gtk_text_buffer_delete_selection">
51277         <doc xml:whitespace="preserve">Deletes the range between the "insert" and "selection_bound" marks,
51278 that is, the currently-selected text. If @interactive is %TRUE,
51279 the editability of the selection will be considered (users can't delete
51280 uneditable text).</doc>
51281         <return-value transfer-ownership="none">
51282           <doc xml:whitespace="preserve">whether there was a non-empty selection to delete</doc>
51283           <type name="gboolean" c:type="gboolean"/>
51284         </return-value>
51285         <parameters>
51286           <parameter name="interactive" transfer-ownership="none">
51287             <doc xml:whitespace="preserve">whether the deletion is caused by user interaction</doc>
51288             <type name="gboolean" c:type="gboolean"/>
51289           </parameter>
51290           <parameter name="default_editable" transfer-ownership="none">
51291             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
51292             <type name="gboolean" c:type="gboolean"/>
51293           </parameter>
51294         </parameters>
51295       </method>
51296       <method name="deserialize"
51297               c:identifier="gtk_text_buffer_deserialize"
51298               version="2.10"
51299               throws="1">
51300         <doc xml:whitespace="preserve">This function deserializes rich text in format @format and inserts
51301 it at @iter.
51302 gtk_text_buffer_register_deserialize_format() or
51303 gtk_text_buffer_register_deserialize_tagset() beforehand.</doc>
51304         <return-value transfer-ownership="none">
51305           <doc xml:whitespace="preserve">%TRUE on success, %FALSE otherwise.</doc>
51306           <type name="gboolean" c:type="gboolean"/>
51307         </return-value>
51308         <parameters>
51309           <parameter name="content_buffer" transfer-ownership="none">
51310             <doc xml:whitespace="preserve">the #GtkTextBuffer to deserialize into</doc>
51311             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
51312           </parameter>
51313           <parameter name="format" transfer-ownership="none">
51314             <doc xml:whitespace="preserve">the rich text format to use for deserializing</doc>
51315             <type name="Gdk.Atom" c:type="GdkAtom"/>
51316           </parameter>
51317           <parameter name="iter" transfer-ownership="none">
51318             <doc xml:whitespace="preserve">insertion point for the deserialized text</doc>
51319             <type name="TextIter" c:type="GtkTextIter*"/>
51320           </parameter>
51321           <parameter name="data" transfer-ownership="none">
51322             <doc xml:whitespace="preserve">data to deserialize</doc>
51323             <type name="guint8" c:type="guint8*"/>
51324           </parameter>
51325           <parameter name="length" transfer-ownership="none">
51326             <doc xml:whitespace="preserve">length of @data</doc>
51327             <type name="gulong" c:type="gsize"/>
51328           </parameter>
51329         </parameters>
51330       </method>
51331       <method name="deserialize_get_can_create_tags"
51332               c:identifier="gtk_text_buffer_deserialize_get_can_create_tags"
51333               version="2.10">
51334         <doc xml:whitespace="preserve">This functions returns the value set with
51335 gtk_text_buffer_deserialize_set_can_create_tags()</doc>
51336         <return-value transfer-ownership="none">
51337           <doc xml:whitespace="preserve">whether deserializing this format may create tags</doc>
51338           <type name="gboolean" c:type="gboolean"/>
51339         </return-value>
51340         <parameters>
51341           <parameter name="format" transfer-ownership="none">
51342             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format</doc>
51343             <type name="Gdk.Atom" c:type="GdkAtom"/>
51344           </parameter>
51345         </parameters>
51346       </method>
51347       <method name="deserialize_set_can_create_tags"
51348               c:identifier="gtk_text_buffer_deserialize_set_can_create_tags"
51349               version="2.10">
51350         <doc xml:whitespace="preserve">Use this function to allow a rich text deserialization function to
51351 create new tags in the receiving buffer. Note that using this
51352 function is almost always a bad idea, because the rich text
51353 functions you register should know how to map the rich text format
51354 they handler to your text buffers set of tags.
51355 The ability of creating new (arbitrary!) tags in the receiving buffer
51356 is meant for special rich text formats like the internal one that
51357 is registered using gtk_text_buffer_register_deserialize_tagset(),
51358 because that format is essentially a dump of the internal structure
51359 of the source buffer, including its tag names.
51360 You should allow creation of tags only if you know what you are
51361 doing, e.g. if you defined a tagset name for your application
51362 suite's text buffers and you know that it's fine to receive new
51363 tags from these buffers, because you know that your application can
51364 handle the newly created tags.</doc>
51365         <return-value transfer-ownership="none">
51366           <type name="none" c:type="void"/>
51367         </return-value>
51368         <parameters>
51369           <parameter name="format" transfer-ownership="none">
51370             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format</doc>
51371             <type name="Gdk.Atom" c:type="GdkAtom"/>
51372           </parameter>
51373           <parameter name="can_create_tags" transfer-ownership="none">
51374             <doc xml:whitespace="preserve">whether deserializing this format may create tags</doc>
51375             <type name="gboolean" c:type="gboolean"/>
51376           </parameter>
51377         </parameters>
51378       </method>
51379       <method name="end_user_action"
51380               c:identifier="gtk_text_buffer_end_user_action">
51381         <doc xml:whitespace="preserve">Should be paired with a call to gtk_text_buffer_begin_user_action().
51382 See that function for a full explanation.</doc>
51383         <return-value transfer-ownership="none">
51384           <type name="none" c:type="void"/>
51385         </return-value>
51386       </method>
51387       <method name="get_bounds" c:identifier="gtk_text_buffer_get_bounds">
51388         <doc xml:whitespace="preserve">Retrieves the first and last iterators in the buffer, i.e. the
51389 entire buffer lies within the range [@start,@end).</doc>
51390         <return-value transfer-ownership="none">
51391           <type name="none" c:type="void"/>
51392         </return-value>
51393         <parameters>
51394           <parameter name="start"
51395                      direction="out"
51396                      caller-allocates="1"
51397                      transfer-ownership="none">
51398             <doc xml:whitespace="preserve">iterator to initialize with first position in the buffer</doc>
51399             <type name="TextIter" c:type="GtkTextIter*"/>
51400           </parameter>
51401           <parameter name="end"
51402                      direction="out"
51403                      caller-allocates="1"
51404                      transfer-ownership="none">
51405             <doc xml:whitespace="preserve">iterator to initialize with the end iterator</doc>
51406             <type name="TextIter" c:type="GtkTextIter*"/>
51407           </parameter>
51408         </parameters>
51409       </method>
51410       <method name="get_char_count"
51411               c:identifier="gtk_text_buffer_get_char_count">
51412         <doc xml:whitespace="preserve">Gets the number of characters in the buffer; note that characters
51413 and bytes are not the same, you can't e.g. expect the contents of
51414 the buffer in string form to be this many bytes long. The character
51415 count is cached, so this function is very fast.</doc>
51416         <return-value transfer-ownership="none">
51417           <doc xml:whitespace="preserve">number of characters in the buffer</doc>
51418           <type name="gint" c:type="gint"/>
51419         </return-value>
51420       </method>
51421       <method name="get_copy_target_list"
51422               c:identifier="gtk_text_buffer_get_copy_target_list"
51423               version="2.10">
51424         <doc xml:whitespace="preserve">This function returns the list of targets this text buffer can
51425 provide for copying and as DND source. The targets in the list are
51426 added with %info values from the #GtkTextBufferTargetInfo enum,
51427 using gtk_target_list_add_rich_text_targets() and
51428 gtk_target_list_add_text_targets().</doc>
51429         <return-value transfer-ownership="full">
51430           <doc xml:whitespace="preserve">the #GtkTargetList</doc>
51431           <type name="TargetList" c:type="GtkTargetList*"/>
51432         </return-value>
51433       </method>
51434       <method name="get_deserialize_formats"
51435               c:identifier="gtk_text_buffer_get_deserialize_formats"
51436               version="2.10"
51437               introspectable="0">
51438         <doc xml:whitespace="preserve">This function returns the rich text deserialize formats registered
51439 with @buffer using gtk_text_buffer_register_deserialize_format() or
51440 gtk_text_buffer_register_deserialize_tagset()
51441 formats.</doc>
51442         <return-value>
51443           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s representing the registered</doc>
51444           <type name="Gdk.Atom" c:type="GdkAtom*"/>
51445         </return-value>
51446         <parameters>
51447           <parameter name="n_formats" transfer-ownership="none">
51448             <doc xml:whitespace="preserve">return location for the number of formats</doc>
51449             <type name="gint" c:type="gint*"/>
51450           </parameter>
51451         </parameters>
51452       </method>
51453       <method name="get_end_iter" c:identifier="gtk_text_buffer_get_end_iter">
51454         <doc xml:whitespace="preserve">Initializes @iter with the "end iterator," one past the last valid
51455 character in the text buffer. If dereferenced with
51456 gtk_text_iter_get_char(), the end iterator has a character value of
51457 0. The entire buffer lies in the range from the first position in
51458 the buffer (call gtk_text_buffer_get_start_iter() to get
51459 character position 0) to the end iterator.</doc>
51460         <return-value transfer-ownership="none">
51461           <type name="none" c:type="void"/>
51462         </return-value>
51463         <parameters>
51464           <parameter name="iter"
51465                      direction="out"
51466                      caller-allocates="1"
51467                      transfer-ownership="none">
51468             <doc xml:whitespace="preserve">iterator to initialize</doc>
51469             <type name="TextIter" c:type="GtkTextIter*"/>
51470           </parameter>
51471         </parameters>
51472       </method>
51473       <method name="get_has_selection"
51474               c:identifier="gtk_text_buffer_get_has_selection"
51475               version="2.10">
51476         <doc xml:whitespace="preserve">Indicates whether the buffer has some text currently selected.</doc>
51477         <return-value transfer-ownership="none">
51478           <doc xml:whitespace="preserve">%TRUE if the there is text selected</doc>
51479           <type name="gboolean" c:type="gboolean"/>
51480         </return-value>
51481       </method>
51482       <method name="get_insert" c:identifier="gtk_text_buffer_get_insert">
51483         <doc xml:whitespace="preserve">Returns the mark that represents the cursor (insertion point).
51484 Equivalent to calling gtk_text_buffer_get_mark() to get the mark
51485 named "insert", but very slightly more efficient, and involves less
51486 typing.</doc>
51487         <return-value transfer-ownership="none">
51488           <doc xml:whitespace="preserve">insertion point mark</doc>
51489           <type name="TextMark" c:type="GtkTextMark*"/>
51490         </return-value>
51491       </method>
51492       <method name="get_iter_at_child_anchor"
51493               c:identifier="gtk_text_buffer_get_iter_at_child_anchor">
51494         <doc xml:whitespace="preserve">Obtains the location of @anchor within @buffer.</doc>
51495         <return-value transfer-ownership="none">
51496           <type name="none" c:type="void"/>
51497         </return-value>
51498         <parameters>
51499           <parameter name="iter"
51500                      direction="out"
51501                      caller-allocates="1"
51502                      transfer-ownership="none">
51503             <doc xml:whitespace="preserve">an iterator to be initialized</doc>
51504             <type name="TextIter" c:type="GtkTextIter*"/>
51505           </parameter>
51506           <parameter name="anchor" transfer-ownership="none">
51507             <doc xml:whitespace="preserve">a child anchor that appears in @buffer</doc>
51508             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
51509           </parameter>
51510         </parameters>
51511       </method>
51512       <method name="get_iter_at_line"
51513               c:identifier="gtk_text_buffer_get_iter_at_line">
51514         <doc xml:whitespace="preserve">Initializes @iter to the start of the given line.</doc>
51515         <return-value transfer-ownership="none">
51516           <type name="none" c:type="void"/>
51517         </return-value>
51518         <parameters>
51519           <parameter name="iter"
51520                      direction="out"
51521                      caller-allocates="1"
51522                      transfer-ownership="none">
51523             <doc xml:whitespace="preserve">iterator to initialize</doc>
51524             <type name="TextIter" c:type="GtkTextIter*"/>
51525           </parameter>
51526           <parameter name="line_number" transfer-ownership="none">
51527             <doc xml:whitespace="preserve">line number counting from 0</doc>
51528             <type name="gint" c:type="gint"/>
51529           </parameter>
51530         </parameters>
51531       </method>
51532       <method name="get_iter_at_line_index"
51533               c:identifier="gtk_text_buffer_get_iter_at_line_index">
51534         <doc xml:whitespace="preserve">Obtains an iterator pointing to @byte_index within the given line.
51535 beyond the end of the line.  Note &lt;emphasis&gt;bytes&lt;/emphasis&gt;, not
51536 characters; UTF-8 may encode one character as multiple bytes.</doc>
51537         <return-value transfer-ownership="none">
51538           <type name="none" c:type="void"/>
51539         </return-value>
51540         <parameters>
51541           <parameter name="iter"
51542                      direction="out"
51543                      caller-allocates="1"
51544                      transfer-ownership="none">
51545             <doc xml:whitespace="preserve">iterator to initialize</doc>
51546             <type name="TextIter" c:type="GtkTextIter*"/>
51547           </parameter>
51548           <parameter name="line_number" transfer-ownership="none">
51549             <doc xml:whitespace="preserve">line number counting from 0</doc>
51550             <type name="gint" c:type="gint"/>
51551           </parameter>
51552           <parameter name="byte_index" transfer-ownership="none">
51553             <doc xml:whitespace="preserve">byte index from start of line</doc>
51554             <type name="gint" c:type="gint"/>
51555           </parameter>
51556         </parameters>
51557       </method>
51558       <method name="get_iter_at_line_offset"
51559               c:identifier="gtk_text_buffer_get_iter_at_line_offset">
51560         <doc xml:whitespace="preserve">Obtains an iterator pointing to @char_offset within the given
51561 line. The @char_offset must exist, offsets off the end of the line
51562 are not allowed. Note &lt;emphasis&gt;characters&lt;/emphasis&gt;, not bytes;
51563 UTF-8 may encode one character as multiple bytes.</doc>
51564         <return-value transfer-ownership="none">
51565           <type name="none" c:type="void"/>
51566         </return-value>
51567         <parameters>
51568           <parameter name="iter"
51569                      direction="out"
51570                      caller-allocates="1"
51571                      transfer-ownership="none">
51572             <doc xml:whitespace="preserve">iterator to initialize</doc>
51573             <type name="TextIter" c:type="GtkTextIter*"/>
51574           </parameter>
51575           <parameter name="line_number" transfer-ownership="none">
51576             <doc xml:whitespace="preserve">line number counting from 0</doc>
51577             <type name="gint" c:type="gint"/>
51578           </parameter>
51579           <parameter name="char_offset" transfer-ownership="none">
51580             <doc xml:whitespace="preserve">char offset from start of line</doc>
51581             <type name="gint" c:type="gint"/>
51582           </parameter>
51583         </parameters>
51584       </method>
51585       <method name="get_iter_at_mark"
51586               c:identifier="gtk_text_buffer_get_iter_at_mark">
51587         <doc xml:whitespace="preserve">Initializes @iter with the current position of @mark.</doc>
51588         <return-value transfer-ownership="none">
51589           <type name="none" c:type="void"/>
51590         </return-value>
51591         <parameters>
51592           <parameter name="iter"
51593                      direction="out"
51594                      caller-allocates="1"
51595                      transfer-ownership="none">
51596             <doc xml:whitespace="preserve">iterator to initialize</doc>
51597             <type name="TextIter" c:type="GtkTextIter*"/>
51598           </parameter>
51599           <parameter name="mark" transfer-ownership="none">
51600             <doc xml:whitespace="preserve">a #GtkTextMark in @buffer</doc>
51601             <type name="TextMark" c:type="GtkTextMark*"/>
51602           </parameter>
51603         </parameters>
51604       </method>
51605       <method name="get_iter_at_offset"
51606               c:identifier="gtk_text_buffer_get_iter_at_offset">
51607         <doc xml:whitespace="preserve">Initializes @iter to a position @char_offset chars from the start
51608 of the entire buffer. If @char_offset is -1 or greater than the number
51609 of characters in the buffer, @iter is initialized to the end iterator,
51610 the iterator one past the last valid character in the buffer.</doc>
51611         <return-value transfer-ownership="none">
51612           <type name="none" c:type="void"/>
51613         </return-value>
51614         <parameters>
51615           <parameter name="iter"
51616                      direction="out"
51617                      caller-allocates="1"
51618                      transfer-ownership="none">
51619             <doc xml:whitespace="preserve">iterator to initialize</doc>
51620             <type name="TextIter" c:type="GtkTextIter*"/>
51621           </parameter>
51622           <parameter name="char_offset" transfer-ownership="none">
51623             <doc xml:whitespace="preserve">char offset from start of buffer, counting from 0, or -1</doc>
51624             <type name="gint" c:type="gint"/>
51625           </parameter>
51626         </parameters>
51627       </method>
51628       <method name="get_line_count"
51629               c:identifier="gtk_text_buffer_get_line_count">
51630         <doc xml:whitespace="preserve">Obtains the number of lines in the buffer. This value is cached, so
51631 the function is very fast.</doc>
51632         <return-value transfer-ownership="none">
51633           <doc xml:whitespace="preserve">number of lines in the buffer</doc>
51634           <type name="gint" c:type="gint"/>
51635         </return-value>
51636       </method>
51637       <method name="get_mark" c:identifier="gtk_text_buffer_get_mark">
51638         <doc xml:whitespace="preserve">Returns the mark named @name in buffer @buffer, or %NULL if no such
51639 mark exists in the buffer.</doc>
51640         <return-value transfer-ownership="none">
51641           <doc xml:whitespace="preserve">a #GtkTextMark, or %NULL</doc>
51642           <type name="TextMark" c:type="GtkTextMark*"/>
51643         </return-value>
51644         <parameters>
51645           <parameter name="name" transfer-ownership="none">
51646             <doc xml:whitespace="preserve">a mark name</doc>
51647             <type name="utf8" c:type="gchar*"/>
51648           </parameter>
51649         </parameters>
51650       </method>
51651       <method name="get_modified" c:identifier="gtk_text_buffer_get_modified">
51652         <doc xml:whitespace="preserve">Indicates whether the buffer has been modified since the last call
51653 to gtk_text_buffer_set_modified() set the modification flag to
51654 %FALSE. Used for example to enable a "save" function in a text
51655 editor.</doc>
51656         <return-value transfer-ownership="none">
51657           <doc xml:whitespace="preserve">%TRUE if the buffer has been modified</doc>
51658           <type name="gboolean" c:type="gboolean"/>
51659         </return-value>
51660       </method>
51661       <method name="get_paste_target_list"
51662               c:identifier="gtk_text_buffer_get_paste_target_list"
51663               version="2.10">
51664         <doc xml:whitespace="preserve">This function returns the list of targets this text buffer supports
51665 for pasting and as DND destination. The targets in the list are
51666 added with %info values from the #GtkTextBufferTargetInfo enum,
51667 using gtk_target_list_add_rich_text_targets() and
51668 gtk_target_list_add_text_targets().</doc>
51669         <return-value transfer-ownership="full">
51670           <doc xml:whitespace="preserve">the #GtkTargetList</doc>
51671           <type name="TargetList" c:type="GtkTargetList*"/>
51672         </return-value>
51673       </method>
51674       <method name="get_selection_bound"
51675               c:identifier="gtk_text_buffer_get_selection_bound">
51676         <doc xml:whitespace="preserve">Returns the mark that represents the selection bound.  Equivalent
51677 to calling gtk_text_buffer_get_mark() to get the mark named
51678 "selection_bound", but very slightly more efficient, and involves
51679 less typing.
51680 The currently-selected text in @buffer is the region between the
51681 "selection_bound" and "insert" marks. If "selection_bound" and
51682 "insert" are in the same place, then there is no current selection.
51683 gtk_text_buffer_get_selection_bounds() is another convenient function
51684 for handling the selection, if you just want to know whether there's a
51685 selection and what its bounds are.</doc>
51686         <return-value transfer-ownership="none">
51687           <doc xml:whitespace="preserve">selection bound mark</doc>
51688           <type name="TextMark" c:type="GtkTextMark*"/>
51689         </return-value>
51690       </method>
51691       <method name="get_selection_bounds"
51692               c:identifier="gtk_text_buffer_get_selection_bounds">
51693         <doc xml:whitespace="preserve">Returns %TRUE if some text is selected; places the bounds
51694 of the selection in @start and @end (if the selection has length 0,
51695 then @start and @end are filled in with the same value).
51696 NULL, then they are not filled in, but the return value still indicates
51697 whether text is selected.</doc>
51698         <return-value transfer-ownership="none">
51699           <doc xml:whitespace="preserve">whether the selection has nonzero length</doc>
51700           <type name="gboolean" c:type="gboolean"/>
51701         </return-value>
51702         <parameters>
51703           <parameter name="start"
51704                      direction="out"
51705                      caller-allocates="1"
51706                      transfer-ownership="none">
51707             <doc xml:whitespace="preserve">iterator to initialize with selection start</doc>
51708             <type name="TextIter" c:type="GtkTextIter*"/>
51709           </parameter>
51710           <parameter name="end"
51711                      direction="out"
51712                      caller-allocates="1"
51713                      transfer-ownership="none">
51714             <doc xml:whitespace="preserve">iterator to initialize with selection end</doc>
51715             <type name="TextIter" c:type="GtkTextIter*"/>
51716           </parameter>
51717         </parameters>
51718       </method>
51719       <method name="get_serialize_formats"
51720               c:identifier="gtk_text_buffer_get_serialize_formats"
51721               version="2.10"
51722               introspectable="0">
51723         <doc xml:whitespace="preserve">This function returns the rich text serialize formats registered
51724 with @buffer using gtk_text_buffer_register_serialize_format() or
51725 gtk_text_buffer_register_serialize_tagset()
51726 formats.</doc>
51727         <return-value>
51728           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s representing the registered</doc>
51729           <type name="Gdk.Atom" c:type="GdkAtom*"/>
51730         </return-value>
51731         <parameters>
51732           <parameter name="n_formats" transfer-ownership="none">
51733             <doc xml:whitespace="preserve">return location for the number of formats</doc>
51734             <type name="gint" c:type="gint*"/>
51735           </parameter>
51736         </parameters>
51737       </method>
51738       <method name="get_slice" c:identifier="gtk_text_buffer_get_slice">
51739         <doc xml:whitespace="preserve">Returns the text in the range [@start,@end). Excludes undisplayed
51740 text (text marked with tags that set the invisibility attribute) if
51741 0xFFFC character whenever the buffer contains
51742 embedded images, so byte and character indexes into
51743 the returned string &lt;emphasis&gt;do&lt;/emphasis&gt; correspond to byte
51744 and character indexes into the buffer. Contrast with
51745 gtk_text_buffer_get_text(). Note that 0xFFFC can occur in normal
51746 text as well, so it is not a reliable indicator that a pixbuf or
51747 widget is in the buffer.</doc>
51748         <return-value transfer-ownership="full">
51749           <doc xml:whitespace="preserve">an allocated UTF-8 string</doc>
51750           <type name="utf8" c:type="gchar*"/>
51751         </return-value>
51752         <parameters>
51753           <parameter name="start" transfer-ownership="none">
51754             <doc xml:whitespace="preserve">start of a range</doc>
51755             <type name="TextIter" c:type="GtkTextIter*"/>
51756           </parameter>
51757           <parameter name="end" transfer-ownership="none">
51758             <doc xml:whitespace="preserve">end of a range</doc>
51759             <type name="TextIter" c:type="GtkTextIter*"/>
51760           </parameter>
51761           <parameter name="include_hidden_chars" transfer-ownership="none">
51762             <doc xml:whitespace="preserve">whether to include invisible text</doc>
51763             <type name="gboolean" c:type="gboolean"/>
51764           </parameter>
51765         </parameters>
51766       </method>
51767       <method name="get_start_iter"
51768               c:identifier="gtk_text_buffer_get_start_iter">
51769         <doc xml:whitespace="preserve">Initialized @iter with the first position in the text buffer. This
51770 is the same as using gtk_text_buffer_get_iter_at_offset() to get
51771 the iter at character offset 0.</doc>
51772         <return-value transfer-ownership="none">
51773           <type name="none" c:type="void"/>
51774         </return-value>
51775         <parameters>
51776           <parameter name="iter"
51777                      direction="out"
51778                      caller-allocates="1"
51779                      transfer-ownership="none">
51780             <doc xml:whitespace="preserve">iterator to initialize</doc>
51781             <type name="TextIter" c:type="GtkTextIter*"/>
51782           </parameter>
51783         </parameters>
51784       </method>
51785       <method name="get_tag_table"
51786               c:identifier="gtk_text_buffer_get_tag_table">
51787         <doc xml:whitespace="preserve">Get the #GtkTextTagTable associated with this buffer.</doc>
51788         <return-value transfer-ownership="none">
51789           <doc xml:whitespace="preserve">the buffer's tag table</doc>
51790           <type name="TextTagTable" c:type="GtkTextTagTable*"/>
51791         </return-value>
51792       </method>
51793       <method name="get_text" c:identifier="gtk_text_buffer_get_text">
51794         <doc xml:whitespace="preserve">Returns the text in the range [@start,@end). Excludes undisplayed
51795 text (text marked with tags that set the invisibility attribute) if
51796 representing embedded images, so byte and character indexes into
51797 the returned string do &lt;emphasis&gt;not&lt;/emphasis&gt; correspond to byte
51798 and character indexes into the buffer. Contrast with
51799 gtk_text_buffer_get_slice().</doc>
51800         <return-value transfer-ownership="full">
51801           <doc xml:whitespace="preserve">an allocated UTF-8 string</doc>
51802           <type name="utf8" c:type="gchar*"/>
51803         </return-value>
51804         <parameters>
51805           <parameter name="start" transfer-ownership="none">
51806             <doc xml:whitespace="preserve">start of a range</doc>
51807             <type name="TextIter" c:type="GtkTextIter*"/>
51808           </parameter>
51809           <parameter name="end" transfer-ownership="none">
51810             <doc xml:whitespace="preserve">end of a range</doc>
51811             <type name="TextIter" c:type="GtkTextIter*"/>
51812           </parameter>
51813           <parameter name="include_hidden_chars" transfer-ownership="none">
51814             <doc xml:whitespace="preserve">whether to include invisible text</doc>
51815             <type name="gboolean" c:type="gboolean"/>
51816           </parameter>
51817         </parameters>
51818       </method>
51819       <method name="insert" c:identifier="gtk_text_buffer_insert">
51820         <doc xml:whitespace="preserve">Inserts @len bytes of @text at position @iter.  If @len is -1,
51821 entirety. Emits the "insert-text" signal; insertion actually occurs
51822 in the default handler for the signal. @iter is invalidated when
51823 insertion occurs (because the buffer contents change), but the
51824 default signal handler revalidates it to point to the end of the
51825 inserted text.</doc>
51826         <return-value transfer-ownership="none">
51827           <type name="none" c:type="void"/>
51828         </return-value>
51829         <parameters>
51830           <parameter name="iter" transfer-ownership="none">
51831             <doc xml:whitespace="preserve">a position in the buffer</doc>
51832             <type name="TextIter" c:type="GtkTextIter*"/>
51833           </parameter>
51834           <parameter name="text" transfer-ownership="none">
51835             <doc xml:whitespace="preserve">text in UTF-8 format</doc>
51836             <type name="utf8" c:type="gchar*"/>
51837           </parameter>
51838           <parameter name="len" transfer-ownership="none">
51839             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
51840             <type name="gint" c:type="gint"/>
51841           </parameter>
51842         </parameters>
51843       </method>
51844       <method name="insert_at_cursor"
51845               c:identifier="gtk_text_buffer_insert_at_cursor">
51846         <doc xml:whitespace="preserve">Simply calls gtk_text_buffer_insert(), using the current
51847 cursor position as the insertion point.</doc>
51848         <return-value transfer-ownership="none">
51849           <type name="none" c:type="void"/>
51850         </return-value>
51851         <parameters>
51852           <parameter name="text" transfer-ownership="none">
51853             <doc xml:whitespace="preserve">text in UTF-8 format</doc>
51854             <type name="utf8" c:type="gchar*"/>
51855           </parameter>
51856           <parameter name="len" transfer-ownership="none">
51857             <doc xml:whitespace="preserve">length of text, in bytes</doc>
51858             <type name="gint" c:type="gint"/>
51859           </parameter>
51860         </parameters>
51861       </method>
51862       <method name="insert_child_anchor"
51863               c:identifier="gtk_text_buffer_insert_child_anchor">
51864         <doc xml:whitespace="preserve">Inserts a child widget anchor into the text buffer at @iter. The
51865 anchor will be counted as one character in character counts, and
51866 when obtaining the buffer contents as a string, will be represented
51867 by the Unicode "object replacement character" 0xFFFC. Note that the
51868 "slice" variants for obtaining portions of the buffer as a string
51869 include this character for child anchors, but the "text" variants do
51870 not. E.g. see gtk_text_buffer_get_slice() and
51871 gtk_text_buffer_get_text(). Consider
51872 gtk_text_buffer_create_child_anchor() as a more convenient
51873 alternative to this function. The buffer will add a reference to
51874 the anchor, so you can unref it after insertion.</doc>
51875         <return-value transfer-ownership="none">
51876           <type name="none" c:type="void"/>
51877         </return-value>
51878         <parameters>
51879           <parameter name="iter" transfer-ownership="none">
51880             <doc xml:whitespace="preserve">location to insert the anchor</doc>
51881             <type name="TextIter" c:type="GtkTextIter*"/>
51882           </parameter>
51883           <parameter name="anchor" transfer-ownership="none">
51884             <doc xml:whitespace="preserve">a #GtkTextChildAnchor</doc>
51885             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
51886           </parameter>
51887         </parameters>
51888       </method>
51889       <method name="insert_interactive"
51890               c:identifier="gtk_text_buffer_insert_interactive">
51891         <doc xml:whitespace="preserve">Like gtk_text_buffer_insert(), but the insertion will not occur if
51892 want to prevent insertions at ineditable locations if the insertion
51893 results from a user action (is interactive).
51894 have a tag affecting editability applied to it. Typically the
51895 result of gtk_text_view_get_editable() is appropriate here.</doc>
51896         <return-value transfer-ownership="none">
51897           <doc xml:whitespace="preserve">whether text was actually inserted</doc>
51898           <type name="gboolean" c:type="gboolean"/>
51899         </return-value>
51900         <parameters>
51901           <parameter name="iter" transfer-ownership="none">
51902             <doc xml:whitespace="preserve">a position in @buffer</doc>
51903             <type name="TextIter" c:type="GtkTextIter*"/>
51904           </parameter>
51905           <parameter name="text" transfer-ownership="none">
51906             <doc xml:whitespace="preserve">some UTF-8 text</doc>
51907             <type name="utf8" c:type="gchar*"/>
51908           </parameter>
51909           <parameter name="len" transfer-ownership="none">
51910             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
51911             <type name="gint" c:type="gint"/>
51912           </parameter>
51913           <parameter name="default_editable" transfer-ownership="none">
51914             <doc xml:whitespace="preserve">default editability of buffer</doc>
51915             <type name="gboolean" c:type="gboolean"/>
51916           </parameter>
51917         </parameters>
51918       </method>
51919       <method name="insert_interactive_at_cursor"
51920               c:identifier="gtk_text_buffer_insert_interactive_at_cursor">
51921         <doc xml:whitespace="preserve">Calls gtk_text_buffer_insert_interactive() at the cursor
51922 position.
51923 have a tag affecting editability applied to it. Typically the
51924 result of gtk_text_view_get_editable() is appropriate here.</doc>
51925         <return-value transfer-ownership="none">
51926           <doc xml:whitespace="preserve">whether text was actually inserted</doc>
51927           <type name="gboolean" c:type="gboolean"/>
51928         </return-value>
51929         <parameters>
51930           <parameter name="text" transfer-ownership="none">
51931             <doc xml:whitespace="preserve">text in UTF-8 format</doc>
51932             <type name="utf8" c:type="gchar*"/>
51933           </parameter>
51934           <parameter name="len" transfer-ownership="none">
51935             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
51936             <type name="gint" c:type="gint"/>
51937           </parameter>
51938           <parameter name="default_editable" transfer-ownership="none">
51939             <doc xml:whitespace="preserve">default editability of buffer</doc>
51940             <type name="gboolean" c:type="gboolean"/>
51941           </parameter>
51942         </parameters>
51943       </method>
51944       <method name="insert_pixbuf"
51945               c:identifier="gtk_text_buffer_insert_pixbuf">
51946         <doc xml:whitespace="preserve">Inserts an image into the text buffer at @iter. The image will be
51947 counted as one character in character counts, and when obtaining
51948 the buffer contents as a string, will be represented by the Unicode
51949 "object replacement character" 0xFFFC. Note that the "slice"
51950 variants for obtaining portions of the buffer as a string include
51951 this character for pixbufs, but the "text" variants do
51952 not. e.g. see gtk_text_buffer_get_slice() and
51953 gtk_text_buffer_get_text().</doc>
51954         <return-value transfer-ownership="none">
51955           <type name="none" c:type="void"/>
51956         </return-value>
51957         <parameters>
51958           <parameter name="iter" transfer-ownership="none">
51959             <doc xml:whitespace="preserve">location to insert the pixbuf</doc>
51960             <type name="TextIter" c:type="GtkTextIter*"/>
51961           </parameter>
51962           <parameter name="pixbuf" transfer-ownership="none">
51963             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
51964             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
51965           </parameter>
51966         </parameters>
51967       </method>
51968       <method name="insert_range" c:identifier="gtk_text_buffer_insert_range">
51969         <doc xml:whitespace="preserve">Copies text, tags, and pixbufs between @start and @end (the order
51970 of @start and @end doesn't matter) and inserts the copy at @iter.
51971 Used instead of simply getting/inserting text because it preserves
51972 images and tags. If @start and @end are in a different buffer from
51973 Implemented via emissions of the insert_text and apply_tag signals,
51974 so expect those.</doc>
51975         <return-value transfer-ownership="none">
51976           <type name="none" c:type="void"/>
51977         </return-value>
51978         <parameters>
51979           <parameter name="iter" transfer-ownership="none">
51980             <doc xml:whitespace="preserve">a position in @buffer</doc>
51981             <type name="TextIter" c:type="GtkTextIter*"/>
51982           </parameter>
51983           <parameter name="start" transfer-ownership="none">
51984             <doc xml:whitespace="preserve">a position in a #GtkTextBuffer</doc>
51985             <type name="TextIter" c:type="GtkTextIter*"/>
51986           </parameter>
51987           <parameter name="end" transfer-ownership="none">
51988             <doc xml:whitespace="preserve">another position in the same buffer as @start</doc>
51989             <type name="TextIter" c:type="GtkTextIter*"/>
51990           </parameter>
51991         </parameters>
51992       </method>
51993       <method name="insert_range_interactive"
51994               c:identifier="gtk_text_buffer_insert_range_interactive">
51995         <doc xml:whitespace="preserve">Same as gtk_text_buffer_insert_range(), but does nothing if the
51996 insertion point isn't editable. The @default_editable parameter
51997 indicates whether the text is editable at @iter if no tags
51998 enclosing @iter affect editability. Typically the result of
51999 gtk_text_view_get_editable() is appropriate here.</doc>
52000         <return-value transfer-ownership="none">
52001           <doc xml:whitespace="preserve">whether an insertion was possible at @iter</doc>
52002           <type name="gboolean" c:type="gboolean"/>
52003         </return-value>
52004         <parameters>
52005           <parameter name="iter" transfer-ownership="none">
52006             <doc xml:whitespace="preserve">a position in @buffer</doc>
52007             <type name="TextIter" c:type="GtkTextIter*"/>
52008           </parameter>
52009           <parameter name="start" transfer-ownership="none">
52010             <doc xml:whitespace="preserve">a position in a #GtkTextBuffer</doc>
52011             <type name="TextIter" c:type="GtkTextIter*"/>
52012           </parameter>
52013           <parameter name="end" transfer-ownership="none">
52014             <doc xml:whitespace="preserve">another position in the same buffer as @start</doc>
52015             <type name="TextIter" c:type="GtkTextIter*"/>
52016           </parameter>
52017           <parameter name="default_editable" transfer-ownership="none">
52018             <doc xml:whitespace="preserve">default editability of the buffer</doc>
52019             <type name="gboolean" c:type="gboolean"/>
52020           </parameter>
52021         </parameters>
52022       </method>
52023       <method name="insert_with_tags"
52024               c:identifier="gtk_text_buffer_insert_with_tags"
52025               introspectable="0">
52026         <doc xml:whitespace="preserve">Inserts @text into @buffer at @iter, applying the list of tags to
52027 the newly-inserted text. The last tag specified must be NULL to
52028 terminate the list. Equivalent to calling gtk_text_buffer_insert(),
52029 then gtk_text_buffer_apply_tag() on the inserted text;
52030 gtk_text_buffer_insert_with_tags() is just a convenience function.</doc>
52031         <return-value transfer-ownership="none">
52032           <type name="none" c:type="void"/>
52033         </return-value>
52034         <parameters>
52035           <parameter name="iter" transfer-ownership="none">
52036             <doc xml:whitespace="preserve">an iterator in @buffer</doc>
52037             <type name="TextIter" c:type="GtkTextIter*"/>
52038           </parameter>
52039           <parameter name="text" transfer-ownership="none">
52040             <doc xml:whitespace="preserve">UTF-8 text</doc>
52041             <type name="utf8" c:type="gchar*"/>
52042           </parameter>
52043           <parameter name="len" transfer-ownership="none">
52044             <doc xml:whitespace="preserve">length of @text, or -1</doc>
52045             <type name="gint" c:type="gint"/>
52046           </parameter>
52047           <parameter name="first_tag" transfer-ownership="none">
52048             <doc xml:whitespace="preserve">first tag to apply to @text</doc>
52049             <type name="TextTag" c:type="GtkTextTag*"/>
52050           </parameter>
52051           <parameter transfer-ownership="none">
52052             <varargs>
52053             </varargs>
52054           </parameter>
52055         </parameters>
52056       </method>
52057       <method name="insert_with_tags_by_name"
52058               c:identifier="gtk_text_buffer_insert_with_tags_by_name"
52059               introspectable="0">
52060         <doc xml:whitespace="preserve">Same as gtk_text_buffer_insert_with_tags(), but allows you
52061 to pass in tag names instead of tag objects.</doc>
52062         <return-value transfer-ownership="none">
52063           <type name="none" c:type="void"/>
52064         </return-value>
52065         <parameters>
52066           <parameter name="iter" transfer-ownership="none">
52067             <doc xml:whitespace="preserve">position in @buffer</doc>
52068             <type name="TextIter" c:type="GtkTextIter*"/>
52069           </parameter>
52070           <parameter name="text" transfer-ownership="none">
52071             <doc xml:whitespace="preserve">UTF-8 text</doc>
52072             <type name="utf8" c:type="gchar*"/>
52073           </parameter>
52074           <parameter name="len" transfer-ownership="none">
52075             <doc xml:whitespace="preserve">length of @text, or -1</doc>
52076             <type name="gint" c:type="gint"/>
52077           </parameter>
52078           <parameter name="first_tag_name" transfer-ownership="none">
52079             <doc xml:whitespace="preserve">name of a tag to apply to @text</doc>
52080             <type name="utf8" c:type="gchar*"/>
52081           </parameter>
52082           <parameter transfer-ownership="none">
52083             <varargs>
52084             </varargs>
52085           </parameter>
52086         </parameters>
52087       </method>
52088       <method name="move_mark" c:identifier="gtk_text_buffer_move_mark">
52089         <doc xml:whitespace="preserve">Moves @mark to the new location @where. Emits the "mark-set" signal
52090 as notification of the move.</doc>
52091         <return-value transfer-ownership="none">
52092           <type name="none" c:type="void"/>
52093         </return-value>
52094         <parameters>
52095           <parameter name="mark" transfer-ownership="none">
52096             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
52097             <type name="TextMark" c:type="GtkTextMark*"/>
52098           </parameter>
52099           <parameter name="where" transfer-ownership="none">
52100             <doc xml:whitespace="preserve">new location for @mark in @buffer</doc>
52101             <type name="TextIter" c:type="GtkTextIter*"/>
52102           </parameter>
52103         </parameters>
52104       </method>
52105       <method name="move_mark_by_name"
52106               c:identifier="gtk_text_buffer_move_mark_by_name">
52107         <doc xml:whitespace="preserve">Moves the mark named @name (which must exist) to location @where.
52108 See gtk_text_buffer_move_mark() for details.</doc>
52109         <return-value transfer-ownership="none">
52110           <type name="none" c:type="void"/>
52111         </return-value>
52112         <parameters>
52113           <parameter name="name" transfer-ownership="none">
52114             <doc xml:whitespace="preserve">name of a mark</doc>
52115             <type name="utf8" c:type="gchar*"/>
52116           </parameter>
52117           <parameter name="where" transfer-ownership="none">
52118             <doc xml:whitespace="preserve">new location for mark</doc>
52119             <type name="TextIter" c:type="GtkTextIter*"/>
52120           </parameter>
52121         </parameters>
52122       </method>
52123       <method name="paste_clipboard"
52124               c:identifier="gtk_text_buffer_paste_clipboard">
52125         <doc xml:whitespace="preserve">Pastes the contents of a clipboard at the insertion point, or
52126 we'll ask for the paste data and return, and at some point later
52127 after the main loop runs, the paste data will be inserted.)</doc>
52128         <return-value transfer-ownership="none">
52129           <type name="none" c:type="void"/>
52130         </return-value>
52131         <parameters>
52132           <parameter name="clipboard" transfer-ownership="none">
52133             <doc xml:whitespace="preserve">the #GtkClipboard to paste from</doc>
52134             <type name="Clipboard" c:type="GtkClipboard*"/>
52135           </parameter>
52136           <parameter name="override_location"
52137                      transfer-ownership="none"
52138                      allow-none="1">
52139             <doc xml:whitespace="preserve">location to insert pasted text, or %NULL for at the cursor</doc>
52140             <type name="TextIter" c:type="GtkTextIter*"/>
52141           </parameter>
52142           <parameter name="default_editable" transfer-ownership="none">
52143             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
52144             <type name="gboolean" c:type="gboolean"/>
52145           </parameter>
52146         </parameters>
52147       </method>
52148       <method name="place_cursor" c:identifier="gtk_text_buffer_place_cursor">
52149         <doc xml:whitespace="preserve">This function moves the "insert" and "selection_bound" marks
52150 simultaneously.  If you move them to the same place in two steps
52151 with gtk_text_buffer_move_mark(), you will temporarily select a
52152 region in between their old and new locations, which can be pretty
52153 inefficient since the temporarily-selected region will force stuff
52154 to be recalculated. This function moves them as a unit, which can
52155 be optimized.</doc>
52156         <return-value transfer-ownership="none">
52157           <type name="none" c:type="void"/>
52158         </return-value>
52159         <parameters>
52160           <parameter name="where" transfer-ownership="none">
52161             <doc xml:whitespace="preserve">where to put the cursor</doc>
52162             <type name="TextIter" c:type="GtkTextIter*"/>
52163           </parameter>
52164         </parameters>
52165       </method>
52166       <method name="register_deserialize_format"
52167               c:identifier="gtk_text_buffer_register_deserialize_format"
52168               version="2.10"
52169               introspectable="0">
52170         <doc xml:whitespace="preserve">This function registers a rich text deserialization @function along with
52171 its @mime_type with the passed @buffer.
52172 format's mime-type.</doc>
52173         <return-value>
52174           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
52175           <type name="Gdk.Atom" c:type="GdkAtom"/>
52176         </return-value>
52177         <parameters>
52178           <parameter name="mime_type" transfer-ownership="none">
52179             <doc xml:whitespace="preserve">the format's mime-type</doc>
52180             <type name="utf8" c:type="gchar*"/>
52181           </parameter>
52182           <parameter name="function"
52183                      transfer-ownership="none"
52184                      scope="notified"
52185                      closure="2"
52186                      destroy="3">
52187             <doc xml:whitespace="preserve">the deserialize function to register</doc>
52188             <type name="TextBufferDeserializeFunc"
52189                   c:type="GtkTextBufferDeserializeFunc"/>
52190           </parameter>
52191           <parameter name="user_data" transfer-ownership="none">
52192             <doc xml:whitespace="preserve">@function's user_data</doc>
52193             <type name="gpointer" c:type="gpointer"/>
52194           </parameter>
52195           <parameter name="user_data_destroy"
52196                      transfer-ownership="none"
52197                      scope="async">
52198             <doc xml:whitespace="preserve">a function to call when @user_data is no longer needed</doc>
52199             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
52200           </parameter>
52201         </parameters>
52202       </method>
52203       <method name="register_deserialize_tagset"
52204               c:identifier="gtk_text_buffer_register_deserialize_tagset"
52205               version="2.10"
52206               introspectable="0">
52207         <doc xml:whitespace="preserve">This function registers GTK+'s internal rich text serialization
52208 format with the passed @buffer. See
52209 gtk_text_buffer_register_serialize_tagset() for details.
52210 format's mime-type.</doc>
52211         <return-value>
52212           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
52213           <type name="Gdk.Atom" c:type="GdkAtom"/>
52214         </return-value>
52215         <parameters>
52216           <parameter name="tagset_name"
52217                      transfer-ownership="none"
52218                      allow-none="1">
52219             <doc xml:whitespace="preserve">an optional tagset name, on %NULL</doc>
52220             <type name="utf8" c:type="gchar*"/>
52221           </parameter>
52222         </parameters>
52223       </method>
52224       <method name="register_serialize_format"
52225               c:identifier="gtk_text_buffer_register_serialize_format"
52226               version="2.10"
52227               introspectable="0">
52228         <doc xml:whitespace="preserve">This function registers a rich text serialization @function along with
52229 its @mime_type with the passed @buffer.
52230 format's mime-type.</doc>
52231         <return-value>
52232           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
52233           <type name="Gdk.Atom" c:type="GdkAtom"/>
52234         </return-value>
52235         <parameters>
52236           <parameter name="mime_type" transfer-ownership="none">
52237             <doc xml:whitespace="preserve">the format's mime-type</doc>
52238             <type name="utf8" c:type="gchar*"/>
52239           </parameter>
52240           <parameter name="function"
52241                      transfer-ownership="none"
52242                      scope="notified"
52243                      closure="2"
52244                      destroy="3">
52245             <doc xml:whitespace="preserve">the serialize function to register</doc>
52246             <type name="TextBufferSerializeFunc"
52247                   c:type="GtkTextBufferSerializeFunc"/>
52248           </parameter>
52249           <parameter name="user_data" transfer-ownership="none">
52250             <doc xml:whitespace="preserve">%function's user_data</doc>
52251             <type name="gpointer" c:type="gpointer"/>
52252           </parameter>
52253           <parameter name="user_data_destroy"
52254                      transfer-ownership="none"
52255                      scope="async">
52256             <doc xml:whitespace="preserve">a function to call when @user_data is no longer needed</doc>
52257             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
52258           </parameter>
52259         </parameters>
52260       </method>
52261       <method name="register_serialize_tagset"
52262               c:identifier="gtk_text_buffer_register_serialize_tagset"
52263               version="2.10"
52264               introspectable="0">
52265         <doc xml:whitespace="preserve">This function registers GTK+'s internal rich text serialization
52266 format with the passed @buffer. The internal format does not comply
52267 to any standard rich text format and only works between #GtkTextBuffer
52268 instances. It is capable of serializing all of a text buffer's tags
52269 and embedded pixbufs.
52270 This function is just a wrapper around
52271 gtk_text_buffer_register_serialize_format(). The mime type used
52272 for registering is "application/x-gtk-text-buffer-rich-text", or
52273 "application/x-gtk-text-buffer-rich-text;format=@tagset_name" if a
52274 The @tagset_name can be used to restrict the transfer of rich text
52275 to buffers with compatible sets of tags, in order to avoid unknown
52276 tags from being pasted. It is probably the common case to pass an
52277 identifier != %NULL here, since the %NULL tagset requires the
52278 receiving buffer to deal with with pasting of arbitrary tags.
52279 format's mime-type.</doc>
52280         <return-value>
52281           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
52282           <type name="Gdk.Atom" c:type="GdkAtom"/>
52283         </return-value>
52284         <parameters>
52285           <parameter name="tagset_name"
52286                      transfer-ownership="none"
52287                      allow-none="1">
52288             <doc xml:whitespace="preserve">an optional tagset name, on %NULL</doc>
52289             <type name="utf8" c:type="gchar*"/>
52290           </parameter>
52291         </parameters>
52292       </method>
52293       <method name="remove_all_tags"
52294               c:identifier="gtk_text_buffer_remove_all_tags">
52295         <doc xml:whitespace="preserve">Removes all tags in the range between @start and @end.  Be careful
52296 with this function; it could remove tags added in code unrelated to
52297 the code you're currently writing. That is, using this function is
52298 probably a bad idea if you have two or more unrelated code sections
52299 that add tags.</doc>
52300         <return-value transfer-ownership="none">
52301           <type name="none" c:type="void"/>
52302         </return-value>
52303         <parameters>
52304           <parameter name="start" transfer-ownership="none">
52305             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
52306             <type name="TextIter" c:type="GtkTextIter*"/>
52307           </parameter>
52308           <parameter name="end" transfer-ownership="none">
52309             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
52310             <type name="TextIter" c:type="GtkTextIter*"/>
52311           </parameter>
52312         </parameters>
52313       </method>
52314       <method name="remove_selection_clipboard"
52315               c:identifier="gtk_text_buffer_remove_selection_clipboard">
52316         <doc xml:whitespace="preserve">Removes a #GtkClipboard added with 
52317 gtk_text_buffer_add_selection_clipboard().</doc>
52318         <return-value transfer-ownership="none">
52319           <type name="none" c:type="void"/>
52320         </return-value>
52321         <parameters>
52322           <parameter name="clipboard" transfer-ownership="none">
52323             <doc xml:whitespace="preserve">a #GtkClipboard added to @buffer by gtk_text_buffer_add_selection_clipboard()</doc>
52324             <type name="Clipboard" c:type="GtkClipboard*"/>
52325           </parameter>
52326         </parameters>
52327       </method>
52328       <method name="remove_tag" c:identifier="gtk_text_buffer_remove_tag">
52329         <doc xml:whitespace="preserve">Emits the "remove-tag" signal. The default handler for the signal
52330 removes all occurrences of @tag from the given range. @start and</doc>
52331         <return-value transfer-ownership="none">
52332           <type name="none" c:type="void"/>
52333         </return-value>
52334         <parameters>
52335           <parameter name="tag" transfer-ownership="none">
52336             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
52337             <type name="TextTag" c:type="GtkTextTag*"/>
52338           </parameter>
52339           <parameter name="start" transfer-ownership="none">
52340             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
52341             <type name="TextIter" c:type="GtkTextIter*"/>
52342           </parameter>
52343           <parameter name="end" transfer-ownership="none">
52344             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
52345             <type name="TextIter" c:type="GtkTextIter*"/>
52346           </parameter>
52347         </parameters>
52348       </method>
52349       <method name="remove_tag_by_name"
52350               c:identifier="gtk_text_buffer_remove_tag_by_name">
52351         <doc xml:whitespace="preserve">Calls gtk_text_tag_table_lookup() on the buffer's tag table to
52352 get a #GtkTextTag, then calls gtk_text_buffer_remove_tag().</doc>
52353         <return-value transfer-ownership="none">
52354           <type name="none" c:type="void"/>
52355         </return-value>
52356         <parameters>
52357           <parameter name="name" transfer-ownership="none">
52358             <doc xml:whitespace="preserve">name of a #GtkTextTag</doc>
52359             <type name="utf8" c:type="gchar*"/>
52360           </parameter>
52361           <parameter name="start" transfer-ownership="none">
52362             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
52363             <type name="TextIter" c:type="GtkTextIter*"/>
52364           </parameter>
52365           <parameter name="end" transfer-ownership="none">
52366             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
52367             <type name="TextIter" c:type="GtkTextIter*"/>
52368           </parameter>
52369         </parameters>
52370       </method>
52371       <method name="select_range"
52372               c:identifier="gtk_text_buffer_select_range"
52373               version="2.4">
52374         <doc xml:whitespace="preserve">This function moves the "insert" and "selection_bound" marks
52375 simultaneously.  If you move them in two steps
52376 with gtk_text_buffer_move_mark(), you will temporarily select a
52377 region in between their old and new locations, which can be pretty
52378 inefficient since the temporarily-selected region will force stuff
52379 to be recalculated. This function moves them as a unit, which can
52380 be optimized.</doc>
52381         <return-value transfer-ownership="none">
52382           <type name="none" c:type="void"/>
52383         </return-value>
52384         <parameters>
52385           <parameter name="ins" transfer-ownership="none">
52386             <doc xml:whitespace="preserve">where to put the "insert" mark</doc>
52387             <type name="TextIter" c:type="GtkTextIter*"/>
52388           </parameter>
52389           <parameter name="bound" transfer-ownership="none">
52390             <doc xml:whitespace="preserve">where to put the "selection_bound" mark</doc>
52391             <type name="TextIter" c:type="GtkTextIter*"/>
52392           </parameter>
52393         </parameters>
52394       </method>
52395       <method name="serialize"
52396               c:identifier="gtk_text_buffer_serialize"
52397               version="2.10">
52398         <doc xml:whitespace="preserve">This function serializes the portion of text between @start
52399 and @end in the rich text format represented by @format.
52400 gtk_text_buffer_register_serialize_format() or
52401 gtk_text_buffer_register_serialize_tagset() beforehand.</doc>
52402         <return-value transfer-ownership="none">
52403           <doc xml:whitespace="preserve">the serialized data, encoded as @format</doc>
52404           <type name="guint8" c:type="guint8*"/>
52405         </return-value>
52406         <parameters>
52407           <parameter name="content_buffer" transfer-ownership="none">
52408             <doc xml:whitespace="preserve">the #GtkTextBuffer to serialize</doc>
52409             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52410           </parameter>
52411           <parameter name="format" transfer-ownership="none">
52412             <doc xml:whitespace="preserve">the rich text format to use for serializing</doc>
52413             <type name="Gdk.Atom" c:type="GdkAtom"/>
52414           </parameter>
52415           <parameter name="start" transfer-ownership="none">
52416             <doc xml:whitespace="preserve">start of block of text to serialize</doc>
52417             <type name="TextIter" c:type="GtkTextIter*"/>
52418           </parameter>
52419           <parameter name="end" transfer-ownership="none">
52420             <doc xml:whitespace="preserve">end of block of test to serialize</doc>
52421             <type name="TextIter" c:type="GtkTextIter*"/>
52422           </parameter>
52423           <parameter name="length" transfer-ownership="none">
52424             <doc xml:whitespace="preserve">return location for the length of the serialized data</doc>
52425             <type name="gulong" c:type="gsize*"/>
52426           </parameter>
52427         </parameters>
52428       </method>
52429       <method name="set_modified" c:identifier="gtk_text_buffer_set_modified">
52430         <doc xml:whitespace="preserve">Used to keep track of whether the buffer has been modified since the
52431 last time it was saved. Whenever the buffer is saved to disk, call
52432 gtk_text_buffer_set_modified (@buffer, FALSE). When the buffer is modified,
52433 it will automatically toggled on the modified bit again. When the modified
52434 bit flips, the buffer emits a "modified-changed" signal.</doc>
52435         <return-value transfer-ownership="none">
52436           <type name="none" c:type="void"/>
52437         </return-value>
52438         <parameters>
52439           <parameter name="setting" transfer-ownership="none">
52440             <doc xml:whitespace="preserve">modification flag setting</doc>
52441             <type name="gboolean" c:type="gboolean"/>
52442           </parameter>
52443         </parameters>
52444       </method>
52445       <method name="set_text" c:identifier="gtk_text_buffer_set_text">
52446         <doc xml:whitespace="preserve">Deletes current contents of @buffer, and inserts @text instead. If</doc>
52447         <return-value transfer-ownership="none">
52448           <type name="none" c:type="void"/>
52449         </return-value>
52450         <parameters>
52451           <parameter name="text" transfer-ownership="none">
52452             <doc xml:whitespace="preserve">UTF-8 text to insert</doc>
52453             <type name="utf8" c:type="gchar*"/>
52454           </parameter>
52455           <parameter name="len" transfer-ownership="none">
52456             <doc xml:whitespace="preserve">length of @text in bytes</doc>
52457             <type name="gint" c:type="gint"/>
52458           </parameter>
52459         </parameters>
52460       </method>
52461       <method name="unregister_deserialize_format"
52462               c:identifier="gtk_text_buffer_unregister_deserialize_format"
52463               version="2.10">
52464         <doc xml:whitespace="preserve">This function unregisters a rich text format that was previously
52465 registered using gtk_text_buffer_register_deserialize_format() or
52466 gtk_text_buffer_register_deserialize_tagset().</doc>
52467         <return-value transfer-ownership="none">
52468           <type name="none" c:type="void"/>
52469         </return-value>
52470         <parameters>
52471           <parameter name="format" transfer-ownership="none">
52472             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format.</doc>
52473             <type name="Gdk.Atom" c:type="GdkAtom"/>
52474           </parameter>
52475         </parameters>
52476       </method>
52477       <method name="unregister_serialize_format"
52478               c:identifier="gtk_text_buffer_unregister_serialize_format"
52479               version="2.10">
52480         <doc xml:whitespace="preserve">This function unregisters a rich text format that was previously
52481 registered using gtk_text_buffer_register_serialize_format() or
52482 gtk_text_buffer_register_serialize_tagset()</doc>
52483         <return-value transfer-ownership="none">
52484           <type name="none" c:type="void"/>
52485         </return-value>
52486         <parameters>
52487           <parameter name="format" transfer-ownership="none">
52488             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format.</doc>
52489             <type name="Gdk.Atom" c:type="GdkAtom"/>
52490           </parameter>
52491         </parameters>
52492       </method>
52493       <property name="copy-target-list"
52494                 version="2.10"
52495                 transfer-ownership="none">
52496         <doc xml:whitespace="preserve">The list of targets this buffer supports for clipboard copying
52497 and as DND source.</doc>
52498         <type name="TargetList"/>
52499       </property>
52500       <property name="cursor-position"
52501                 version="2.10"
52502                 transfer-ownership="none">
52503         <doc xml:whitespace="preserve">The position of the insert mark (as offset from the beginning 
52504 of the buffer). It is useful for getting notified when the 
52505 cursor moves.</doc>
52506         <type name="gint"/>
52507       </property>
52508       <property name="has-selection" version="2.10" transfer-ownership="none">
52509         <doc xml:whitespace="preserve">Whether the buffer has some text currently selected.</doc>
52510         <type name="gboolean"/>
52511       </property>
52512       <property name="paste-target-list"
52513                 version="2.10"
52514                 transfer-ownership="none">
52515         <doc xml:whitespace="preserve">The list of targets this buffer supports for clipboard pasting
52516 and as DND destination.</doc>
52517         <type name="TargetList"/>
52518       </property>
52519       <property name="tag-table"
52520                 writable="1"
52521                 construct-only="1"
52522                 transfer-ownership="none">
52523         <type name="TextTagTable"/>
52524       </property>
52525       <property name="text"
52526                 version="2.8"
52527                 writable="1"
52528                 transfer-ownership="none">
52529         <doc xml:whitespace="preserve">The text content of the buffer. Without child widgets and images,
52530 see gtk_text_buffer_get_text() for more information.</doc>
52531         <type name="utf8"/>
52532       </property>
52533       <field name="parent_instance">
52534         <type name="GObject.Object" c:type="GObject"/>
52535       </field>
52536       <field name="priv">
52537         <type name="TextBufferPrivate" c:type="GtkTextBufferPrivate*"/>
52538       </field>
52539       <glib:signal name="apply-tag">
52540         <doc xml:whitespace="preserve">The ::apply-tag signal is emitted to apply a tag to a
52541 range of text in a #GtkTextBuffer. 
52542 Applying actually occurs in the default handler.
52543 Note that if your handler runs before the default handler it must not 
52544 invalidate the @start and @end iters (or has to revalidate them). 
52545 gtk_text_buffer_apply_tag(),
52546 gtk_text_buffer_insert_with_tags(),
52547 gtk_text_buffer_insert_range().</doc>
52548         <return-value transfer-ownership="none">
52549           <type name="none"/>
52550         </return-value>
52551         <parameters>
52552           <parameter name="object" transfer-ownership="none">
52553             <doc xml:whitespace="preserve">the applied tag</doc>
52554             <type name="TextTag"/>
52555           </parameter>
52556           <parameter name="p0" transfer-ownership="none">
52557             <doc xml:whitespace="preserve">the start of the range the tag is applied to</doc>
52558             <type name="TextIter"/>
52559           </parameter>
52560           <parameter name="p1" transfer-ownership="none">
52561             <doc xml:whitespace="preserve">the end of the range the tag is applied to</doc>
52562             <type name="TextIter"/>
52563           </parameter>
52564         </parameters>
52565       </glib:signal>
52566       <glib:signal name="begin-user-action">
52567         <doc xml:whitespace="preserve">The ::begin-user-action signal is emitted at the beginning of a single
52568 user-visible operation on a #GtkTextBuffer.
52569 gtk_text_buffer_begin_user_action(),
52570 gtk_text_buffer_insert_interactive(),
52571 gtk_text_buffer_insert_range_interactive(),
52572 gtk_text_buffer_delete_interactive(),
52573 gtk_text_buffer_backspace(),
52574 gtk_text_buffer_delete_selection().</doc>
52575         <return-value transfer-ownership="none">
52576           <type name="none"/>
52577         </return-value>
52578       </glib:signal>
52579       <glib:signal name="changed">
52580         <doc xml:whitespace="preserve">The ::changed signal is emitted when the content of a #GtkTextBuffer 
52581 has changed.</doc>
52582         <return-value transfer-ownership="none">
52583           <type name="none"/>
52584         </return-value>
52585       </glib:signal>
52586       <glib:signal name="delete-range">
52587         <doc xml:whitespace="preserve">The ::delete-range signal is emitted to delete a range 
52588 from a #GtkTextBuffer. 
52589 Note that if your handler runs before the default handler it must not 
52590 invalidate the @start and @end iters (or has to revalidate them). 
52591 The default signal handler revalidates the @start and @end iters to 
52592 both point point to the location where text was deleted. Handlers
52593 which run after the default handler (see g_signal_connect_after())
52594 do not have access to the deleted text.</doc>
52595         <return-value transfer-ownership="none">
52596           <type name="none"/>
52597         </return-value>
52598         <parameters>
52599           <parameter name="object" transfer-ownership="none">
52600             <doc xml:whitespace="preserve">the start of the range to be deleted</doc>
52601             <type name="TextIter"/>
52602           </parameter>
52603           <parameter name="p0" transfer-ownership="none">
52604             <doc xml:whitespace="preserve">the end of the range to be deleted</doc>
52605             <type name="TextIter"/>
52606           </parameter>
52607         </parameters>
52608       </glib:signal>
52609       <glib:signal name="end-user-action">
52610         <doc xml:whitespace="preserve">The ::end-user-action signal is emitted at the end of a single
52611 user-visible operation on the #GtkTextBuffer.
52612 gtk_text_buffer_end_user_action(),
52613 gtk_text_buffer_insert_interactive(),
52614 gtk_text_buffer_insert_range_interactive(),
52615 gtk_text_buffer_delete_interactive(),
52616 gtk_text_buffer_backspace(),
52617 gtk_text_buffer_delete_selection(),
52618 gtk_text_buffer_backspace().</doc>
52619         <return-value transfer-ownership="none">
52620           <type name="none"/>
52621         </return-value>
52622       </glib:signal>
52623       <glib:signal name="insert-child-anchor">
52624         <doc xml:whitespace="preserve">The ::insert-child-anchor signal is emitted to insert a
52625 #GtkTextChildAnchor in a #GtkTextBuffer.
52626 Insertion actually occurs in the default handler.
52627 Note that if your handler runs before the default handler it must
52628 not invalidate the @location iter (or has to revalidate it). 
52629 The default signal handler revalidates it to be placed after the 
52630 inserted @anchor.</doc>
52631         <return-value transfer-ownership="none">
52632           <type name="none"/>
52633         </return-value>
52634         <parameters>
52635           <parameter name="object" transfer-ownership="none">
52636             <doc xml:whitespace="preserve">position to insert @anchor in @textbuffer</doc>
52637             <type name="TextIter"/>
52638           </parameter>
52639           <parameter name="p0" transfer-ownership="none">
52640             <doc xml:whitespace="preserve">the #GtkTextChildAnchor to be inserted</doc>
52641             <type name="TextChildAnchor"/>
52642           </parameter>
52643         </parameters>
52644       </glib:signal>
52645       <glib:signal name="insert-pixbuf">
52646         <doc xml:whitespace="preserve">The ::insert-pixbuf signal is emitted to insert a #GdkPixbuf 
52647 in a #GtkTextBuffer. Insertion actually occurs in the default handler.
52648 Note that if your handler runs before the default handler it must not 
52649 invalidate the @location iter (or has to revalidate it). 
52650 The default signal handler revalidates it to be placed after the 
52651 inserted @pixbuf.</doc>
52652         <return-value transfer-ownership="none">
52653           <type name="none"/>
52654         </return-value>
52655         <parameters>
52656           <parameter name="object" transfer-ownership="none">
52657             <doc xml:whitespace="preserve">position to insert @pixbuf in @textbuffer</doc>
52658             <type name="TextIter"/>
52659           </parameter>
52660           <parameter name="p0" transfer-ownership="none">
52661             <doc xml:whitespace="preserve">the #GdkPixbuf to be inserted</doc>
52662             <type name="GdkPixbuf.Pixbuf"/>
52663           </parameter>
52664         </parameters>
52665       </glib:signal>
52666       <glib:signal name="insert-text">
52667         <doc xml:whitespace="preserve">The ::insert-text signal is emitted to insert text in a #GtkTextBuffer.
52668 Insertion actually occurs in the default handler.  
52669 Note that if your handler runs before the default handler it must not 
52670 invalidate the @location iter (or has to revalidate it). 
52671 The default signal handler revalidates it to point to the end of the 
52672 inserted text.
52673 gtk_text_buffer_insert(), 
52674 gtk_text_buffer_insert_range().</doc>
52675         <return-value transfer-ownership="none">
52676           <type name="none"/>
52677         </return-value>
52678         <parameters>
52679           <parameter name="object" transfer-ownership="none">
52680             <doc xml:whitespace="preserve">position to insert @text in @textbuffer</doc>
52681             <type name="TextIter"/>
52682           </parameter>
52683           <parameter name="p0" transfer-ownership="none">
52684             <doc xml:whitespace="preserve">the UTF-8 text to be inserted</doc>
52685             <type name="utf8"/>
52686           </parameter>
52687           <parameter name="p1" transfer-ownership="none">
52688             <doc xml:whitespace="preserve">length of the inserted text in bytes</doc>
52689             <type name="gint"/>
52690           </parameter>
52691         </parameters>
52692       </glib:signal>
52693       <glib:signal name="mark-deleted">
52694         <doc xml:whitespace="preserve">The ::mark-deleted signal is emitted as notification
52695 after a #GtkTextMark is deleted. 
52696 See also:
52697 gtk_text_buffer_delete_mark().</doc>
52698         <return-value transfer-ownership="none">
52699           <type name="none"/>
52700         </return-value>
52701         <parameters>
52702           <parameter name="object" transfer-ownership="none">
52703             <doc xml:whitespace="preserve">The mark that was deleted</doc>
52704             <type name="TextMark"/>
52705           </parameter>
52706         </parameters>
52707       </glib:signal>
52708       <glib:signal name="mark-set">
52709         <doc xml:whitespace="preserve">The ::mark-set signal is emitted as notification
52710 after a #GtkTextMark is set.
52711 gtk_text_buffer_create_mark(),
52712 gtk_text_buffer_move_mark().</doc>
52713         <return-value transfer-ownership="none">
52714           <type name="none"/>
52715         </return-value>
52716         <parameters>
52717           <parameter name="object" transfer-ownership="none">
52718             <doc xml:whitespace="preserve">The location of @mark in @textbuffer</doc>
52719             <type name="TextIter"/>
52720           </parameter>
52721           <parameter name="p0" transfer-ownership="none">
52722             <doc xml:whitespace="preserve">The mark that is set</doc>
52723             <type name="TextMark"/>
52724           </parameter>
52725         </parameters>
52726       </glib:signal>
52727       <glib:signal name="modified-changed">
52728         <doc xml:whitespace="preserve">The ::modified-changed signal is emitted when the modified bit of a 
52729 #GtkTextBuffer flips.
52730 See also:
52731 gtk_text_buffer_set_modified().</doc>
52732         <return-value transfer-ownership="none">
52733           <type name="none"/>
52734         </return-value>
52735       </glib:signal>
52736       <glib:signal name="paste-done" version="2.16">
52737         <doc xml:whitespace="preserve">The paste-done signal is emitted after paste operation has been completed.
52738 This is useful to properly scroll the view to the end of the pasted text.
52739 See gtk_text_buffer_paste_clipboard() for more details.</doc>
52740         <return-value transfer-ownership="none">
52741           <type name="none"/>
52742         </return-value>
52743         <parameters>
52744           <parameter name="object" transfer-ownership="none">
52745             <type name="Clipboard"/>
52746           </parameter>
52747         </parameters>
52748       </glib:signal>
52749       <glib:signal name="remove-tag">
52750         <doc xml:whitespace="preserve">The ::remove-tag signal is emitted to remove all occurrences of @tag from
52751 a range of text in a #GtkTextBuffer. 
52752 Removal actually occurs in the default handler.
52753 Note that if your handler runs before the default handler it must not 
52754 invalidate the @start and @end iters (or has to revalidate them). 
52755 gtk_text_buffer_remove_tag().</doc>
52756         <return-value transfer-ownership="none">
52757           <type name="none"/>
52758         </return-value>
52759         <parameters>
52760           <parameter name="object" transfer-ownership="none">
52761             <doc xml:whitespace="preserve">the tag to be removed</doc>
52762             <type name="TextTag"/>
52763           </parameter>
52764           <parameter name="p0" transfer-ownership="none">
52765             <doc xml:whitespace="preserve">the start of the range the tag is removed from</doc>
52766             <type name="TextIter"/>
52767           </parameter>
52768           <parameter name="p1" transfer-ownership="none">
52769             <doc xml:whitespace="preserve">the end of the range the tag is removed from</doc>
52770             <type name="TextIter"/>
52771           </parameter>
52772         </parameters>
52773       </glib:signal>
52774     </class>
52775     <record name="TextBufferClass"
52776             c:type="GtkTextBufferClass"
52777             glib:is-gtype-struct-for="TextBuffer">
52778       <field name="parent_class">
52779         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
52780       </field>
52781       <field name="insert_text">
52782         <callback name="insert_text">
52783           <return-value transfer-ownership="none">
52784             <type name="none" c:type="void"/>
52785           </return-value>
52786           <parameters>
52787             <parameter name="buffer" transfer-ownership="none">
52788               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52789             </parameter>
52790             <parameter name="pos" transfer-ownership="none">
52791               <type name="TextIter" c:type="GtkTextIter*"/>
52792             </parameter>
52793             <parameter name="text" transfer-ownership="none">
52794               <type name="utf8" c:type="gchar*"/>
52795             </parameter>
52796             <parameter name="length" transfer-ownership="none">
52797               <type name="gint" c:type="gint"/>
52798             </parameter>
52799           </parameters>
52800         </callback>
52801       </field>
52802       <field name="insert_pixbuf">
52803         <callback name="insert_pixbuf">
52804           <return-value transfer-ownership="none">
52805             <type name="none" c:type="void"/>
52806           </return-value>
52807           <parameters>
52808             <parameter name="buffer" transfer-ownership="none">
52809               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52810             </parameter>
52811             <parameter name="pos" transfer-ownership="none">
52812               <type name="TextIter" c:type="GtkTextIter*"/>
52813             </parameter>
52814             <parameter name="pixbuf" transfer-ownership="none">
52815               <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
52816             </parameter>
52817           </parameters>
52818         </callback>
52819       </field>
52820       <field name="insert_child_anchor">
52821         <callback name="insert_child_anchor">
52822           <return-value transfer-ownership="none">
52823             <type name="none" c:type="void"/>
52824           </return-value>
52825           <parameters>
52826             <parameter name="buffer" transfer-ownership="none">
52827               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52828             </parameter>
52829             <parameter name="pos" transfer-ownership="none">
52830               <type name="TextIter" c:type="GtkTextIter*"/>
52831             </parameter>
52832             <parameter name="anchor" transfer-ownership="none">
52833               <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
52834             </parameter>
52835           </parameters>
52836         </callback>
52837       </field>
52838       <field name="delete_range">
52839         <callback name="delete_range">
52840           <return-value transfer-ownership="none">
52841             <type name="none" c:type="void"/>
52842           </return-value>
52843           <parameters>
52844             <parameter name="buffer" transfer-ownership="none">
52845               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52846             </parameter>
52847             <parameter name="start" transfer-ownership="none">
52848               <type name="TextIter" c:type="GtkTextIter*"/>
52849             </parameter>
52850             <parameter name="end" transfer-ownership="none">
52851               <type name="TextIter" c:type="GtkTextIter*"/>
52852             </parameter>
52853           </parameters>
52854         </callback>
52855       </field>
52856       <field name="changed">
52857         <callback name="changed">
52858           <return-value transfer-ownership="none">
52859             <type name="none" c:type="void"/>
52860           </return-value>
52861           <parameters>
52862             <parameter name="buffer" transfer-ownership="none">
52863               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52864             </parameter>
52865           </parameters>
52866         </callback>
52867       </field>
52868       <field name="modified_changed">
52869         <callback name="modified_changed">
52870           <return-value transfer-ownership="none">
52871             <type name="none" c:type="void"/>
52872           </return-value>
52873           <parameters>
52874             <parameter name="buffer" transfer-ownership="none">
52875               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52876             </parameter>
52877           </parameters>
52878         </callback>
52879       </field>
52880       <field name="mark_set">
52881         <callback name="mark_set">
52882           <return-value transfer-ownership="none">
52883             <type name="none" c:type="void"/>
52884           </return-value>
52885           <parameters>
52886             <parameter name="buffer" transfer-ownership="none">
52887               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52888             </parameter>
52889             <parameter name="location" transfer-ownership="none">
52890               <type name="TextIter" c:type="GtkTextIter*"/>
52891             </parameter>
52892             <parameter name="mark" transfer-ownership="none">
52893               <type name="TextMark" c:type="GtkTextMark*"/>
52894             </parameter>
52895           </parameters>
52896         </callback>
52897       </field>
52898       <field name="mark_deleted">
52899         <callback name="mark_deleted">
52900           <return-value transfer-ownership="none">
52901             <type name="none" c:type="void"/>
52902           </return-value>
52903           <parameters>
52904             <parameter name="buffer" transfer-ownership="none">
52905               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52906             </parameter>
52907             <parameter name="mark" transfer-ownership="none">
52908               <type name="TextMark" c:type="GtkTextMark*"/>
52909             </parameter>
52910           </parameters>
52911         </callback>
52912       </field>
52913       <field name="apply_tag">
52914         <callback name="apply_tag">
52915           <return-value transfer-ownership="none">
52916             <type name="none" c:type="void"/>
52917           </return-value>
52918           <parameters>
52919             <parameter name="buffer" transfer-ownership="none">
52920               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52921             </parameter>
52922             <parameter name="tag" transfer-ownership="none">
52923               <type name="TextTag" c:type="GtkTextTag*"/>
52924             </parameter>
52925             <parameter name="start_char" transfer-ownership="none">
52926               <type name="TextIter" c:type="GtkTextIter*"/>
52927             </parameter>
52928             <parameter name="end_char" transfer-ownership="none">
52929               <type name="TextIter" c:type="GtkTextIter*"/>
52930             </parameter>
52931           </parameters>
52932         </callback>
52933       </field>
52934       <field name="remove_tag">
52935         <callback name="remove_tag">
52936           <return-value transfer-ownership="none">
52937             <type name="none" c:type="void"/>
52938           </return-value>
52939           <parameters>
52940             <parameter name="buffer" transfer-ownership="none">
52941               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52942             </parameter>
52943             <parameter name="tag" transfer-ownership="none">
52944               <type name="TextTag" c:type="GtkTextTag*"/>
52945             </parameter>
52946             <parameter name="start_char" transfer-ownership="none">
52947               <type name="TextIter" c:type="GtkTextIter*"/>
52948             </parameter>
52949             <parameter name="end_char" transfer-ownership="none">
52950               <type name="TextIter" c:type="GtkTextIter*"/>
52951             </parameter>
52952           </parameters>
52953         </callback>
52954       </field>
52955       <field name="begin_user_action">
52956         <callback name="begin_user_action">
52957           <return-value transfer-ownership="none">
52958             <type name="none" c:type="void"/>
52959           </return-value>
52960           <parameters>
52961             <parameter name="buffer" transfer-ownership="none">
52962               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52963             </parameter>
52964           </parameters>
52965         </callback>
52966       </field>
52967       <field name="end_user_action">
52968         <callback name="end_user_action">
52969           <return-value transfer-ownership="none">
52970             <type name="none" c:type="void"/>
52971           </return-value>
52972           <parameters>
52973             <parameter name="buffer" transfer-ownership="none">
52974               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52975             </parameter>
52976           </parameters>
52977         </callback>
52978       </field>
52979       <field name="paste_done">
52980         <callback name="paste_done">
52981           <return-value transfer-ownership="none">
52982             <type name="none" c:type="void"/>
52983           </return-value>
52984           <parameters>
52985             <parameter name="buffer" transfer-ownership="none">
52986               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52987             </parameter>
52988             <parameter name="clipboard" transfer-ownership="none">
52989               <type name="Clipboard" c:type="GtkClipboard*"/>
52990             </parameter>
52991           </parameters>
52992         </callback>
52993       </field>
52994       <field name="_gtk_reserved1" introspectable="0">
52995         <callback name="_gtk_reserved1">
52996           <return-value transfer-ownership="none">
52997             <type name="none" c:type="void"/>
52998           </return-value>
52999         </callback>
53000       </field>
53001       <field name="_gtk_reserved2" introspectable="0">
53002         <callback name="_gtk_reserved2">
53003           <return-value transfer-ownership="none">
53004             <type name="none" c:type="void"/>
53005           </return-value>
53006         </callback>
53007       </field>
53008       <field name="_gtk_reserved3" introspectable="0">
53009         <callback name="_gtk_reserved3">
53010           <return-value transfer-ownership="none">
53011             <type name="none" c:type="void"/>
53012           </return-value>
53013         </callback>
53014       </field>
53015       <field name="_gtk_reserved4" introspectable="0">
53016         <callback name="_gtk_reserved4">
53017           <return-value transfer-ownership="none">
53018             <type name="none" c:type="void"/>
53019           </return-value>
53020         </callback>
53021       </field>
53022       <field name="_gtk_reserved5" introspectable="0">
53023         <callback name="_gtk_reserved5">
53024           <return-value transfer-ownership="none">
53025             <type name="none" c:type="void"/>
53026           </return-value>
53027         </callback>
53028       </field>
53029     </record>
53030     <callback name="TextBufferDeserializeFunc"
53031               c:type="GtkTextBufferDeserializeFunc"
53032               throws="1">
53033       <return-value transfer-ownership="none">
53034         <type name="gboolean" c:type="gboolean"/>
53035       </return-value>
53036       <parameters>
53037         <parameter name="register_buffer" transfer-ownership="none">
53038           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
53039         </parameter>
53040         <parameter name="content_buffer" transfer-ownership="none">
53041           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
53042         </parameter>
53043         <parameter name="iter" transfer-ownership="none">
53044           <type name="TextIter" c:type="GtkTextIter*"/>
53045         </parameter>
53046         <parameter name="data" transfer-ownership="none">
53047           <type name="guint8" c:type="guint8*"/>
53048         </parameter>
53049         <parameter name="length" transfer-ownership="none">
53050           <type name="gulong" c:type="gsize"/>
53051         </parameter>
53052         <parameter name="create_tags" transfer-ownership="none">
53053           <type name="gboolean" c:type="gboolean"/>
53054         </parameter>
53055         <parameter name="user_data" transfer-ownership="none" closure="6">
53056           <type name="gpointer" c:type="gpointer"/>
53057         </parameter>
53058       </parameters>
53059     </callback>
53060     <record name="TextBufferPrivate"
53061             c:type="GtkTextBufferPrivate"
53062             disguised="1">
53063     </record>
53064     <callback name="TextBufferSerializeFunc"
53065               c:type="GtkTextBufferSerializeFunc">
53066       <return-value transfer-ownership="none">
53067         <type name="guint8" c:type="guint8*"/>
53068       </return-value>
53069       <parameters>
53070         <parameter name="register_buffer" transfer-ownership="none">
53071           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
53072         </parameter>
53073         <parameter name="content_buffer" transfer-ownership="none">
53074           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
53075         </parameter>
53076         <parameter name="start" transfer-ownership="none">
53077           <type name="TextIter" c:type="GtkTextIter*"/>
53078         </parameter>
53079         <parameter name="end" transfer-ownership="none">
53080           <type name="TextIter" c:type="GtkTextIter*"/>
53081         </parameter>
53082         <parameter name="length" transfer-ownership="none">
53083           <type name="gulong" c:type="gsize*"/>
53084         </parameter>
53085         <parameter name="user_data" transfer-ownership="none" closure="5">
53086           <type name="gpointer" c:type="gpointer"/>
53087         </parameter>
53088       </parameters>
53089     </callback>
53090     <enumeration name="TextBufferTargetInfo"
53091                  glib:type-name="GtkTextBufferTargetInfo"
53092                  glib:get-type="gtk_text_buffer_target_info_get_type"
53093                  c:type="GtkTextBufferTargetInfo">
53094       <member name="buffer_contents"
53095               value="-1"
53096               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_BUFFER_CONTENTS"
53097               glib:nick="buffer-contents"/>
53098       <member name="rich_text"
53099               value="-2"
53100               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_RICH_TEXT"
53101               glib:nick="rich-text"/>
53102       <member name="text"
53103               value="-3"
53104               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_TEXT"
53105               glib:nick="text"/>
53106     </enumeration>
53107     <callback name="TextCharPredicate"
53108               c:type="GtkTextCharPredicate"
53109               introspectable="0">
53110       <return-value transfer-ownership="none">
53111         <type name="gboolean" c:type="gboolean"/>
53112       </return-value>
53113       <parameters>
53114         <parameter name="ch" transfer-ownership="none">
53115           <type name="gunichar" c:type="gunichar"/>
53116         </parameter>
53117         <parameter name="user_data" transfer-ownership="none" closure="1">
53118           <type name="gpointer" c:type="gpointer"/>
53119         </parameter>
53120       </parameters>
53121     </callback>
53122     <class name="TextChildAnchor"
53123            c:symbol-prefix="text_child_anchor"
53124            c:type="GtkTextChildAnchor"
53125            parent="GObject.Object"
53126            glib:type-name="GtkTextChildAnchor"
53127            glib:get-type="gtk_text_child_anchor_get_type"
53128            glib:type-struct="TextChildAnchorClass">
53129       <constructor name="new" c:identifier="gtk_text_child_anchor_new">
53130         <doc xml:whitespace="preserve">Creates a new #GtkTextChildAnchor. Usually you would then insert
53131 it into a #GtkTextBuffer with gtk_text_buffer_insert_child_anchor().
53132 To perform the creation and insertion in one step, use the
53133 convenience function gtk_text_buffer_create_child_anchor().</doc>
53134         <return-value transfer-ownership="full">
53135           <doc xml:whitespace="preserve">a new #GtkTextChildAnchor</doc>
53136           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
53137         </return-value>
53138       </constructor>
53139       <method name="get_deleted"
53140               c:identifier="gtk_text_child_anchor_get_deleted">
53141         <doc xml:whitespace="preserve">Determines whether a child anchor has been deleted from
53142 the buffer. Keep in mind that the child anchor will be
53143 unreferenced when removed from the buffer, so you need to
53144 hold your own reference (with g_object_ref()) if you plan
53145 to use this function &amp;mdash; otherwise all deleted child anchors
53146 will also be finalized.</doc>
53147         <return-value transfer-ownership="none">
53148           <doc xml:whitespace="preserve">%TRUE if the child anchor has been deleted from its buffer</doc>
53149           <type name="gboolean" c:type="gboolean"/>
53150         </return-value>
53151       </method>
53152       <method name="get_widgets"
53153               c:identifier="gtk_text_child_anchor_get_widgets">
53154         <doc xml:whitespace="preserve">Gets a list of all widgets anchored at this child anchor.
53155 The returned list should be freed with g_list_free().</doc>
53156         <return-value transfer-ownership="container">
53157           <doc xml:whitespace="preserve">list of widgets anchored at @anchor</doc>
53158           <type name="GLib.List" c:type="GList*">
53159             <type name="Widget"/>
53160           </type>
53161         </return-value>
53162       </method>
53163       <field name="parent_instance">
53164         <type name="GObject.Object" c:type="GObject"/>
53165       </field>
53166       <field name="segment">
53167         <type name="gpointer" c:type="gpointer"/>
53168       </field>
53169     </class>
53170     <record name="TextChildAnchorClass"
53171             c:type="GtkTextChildAnchorClass"
53172             glib:is-gtype-struct-for="TextChildAnchor">
53173       <field name="parent_class">
53174         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
53175       </field>
53176       <field name="_gtk_reserved1" introspectable="0">
53177         <callback name="_gtk_reserved1">
53178           <return-value transfer-ownership="none">
53179             <type name="none" c:type="void"/>
53180           </return-value>
53181         </callback>
53182       </field>
53183       <field name="_gtk_reserved2" introspectable="0">
53184         <callback name="_gtk_reserved2">
53185           <return-value transfer-ownership="none">
53186             <type name="none" c:type="void"/>
53187           </return-value>
53188         </callback>
53189       </field>
53190       <field name="_gtk_reserved3" introspectable="0">
53191         <callback name="_gtk_reserved3">
53192           <return-value transfer-ownership="none">
53193             <type name="none" c:type="void"/>
53194           </return-value>
53195         </callback>
53196       </field>
53197       <field name="_gtk_reserved4" introspectable="0">
53198         <callback name="_gtk_reserved4">
53199           <return-value transfer-ownership="none">
53200             <type name="none" c:type="void"/>
53201           </return-value>
53202         </callback>
53203       </field>
53204     </record>
53205     <enumeration name="TextDirection"
53206                  glib:type-name="GtkTextDirection"
53207                  glib:get-type="gtk_text_direction_get_type"
53208                  c:type="GtkTextDirection">
53209       <member name="none"
53210               value="0"
53211               c:identifier="GTK_TEXT_DIR_NONE"
53212               glib:nick="none"/>
53213       <member name="ltr"
53214               value="1"
53215               c:identifier="GTK_TEXT_DIR_LTR"
53216               glib:nick="ltr"/>
53217       <member name="rtl"
53218               value="2"
53219               c:identifier="GTK_TEXT_DIR_RTL"
53220               glib:nick="rtl"/>
53221     </enumeration>
53222     <record name="TextIter"
53223             c:type="GtkTextIter"
53224             glib:type-name="GtkTextIter"
53225             glib:get-type="gtk_text_iter_get_type"
53226             c:symbol-prefix="text_iter">
53227       <field name="dummy1" writable="1">
53228         <type name="gpointer" c:type="gpointer"/>
53229       </field>
53230       <field name="dummy2" writable="1">
53231         <type name="gpointer" c:type="gpointer"/>
53232       </field>
53233       <field name="dummy3" writable="1">
53234         <type name="gint" c:type="gint"/>
53235       </field>
53236       <field name="dummy4" writable="1">
53237         <type name="gint" c:type="gint"/>
53238       </field>
53239       <field name="dummy5" writable="1">
53240         <type name="gint" c:type="gint"/>
53241       </field>
53242       <field name="dummy6" writable="1">
53243         <type name="gint" c:type="gint"/>
53244       </field>
53245       <field name="dummy7" writable="1">
53246         <type name="gint" c:type="gint"/>
53247       </field>
53248       <field name="dummy8" writable="1">
53249         <type name="gint" c:type="gint"/>
53250       </field>
53251       <field name="dummy9" writable="1">
53252         <type name="gpointer" c:type="gpointer"/>
53253       </field>
53254       <field name="dummy10" writable="1">
53255         <type name="gpointer" c:type="gpointer"/>
53256       </field>
53257       <field name="dummy11" writable="1">
53258         <type name="gint" c:type="gint"/>
53259       </field>
53260       <field name="dummy12" writable="1">
53261         <type name="gint" c:type="gint"/>
53262       </field>
53263       <field name="dummy13" writable="1">
53264         <type name="gint" c:type="gint"/>
53265       </field>
53266       <field name="dummy14" writable="1">
53267         <type name="gpointer" c:type="gpointer"/>
53268       </field>
53269       <method name="backward_char" c:identifier="gtk_text_iter_backward_char">
53270         <doc xml:whitespace="preserve">Moves backward by one character offset. Returns %TRUE if movement
53271 was possible; if @iter was the first in the buffer (character
53272 offset 0), gtk_text_iter_backward_char () returns %FALSE for convenience when
53273 writing loops.</doc>
53274         <return-value transfer-ownership="none">
53275           <doc xml:whitespace="preserve">whether movement was possible</doc>
53276           <type name="gboolean" c:type="gboolean"/>
53277         </return-value>
53278       </method>
53279       <method name="backward_chars"
53280               c:identifier="gtk_text_iter_backward_chars">
53281         <doc xml:whitespace="preserve">Moves @count characters backward, if possible (if @count would move
53282 past the start or end of the buffer, moves to the start or end of
53283 the buffer).  The return value indicates whether the iterator moved
53284 onto a dereferenceable position; if the iterator didn't move, or
53285 moved onto the end iterator, then %FALSE is returned. If @count is 0,
53286 the function does nothing and returns %FALSE.</doc>
53287         <return-value transfer-ownership="none">
53288           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53289           <type name="gboolean" c:type="gboolean"/>
53290         </return-value>
53291         <parameters>
53292           <parameter name="count" transfer-ownership="none">
53293             <doc xml:whitespace="preserve">number of characters to move</doc>
53294             <type name="gint" c:type="gint"/>
53295           </parameter>
53296         </parameters>
53297       </method>
53298       <method name="backward_cursor_position"
53299               c:identifier="gtk_text_iter_backward_cursor_position">
53300         <doc xml:whitespace="preserve">Like gtk_text_iter_forward_cursor_position(), but moves backward.</doc>
53301         <return-value transfer-ownership="none">
53302           <doc xml:whitespace="preserve">%TRUE if we moved</doc>
53303           <type name="gboolean" c:type="gboolean"/>
53304         </return-value>
53305       </method>
53306       <method name="backward_cursor_positions"
53307               c:identifier="gtk_text_iter_backward_cursor_positions">
53308         <doc xml:whitespace="preserve">Moves up to @count cursor positions. See
53309 gtk_text_iter_forward_cursor_position() for details.</doc>
53310         <return-value transfer-ownership="none">
53311           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53312           <type name="gboolean" c:type="gboolean"/>
53313         </return-value>
53314         <parameters>
53315           <parameter name="count" transfer-ownership="none">
53316             <doc xml:whitespace="preserve">number of positions to move</doc>
53317             <type name="gint" c:type="gint"/>
53318           </parameter>
53319         </parameters>
53320       </method>
53321       <method name="backward_find_char"
53322               c:identifier="gtk_text_iter_backward_find_char"
53323               introspectable="0">
53324         <doc xml:whitespace="preserve">Same as gtk_text_iter_forward_find_char(), but goes backward from @iter.</doc>
53325         <return-value transfer-ownership="none">
53326           <doc xml:whitespace="preserve">whether a match was found</doc>
53327           <type name="gboolean" c:type="gboolean"/>
53328         </return-value>
53329         <parameters>
53330           <parameter name="pred"
53331                      transfer-ownership="none"
53332                      scope="call"
53333                      closure="1">
53334             <doc xml:whitespace="preserve">function to be called on each character</doc>
53335             <type name="TextCharPredicate" c:type="GtkTextCharPredicate"/>
53336           </parameter>
53337           <parameter name="user_data" transfer-ownership="none">
53338             <doc xml:whitespace="preserve">user data for @pred</doc>
53339             <type name="gpointer" c:type="gpointer"/>
53340           </parameter>
53341           <parameter name="limit" transfer-ownership="none" allow-none="1">
53342             <doc xml:whitespace="preserve">search limit, or %NULL for none</doc>
53343             <type name="TextIter" c:type="GtkTextIter*"/>
53344           </parameter>
53345         </parameters>
53346       </method>
53347       <method name="backward_line" c:identifier="gtk_text_iter_backward_line">
53348         <doc xml:whitespace="preserve">Moves @iter to the start of the previous line. Returns %TRUE if
53349 function returns %FALSE. Therefore if @iter was already on line 0,
53350 but not at the start of the line, @iter is snapped to the start of
53351 the line and the function returns %TRUE. (Note that this implies that
53352 in a loop calling this function, the line number may not change on
53353 every iteration, if your first iteration is on line 0.)</doc>
53354         <return-value transfer-ownership="none">
53355           <doc xml:whitespace="preserve">whether @iter moved</doc>
53356           <type name="gboolean" c:type="gboolean"/>
53357         </return-value>
53358       </method>
53359       <method name="backward_lines"
53360               c:identifier="gtk_text_iter_backward_lines">
53361         <doc xml:whitespace="preserve">Moves @count lines backward, if possible (if @count would move
53362 past the start or end of the buffer, moves to the start or end of
53363 the buffer).  The return value indicates whether the iterator moved
53364 onto a dereferenceable position; if the iterator didn't move, or
53365 moved onto the end iterator, then %FALSE is returned. If @count is 0,
53366 the function does nothing and returns %FALSE. If @count is negative,
53367 moves forward by 0 - @count lines.</doc>
53368         <return-value transfer-ownership="none">
53369           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53370           <type name="gboolean" c:type="gboolean"/>
53371         </return-value>
53372         <parameters>
53373           <parameter name="count" transfer-ownership="none">
53374             <doc xml:whitespace="preserve">number of lines to move backward</doc>
53375             <type name="gint" c:type="gint"/>
53376           </parameter>
53377         </parameters>
53378       </method>
53379       <method name="backward_search"
53380               c:identifier="gtk_text_iter_backward_search">
53381         <doc xml:whitespace="preserve">Same as gtk_text_iter_forward_search(), but moves backward.</doc>
53382         <return-value transfer-ownership="none">
53383           <doc xml:whitespace="preserve">whether a match was found</doc>
53384           <type name="gboolean" c:type="gboolean"/>
53385         </return-value>
53386         <parameters>
53387           <parameter name="str" transfer-ownership="none">
53388             <doc xml:whitespace="preserve">search string</doc>
53389             <type name="utf8" c:type="gchar*"/>
53390           </parameter>
53391           <parameter name="flags" transfer-ownership="none">
53392             <doc xml:whitespace="preserve">bitmask of flags affecting the search</doc>
53393             <type name="TextSearchFlags" c:type="GtkTextSearchFlags"/>
53394           </parameter>
53395           <parameter name="match_start"
53396                      direction="out"
53397                      caller-allocates="1"
53398                      transfer-ownership="none"
53399                      allow-none="1">
53400             <doc xml:whitespace="preserve">return location for start of match, or %NULL</doc>
53401             <type name="TextIter" c:type="GtkTextIter*"/>
53402           </parameter>
53403           <parameter name="match_end"
53404                      direction="out"
53405                      caller-allocates="1"
53406                      transfer-ownership="none"
53407                      allow-none="1">
53408             <doc xml:whitespace="preserve">return location for end of match, or %NULL</doc>
53409             <type name="TextIter" c:type="GtkTextIter*"/>
53410           </parameter>
53411           <parameter name="limit" transfer-ownership="none" allow-none="1">
53412             <doc xml:whitespace="preserve">location of last possible @match_start, or %NULL for start of buffer</doc>
53413             <type name="TextIter" c:type="GtkTextIter*"/>
53414           </parameter>
53415         </parameters>
53416       </method>
53417       <method name="backward_sentence_start"
53418               c:identifier="gtk_text_iter_backward_sentence_start">
53419         <doc xml:whitespace="preserve">Moves backward to the previous sentence start; if @iter is already at
53420 the start of a sentence, moves backward to the next one.  Sentence
53421 boundaries are determined by Pango and should be correct for nearly
53422 any language (if not, the correct fix would be to the Pango text
53423 boundary algorithms).</doc>
53424         <return-value transfer-ownership="none">
53425           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53426           <type name="gboolean" c:type="gboolean"/>
53427         </return-value>
53428       </method>
53429       <method name="backward_sentence_starts"
53430               c:identifier="gtk_text_iter_backward_sentence_starts">
53431         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_sentence_start() up to @count times,
53432 or until it returns %FALSE. If @count is negative, moves forward
53433 instead of backward.</doc>
53434         <return-value transfer-ownership="none">
53435           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53436           <type name="gboolean" c:type="gboolean"/>
53437         </return-value>
53438         <parameters>
53439           <parameter name="count" transfer-ownership="none">
53440             <doc xml:whitespace="preserve">number of sentences to move</doc>
53441             <type name="gint" c:type="gint"/>
53442           </parameter>
53443         </parameters>
53444       </method>
53445       <method name="backward_to_tag_toggle"
53446               c:identifier="gtk_text_iter_backward_to_tag_toggle">
53447         <doc xml:whitespace="preserve">Moves backward to the next toggle (on or off) of the
53448 #GtkTextTag @tag, or to the next toggle of any tag if
53449 returns %FALSE, otherwise %TRUE. Does not return toggles
53450 located at @iter, only toggles before @iter. Sets @iter
53451 to the location of the toggle, or the start of the buffer
53452 if no toggle is found.</doc>
53453         <return-value transfer-ownership="none">
53454           <doc xml:whitespace="preserve">whether we found a tag toggle before @iter</doc>
53455           <type name="gboolean" c:type="gboolean"/>
53456         </return-value>
53457         <parameters>
53458           <parameter name="tag" transfer-ownership="none" allow-none="1">
53459             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
53460             <type name="TextTag" c:type="GtkTextTag*"/>
53461           </parameter>
53462         </parameters>
53463       </method>
53464       <method name="backward_visible_cursor_position"
53465               c:identifier="gtk_text_iter_backward_visible_cursor_position"
53466               version="2.4">
53467         <doc xml:whitespace="preserve">Moves @iter forward to the previous visible cursor position. See 
53468 gtk_text_iter_backward_cursor_position() for details.</doc>
53469         <return-value transfer-ownership="none">
53470           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53471           <type name="gboolean" c:type="gboolean"/>
53472         </return-value>
53473       </method>
53474       <method name="backward_visible_cursor_positions"
53475               c:identifier="gtk_text_iter_backward_visible_cursor_positions"
53476               version="2.4">
53477         <doc xml:whitespace="preserve">Moves up to @count visible cursor positions. See
53478 gtk_text_iter_backward_cursor_position() for details.</doc>
53479         <return-value transfer-ownership="none">
53480           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53481           <type name="gboolean" c:type="gboolean"/>
53482         </return-value>
53483         <parameters>
53484           <parameter name="count" transfer-ownership="none">
53485             <doc xml:whitespace="preserve">number of positions to move</doc>
53486             <type name="gint" c:type="gint"/>
53487           </parameter>
53488         </parameters>
53489       </method>
53490       <method name="backward_visible_line"
53491               c:identifier="gtk_text_iter_backward_visible_line"
53492               version="2.8">
53493         <doc xml:whitespace="preserve">Moves @iter to the start of the previous visible line. Returns %TRUE if
53494 function returns %FALSE. Therefore if @iter was already on line 0,
53495 but not at the start of the line, @iter is snapped to the start of
53496 the line and the function returns %TRUE. (Note that this implies that
53497 in a loop calling this function, the line number may not change on
53498 every iteration, if your first iteration is on line 0.)</doc>
53499         <return-value transfer-ownership="none">
53500           <doc xml:whitespace="preserve">whether @iter moved</doc>
53501           <type name="gboolean" c:type="gboolean"/>
53502         </return-value>
53503       </method>
53504       <method name="backward_visible_lines"
53505               c:identifier="gtk_text_iter_backward_visible_lines"
53506               version="2.8">
53507         <doc xml:whitespace="preserve">Moves @count visible lines backward, if possible (if @count would move
53508 past the start or end of the buffer, moves to the start or end of
53509 the buffer).  The return value indicates whether the iterator moved
53510 onto a dereferenceable position; if the iterator didn't move, or
53511 moved onto the end iterator, then %FALSE is returned. If @count is 0,
53512 the function does nothing and returns %FALSE. If @count is negative,
53513 moves forward by 0 - @count lines.</doc>
53514         <return-value transfer-ownership="none">
53515           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53516           <type name="gboolean" c:type="gboolean"/>
53517         </return-value>
53518         <parameters>
53519           <parameter name="count" transfer-ownership="none">
53520             <doc xml:whitespace="preserve">number of lines to move backward</doc>
53521             <type name="gint" c:type="gint"/>
53522           </parameter>
53523         </parameters>
53524       </method>
53525       <method name="backward_visible_word_start"
53526               c:identifier="gtk_text_iter_backward_visible_word_start"
53527               version="2.4">
53528         <doc xml:whitespace="preserve">Moves backward to the previous visible word start. (If @iter is currently 
53529 on a word start, moves backward to the next one after that.) Word breaks
53530 are determined by Pango and should be correct for nearly any
53531 language (if not, the correct fix would be to the Pango word break
53532 algorithms).</doc>
53533         <return-value transfer-ownership="none">
53534           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53535           <type name="gboolean" c:type="gboolean"/>
53536         </return-value>
53537       </method>
53538       <method name="backward_visible_word_starts"
53539               c:identifier="gtk_text_iter_backward_visible_word_starts"
53540               version="2.4">
53541         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_visible_word_start() up to @count times.</doc>
53542         <return-value transfer-ownership="none">
53543           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53544           <type name="gboolean" c:type="gboolean"/>
53545         </return-value>
53546         <parameters>
53547           <parameter name="count" transfer-ownership="none">
53548             <doc xml:whitespace="preserve">number of times to move</doc>
53549             <type name="gint" c:type="gint"/>
53550           </parameter>
53551         </parameters>
53552       </method>
53553       <method name="backward_word_start"
53554               c:identifier="gtk_text_iter_backward_word_start">
53555         <doc xml:whitespace="preserve">Moves backward to the previous word start. (If @iter is currently on a
53556 word start, moves backward to the next one after that.) Word breaks
53557 are determined by Pango and should be correct for nearly any
53558 language (if not, the correct fix would be to the Pango word break
53559 algorithms).</doc>
53560         <return-value transfer-ownership="none">
53561           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53562           <type name="gboolean" c:type="gboolean"/>
53563         </return-value>
53564       </method>
53565       <method name="backward_word_starts"
53566               c:identifier="gtk_text_iter_backward_word_starts">
53567         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_word_start() up to @count times.</doc>
53568         <return-value transfer-ownership="none">
53569           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53570           <type name="gboolean" c:type="gboolean"/>
53571         </return-value>
53572         <parameters>
53573           <parameter name="count" transfer-ownership="none">
53574             <doc xml:whitespace="preserve">number of times to move</doc>
53575             <type name="gint" c:type="gint"/>
53576           </parameter>
53577         </parameters>
53578       </method>
53579       <method name="begins_tag" c:identifier="gtk_text_iter_begins_tag">
53580         <doc xml:whitespace="preserve">Returns %TRUE if @tag is toggled on at exactly this point. If @tag
53581 is %NULL, returns %TRUE if any tag is toggled on at this point. Note
53582 that the gtk_text_iter_begins_tag () returns %TRUE if @iter is the
53583 &lt;emphasis&gt;start&lt;/emphasis&gt; of the tagged range;
53584 gtk_text_iter_has_tag () tells you whether an iterator is
53585 &lt;emphasis&gt;within&lt;/emphasis&gt; a tagged range.</doc>
53586         <return-value transfer-ownership="none">
53587           <doc xml:whitespace="preserve">whether @iter is the start of a range tagged with @tag</doc>
53588           <type name="gboolean" c:type="gboolean"/>
53589         </return-value>
53590         <parameters>
53591           <parameter name="tag" transfer-ownership="none" allow-none="1">
53592             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
53593             <type name="TextTag" c:type="GtkTextTag*"/>
53594           </parameter>
53595         </parameters>
53596       </method>
53597       <method name="can_insert" c:identifier="gtk_text_iter_can_insert">
53598         <doc xml:whitespace="preserve">Considering the default editability of the buffer, and tags that
53599 affect editability, determines whether text inserted at @iter would
53600 be editable. If text inserted at @iter would be editable then the
53601 user should be allowed to insert text at @iter.
53602 gtk_text_buffer_insert_interactive() uses this function to decide
53603 whether insertions are allowed at a given position.</doc>
53604         <return-value transfer-ownership="none">
53605           <doc xml:whitespace="preserve">whether text inserted at @iter would be editable</doc>
53606           <type name="gboolean" c:type="gboolean"/>
53607         </return-value>
53608         <parameters>
53609           <parameter name="default_editability" transfer-ownership="none">
53610             <doc xml:whitespace="preserve">%TRUE if text is editable by default</doc>
53611             <type name="gboolean" c:type="gboolean"/>
53612           </parameter>
53613         </parameters>
53614       </method>
53615       <method name="compare" c:identifier="gtk_text_iter_compare">
53616         <doc xml:whitespace="preserve">A qsort()-style function that returns negative if @lhs is less than
53617 Ordering is in character offset order, i.e. the first character in the buffer
53618 is less than the second character in the buffer.</doc>
53619         <return-value transfer-ownership="none">
53620           <doc xml:whitespace="preserve">-1 if @lhs is less than @rhs, 1 if @lhs is greater, 0 if they are equal</doc>
53621           <type name="gint" c:type="gint"/>
53622         </return-value>
53623         <parameters>
53624           <parameter name="rhs" transfer-ownership="none">
53625             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
53626             <type name="TextIter" c:type="GtkTextIter*"/>
53627           </parameter>
53628         </parameters>
53629       </method>
53630       <method name="copy" c:identifier="gtk_text_iter_copy">
53631         <doc xml:whitespace="preserve">Creates a dynamically-allocated copy of an iterator. This function
53632 is not useful in applications, because iterators can be copied with a
53633 simple assignment (&lt;literal&gt;GtkTextIter i = j;&lt;/literal&gt;). The
53634 function is used by language bindings.</doc>
53635         <return-value transfer-ownership="full">
53636           <doc xml:whitespace="preserve">a copy of the @iter, free with gtk_text_iter_free ()</doc>
53637           <type name="TextIter" c:type="GtkTextIter*"/>
53638         </return-value>
53639       </method>
53640       <method name="editable" c:identifier="gtk_text_iter_editable">
53641         <doc xml:whitespace="preserve">Returns whether the character at @iter is within an editable region
53642 of text.  Non-editable text is "locked" and can't be changed by the
53643 user via #GtkTextView. This function is simply a convenience
53644 wrapper around gtk_text_iter_get_attributes (). If no tags applied
53645 to this text affect editability, @default_setting will be returned.
53646 You don't want to use this function to decide whether text can be
53647 inserted at @iter, because for insertion you don't want to know
53648 whether the char at @iter is inside an editable range, you want to
53649 know whether a new character inserted at @iter would be inside an
53650 editable range. Use gtk_text_iter_can_insert() to handle this
53651 case.</doc>
53652         <return-value transfer-ownership="none">
53653           <doc xml:whitespace="preserve">whether @iter is inside an editable range</doc>
53654           <type name="gboolean" c:type="gboolean"/>
53655         </return-value>
53656         <parameters>
53657           <parameter name="default_setting" transfer-ownership="none">
53658             <doc xml:whitespace="preserve">%TRUE if text is editable by default</doc>
53659             <type name="gboolean" c:type="gboolean"/>
53660           </parameter>
53661         </parameters>
53662       </method>
53663       <method name="ends_line" c:identifier="gtk_text_iter_ends_line">
53664         <doc xml:whitespace="preserve">Returns %TRUE if @iter points to the start of the paragraph
53665 delimiter characters for a line (delimiters will be either a
53666 newline, a carriage return, a carriage return followed by a
53667 newline, or a Unicode paragraph separator character). Note that an
53668 iterator pointing to the \n of a \r\n pair will not be counted as
53669 the end of a line, the line ends before the \r. The end iterator is
53670 considered to be at the end of a line, even though there are no
53671 paragraph delimiter chars there.</doc>
53672         <return-value transfer-ownership="none">
53673           <doc xml:whitespace="preserve">whether @iter is at the end of a line</doc>
53674           <type name="gboolean" c:type="gboolean"/>
53675         </return-value>
53676       </method>
53677       <method name="ends_sentence" c:identifier="gtk_text_iter_ends_sentence">
53678         <doc xml:whitespace="preserve">Determines whether @iter ends a sentence.  Sentence boundaries are
53679 determined by Pango and should be correct for nearly any language
53680 (if not, the correct fix would be to the Pango text boundary
53681 algorithms).</doc>
53682         <return-value transfer-ownership="none">
53683           <doc xml:whitespace="preserve">%TRUE if @iter is at the end of a sentence.</doc>
53684           <type name="gboolean" c:type="gboolean"/>
53685         </return-value>
53686       </method>
53687       <method name="ends_tag" c:identifier="gtk_text_iter_ends_tag">
53688         <doc xml:whitespace="preserve">Returns %TRUE if @tag is toggled off at exactly this point. If @tag
53689 is %NULL, returns %TRUE if any tag is toggled off at this point. Note
53690 that the gtk_text_iter_ends_tag () returns %TRUE if @iter is the
53691 &lt;emphasis&gt;end&lt;/emphasis&gt; of the tagged range;
53692 gtk_text_iter_has_tag () tells you whether an iterator is
53693 &lt;emphasis&gt;within&lt;/emphasis&gt; a tagged range.</doc>
53694         <return-value transfer-ownership="none">
53695           <doc xml:whitespace="preserve">whether @iter is the end of a range tagged with @tag</doc>
53696           <type name="gboolean" c:type="gboolean"/>
53697         </return-value>
53698         <parameters>
53699           <parameter name="tag" transfer-ownership="none" allow-none="1">
53700             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
53701             <type name="TextTag" c:type="GtkTextTag*"/>
53702           </parameter>
53703         </parameters>
53704       </method>
53705       <method name="ends_word" c:identifier="gtk_text_iter_ends_word">
53706         <doc xml:whitespace="preserve">Determines whether @iter ends a natural-language word.  Word breaks
53707 are determined by Pango and should be correct for nearly any
53708 language (if not, the correct fix would be to the Pango word break
53709 algorithms).</doc>
53710         <return-value transfer-ownership="none">
53711           <doc xml:whitespace="preserve">%TRUE if @iter is at the end of a word</doc>
53712           <type name="gboolean" c:type="gboolean"/>
53713         </return-value>
53714       </method>
53715       <method name="equal" c:identifier="gtk_text_iter_equal">
53716         <doc xml:whitespace="preserve">Tests whether two iterators are equal, using the fastest possible
53717 mechanism. This function is very fast; you can expect it to perform
53718 better than e.g. getting the character offset for each iterator and
53719 comparing the offsets yourself. Also, it's a bit faster than
53720 gtk_text_iter_compare().</doc>
53721         <return-value transfer-ownership="none">
53722           <doc xml:whitespace="preserve">%TRUE if the iterators point to the same place in the buffer</doc>
53723           <type name="gboolean" c:type="gboolean"/>
53724         </return-value>
53725         <parameters>
53726           <parameter name="rhs" transfer-ownership="none">
53727             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
53728             <type name="TextIter" c:type="GtkTextIter*"/>
53729           </parameter>
53730         </parameters>
53731       </method>
53732       <method name="forward_char" c:identifier="gtk_text_iter_forward_char">
53733         <doc xml:whitespace="preserve">Moves @iter forward by one character offset. Note that images
53734 embedded in the buffer occupy 1 character slot, so
53735 gtk_text_iter_forward_char () may actually move onto an image instead
53736 of a character, if you have images in your buffer.  If @iter is the
53737 end iterator or one character before it, @iter will now point at
53738 the end iterator, and gtk_text_iter_forward_char () returns %FALSE for
53739 convenience when writing loops.</doc>
53740         <return-value transfer-ownership="none">
53741           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53742           <type name="gboolean" c:type="gboolean"/>
53743         </return-value>
53744       </method>
53745       <method name="forward_chars" c:identifier="gtk_text_iter_forward_chars">
53746         <doc xml:whitespace="preserve">Moves @count characters if possible (if @count would move past the
53747 start or end of the buffer, moves to the start or end of the
53748 buffer). The return value indicates whether the new position of
53749 (the last iterator in the buffer is not dereferenceable). If @count
53750 is 0, the function does nothing and returns %FALSE.</doc>
53751         <return-value transfer-ownership="none">
53752           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53753           <type name="gboolean" c:type="gboolean"/>
53754         </return-value>
53755         <parameters>
53756           <parameter name="count" transfer-ownership="none">
53757             <doc xml:whitespace="preserve">number of characters to move, may be negative</doc>
53758             <type name="gint" c:type="gint"/>
53759           </parameter>
53760         </parameters>
53761       </method>
53762       <method name="forward_cursor_position"
53763               c:identifier="gtk_text_iter_forward_cursor_position">
53764         <doc xml:whitespace="preserve">Moves @iter forward by a single cursor position. Cursor positions
53765 are (unsurprisingly) positions where the cursor can appear. Perhaps
53766 surprisingly, there may not be a cursor position between all
53767 characters. The most common example for European languages would be
53768 a carriage return/newline sequence. For some Unicode characters,
53769 the equivalent of say the letter "a" with an accent mark will be
53770 represented as two characters, first the letter then a "combining
53771 mark" that causes the accent to be rendered; so the cursor can't go
53772 between those two characters. See also the #PangoLogAttr structure and
53773 pango_break() function.</doc>
53774         <return-value transfer-ownership="none">
53775           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53776           <type name="gboolean" c:type="gboolean"/>
53777         </return-value>
53778       </method>
53779       <method name="forward_cursor_positions"
53780               c:identifier="gtk_text_iter_forward_cursor_positions">
53781         <doc xml:whitespace="preserve">Moves up to @count cursor positions. See
53782 gtk_text_iter_forward_cursor_position() for details.</doc>
53783         <return-value transfer-ownership="none">
53784           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53785           <type name="gboolean" c:type="gboolean"/>
53786         </return-value>
53787         <parameters>
53788           <parameter name="count" transfer-ownership="none">
53789             <doc xml:whitespace="preserve">number of positions to move</doc>
53790             <type name="gint" c:type="gint"/>
53791           </parameter>
53792         </parameters>
53793       </method>
53794       <method name="forward_find_char"
53795               c:identifier="gtk_text_iter_forward_find_char"
53796               introspectable="0">
53797         <doc xml:whitespace="preserve">Advances @iter, calling @pred on each character. If
53798 If @pred never returns %TRUE, @iter is set to @limit if</doc>
53799         <return-value transfer-ownership="none">
53800           <doc xml:whitespace="preserve">whether a match was found</doc>
53801           <type name="gboolean" c:type="gboolean"/>
53802         </return-value>
53803         <parameters>
53804           <parameter name="pred"
53805                      transfer-ownership="none"
53806                      scope="call"
53807                      closure="1">
53808             <doc xml:whitespace="preserve">a function to be called on each character</doc>
53809             <type name="TextCharPredicate" c:type="GtkTextCharPredicate"/>
53810           </parameter>
53811           <parameter name="user_data" transfer-ownership="none">
53812             <doc xml:whitespace="preserve">user data for @pred</doc>
53813             <type name="gpointer" c:type="gpointer"/>
53814           </parameter>
53815           <parameter name="limit" transfer-ownership="none" allow-none="1">
53816             <doc xml:whitespace="preserve">search limit, or %NULL for none</doc>
53817             <type name="TextIter" c:type="GtkTextIter*"/>
53818           </parameter>
53819         </parameters>
53820       </method>
53821       <method name="forward_line" c:identifier="gtk_text_iter_forward_line">
53822         <doc xml:whitespace="preserve">Moves @iter to the start of the next line. If the iter is already on the
53823 last line of the buffer, moves the iter to the end of the current line.
53824 If after the operation, the iter is at the end of the buffer and not
53825 dereferencable, returns %FALSE. Otherwise, returns %TRUE.</doc>
53826         <return-value transfer-ownership="none">
53827           <doc xml:whitespace="preserve">whether @iter can be dereferenced</doc>
53828           <type name="gboolean" c:type="gboolean"/>
53829         </return-value>
53830       </method>
53831       <method name="forward_lines" c:identifier="gtk_text_iter_forward_lines">
53832         <doc xml:whitespace="preserve">Moves @count lines forward, if possible (if @count would move
53833 past the start or end of the buffer, moves to the start or end of
53834 the buffer).  The return value indicates whether the iterator moved
53835 onto a dereferenceable position; if the iterator didn't move, or
53836 moved onto the end iterator, then %FALSE is returned. If @count is 0,
53837 the function does nothing and returns %FALSE. If @count is negative,
53838 moves backward by 0 - @count lines.</doc>
53839         <return-value transfer-ownership="none">
53840           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
53841           <type name="gboolean" c:type="gboolean"/>
53842         </return-value>
53843         <parameters>
53844           <parameter name="count" transfer-ownership="none">
53845             <doc xml:whitespace="preserve">number of lines to move forward</doc>
53846             <type name="gint" c:type="gint"/>
53847           </parameter>
53848         </parameters>
53849       </method>
53850       <method name="forward_search"
53851               c:identifier="gtk_text_iter_forward_search">
53852         <doc xml:whitespace="preserve">Searches forward for @str. Any match is returned by setting
53853 first character after the match. The search will not continue past
53854 may wish to use @limit to avoid locking up your UI on large
53855 buffers.
53856 If the #GTK_TEXT_SEARCH_VISIBLE_ONLY flag is present, the match may
53857 have invisible text interspersed in @str. i.e. @str will be a
53858 possibly-noncontiguous subsequence of the matched range. similarly,
53859 if you specify #GTK_TEXT_SEARCH_TEXT_ONLY, the match may have
53860 pixbufs or child widgets mixed inside the matched range. If these
53861 flags are not given, the match must be exact; the special 0xFFFC
53862 character in @str will match embedded pixbufs or child widgets.</doc>
53863         <return-value transfer-ownership="none">
53864           <doc xml:whitespace="preserve">whether a match was found</doc>
53865           <type name="gboolean" c:type="gboolean"/>
53866         </return-value>
53867         <parameters>
53868           <parameter name="str" transfer-ownership="none">
53869             <doc xml:whitespace="preserve">a search string</doc>
53870             <type name="utf8" c:type="gchar*"/>
53871           </parameter>
53872           <parameter name="flags" transfer-ownership="none">
53873             <doc xml:whitespace="preserve">flags affecting how the search is done</doc>
53874             <type name="TextSearchFlags" c:type="GtkTextSearchFlags"/>
53875           </parameter>
53876           <parameter name="match_start"
53877                      direction="out"
53878                      caller-allocates="1"
53879                      transfer-ownership="none"
53880                      allow-none="1">
53881             <doc xml:whitespace="preserve">return location for start of match, or %NULL</doc>
53882             <type name="TextIter" c:type="GtkTextIter*"/>
53883           </parameter>
53884           <parameter name="match_end"
53885                      direction="out"
53886                      caller-allocates="1"
53887                      transfer-ownership="none"
53888                      allow-none="1">
53889             <doc xml:whitespace="preserve">return location for end of match, or %NULL</doc>
53890             <type name="TextIter" c:type="GtkTextIter*"/>
53891           </parameter>
53892           <parameter name="limit" transfer-ownership="none" allow-none="1">
53893             <doc xml:whitespace="preserve">bound for the search, or %NULL for the end of the buffer</doc>
53894             <type name="TextIter" c:type="GtkTextIter*"/>
53895           </parameter>
53896         </parameters>
53897       </method>
53898       <method name="forward_sentence_end"
53899               c:identifier="gtk_text_iter_forward_sentence_end">
53900         <doc xml:whitespace="preserve">Moves forward to the next sentence end. (If @iter is at the end of
53901 a sentence, moves to the next end of sentence.)  Sentence
53902 boundaries are determined by Pango and should be correct for nearly
53903 any language (if not, the correct fix would be to the Pango text
53904 boundary algorithms).</doc>
53905         <return-value transfer-ownership="none">
53906           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53907           <type name="gboolean" c:type="gboolean"/>
53908         </return-value>
53909       </method>
53910       <method name="forward_sentence_ends"
53911               c:identifier="gtk_text_iter_forward_sentence_ends">
53912         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_sentence_end() @count times (or until
53913 gtk_text_iter_forward_sentence_end() returns %FALSE). If @count is
53914 negative, moves backward instead of forward.</doc>
53915         <return-value transfer-ownership="none">
53916           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
53917           <type name="gboolean" c:type="gboolean"/>
53918         </return-value>
53919         <parameters>
53920           <parameter name="count" transfer-ownership="none">
53921             <doc xml:whitespace="preserve">number of sentences to move</doc>
53922             <type name="gint" c:type="gint"/>
53923           </parameter>
53924         </parameters>
53925       </method>
53926       <method name="forward_to_end"
53927               c:identifier="gtk_text_iter_forward_to_end">
53928         <doc xml:whitespace="preserve">Moves @iter forward to the "end iterator," which points one past the last
53929 valid character in the buffer. gtk_text_iter_get_char() called on the
53930 end iterator returns 0, which is convenient for writing loops.</doc>
53931         <return-value transfer-ownership="none">
53932           <type name="none" c:type="void"/>
53933         </return-value>
53934       </method>
53935       <method name="forward_to_line_end"
53936               c:identifier="gtk_text_iter_forward_to_line_end">
53937         <doc xml:whitespace="preserve">Moves the iterator to point to the paragraph delimiter characters,
53938 which will be either a newline, a carriage return, a carriage
53939 return/newline in sequence, or the Unicode paragraph separator
53940 character. If the iterator is already at the paragraph delimiter
53941 characters, moves to the paragraph delimiter characters for the
53942 next line. If @iter is on the last line in the buffer, which does
53943 not end in paragraph delimiters, moves to the end iterator (end of
53944 the last line), and returns %FALSE.</doc>
53945         <return-value transfer-ownership="none">
53946           <doc xml:whitespace="preserve">%TRUE if we moved and the new location is not the end iterator</doc>
53947           <type name="gboolean" c:type="gboolean"/>
53948         </return-value>
53949       </method>
53950       <method name="forward_to_tag_toggle"
53951               c:identifier="gtk_text_iter_forward_to_tag_toggle">
53952         <doc xml:whitespace="preserve">Moves forward to the next toggle (on or off) of the
53953 #GtkTextTag @tag, or to the next toggle of any tag if
53954 returns %FALSE, otherwise %TRUE. Does not return toggles
53955 located at @iter, only toggles after @iter. Sets @iter to
53956 the location of the toggle, or to the end of the buffer
53957 if no toggle is found.</doc>
53958         <return-value transfer-ownership="none">
53959           <doc xml:whitespace="preserve">whether we found a tag toggle after @iter</doc>
53960           <type name="gboolean" c:type="gboolean"/>
53961         </return-value>
53962         <parameters>
53963           <parameter name="tag" transfer-ownership="none" allow-none="1">
53964             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
53965             <type name="TextTag" c:type="GtkTextTag*"/>
53966           </parameter>
53967         </parameters>
53968       </method>
53969       <method name="forward_visible_cursor_position"
53970               c:identifier="gtk_text_iter_forward_visible_cursor_position"
53971               version="2.4">
53972         <doc xml:whitespace="preserve">Moves @iter forward to the next visible cursor position. See 
53973 gtk_text_iter_forward_cursor_position() for details.</doc>
53974         <return-value transfer-ownership="none">
53975           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53976           <type name="gboolean" c:type="gboolean"/>
53977         </return-value>
53978       </method>
53979       <method name="forward_visible_cursor_positions"
53980               c:identifier="gtk_text_iter_forward_visible_cursor_positions"
53981               version="2.4">
53982         <doc xml:whitespace="preserve">Moves up to @count visible cursor positions. See
53983 gtk_text_iter_forward_cursor_position() for details.</doc>
53984         <return-value transfer-ownership="none">
53985           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
53986           <type name="gboolean" c:type="gboolean"/>
53987         </return-value>
53988         <parameters>
53989           <parameter name="count" transfer-ownership="none">
53990             <doc xml:whitespace="preserve">number of positions to move</doc>
53991             <type name="gint" c:type="gint"/>
53992           </parameter>
53993         </parameters>
53994       </method>
53995       <method name="forward_visible_line"
53996               c:identifier="gtk_text_iter_forward_visible_line"
53997               version="2.8">
53998         <doc xml:whitespace="preserve">Moves @iter to the start of the next visible line. Returns %TRUE if there
53999 was a next line to move to, and %FALSE if @iter was simply moved to
54000 the end of the buffer and is now not dereferenceable, or if @iter was
54001 already at the end of the buffer.</doc>
54002         <return-value transfer-ownership="none">
54003           <doc xml:whitespace="preserve">whether @iter can be dereferenced</doc>
54004           <type name="gboolean" c:type="gboolean"/>
54005         </return-value>
54006       </method>
54007       <method name="forward_visible_lines"
54008               c:identifier="gtk_text_iter_forward_visible_lines"
54009               version="2.8">
54010         <doc xml:whitespace="preserve">Moves @count visible lines forward, if possible (if @count would move
54011 past the start or end of the buffer, moves to the start or end of
54012 the buffer).  The return value indicates whether the iterator moved
54013 onto a dereferenceable position; if the iterator didn't move, or
54014 moved onto the end iterator, then %FALSE is returned. If @count is 0,
54015 the function does nothing and returns %FALSE. If @count is negative,
54016 moves backward by 0 - @count lines.</doc>
54017         <return-value transfer-ownership="none">
54018           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
54019           <type name="gboolean" c:type="gboolean"/>
54020         </return-value>
54021         <parameters>
54022           <parameter name="count" transfer-ownership="none">
54023             <doc xml:whitespace="preserve">number of lines to move forward</doc>
54024             <type name="gint" c:type="gint"/>
54025           </parameter>
54026         </parameters>
54027       </method>
54028       <method name="forward_visible_word_end"
54029               c:identifier="gtk_text_iter_forward_visible_word_end"
54030               version="2.4">
54031         <doc xml:whitespace="preserve">Moves forward to the next visible word end. (If @iter is currently on a
54032 word end, moves forward to the next one after that.) Word breaks
54033 are determined by Pango and should be correct for nearly any
54034 language (if not, the correct fix would be to the Pango word break
54035 algorithms).</doc>
54036         <return-value transfer-ownership="none">
54037           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
54038           <type name="gboolean" c:type="gboolean"/>
54039         </return-value>
54040       </method>
54041       <method name="forward_visible_word_ends"
54042               c:identifier="gtk_text_iter_forward_visible_word_ends"
54043               version="2.4">
54044         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_visible_word_end() up to @count times.</doc>
54045         <return-value transfer-ownership="none">
54046           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
54047           <type name="gboolean" c:type="gboolean"/>
54048         </return-value>
54049         <parameters>
54050           <parameter name="count" transfer-ownership="none">
54051             <doc xml:whitespace="preserve">number of times to move</doc>
54052             <type name="gint" c:type="gint"/>
54053           </parameter>
54054         </parameters>
54055       </method>
54056       <method name="forward_word_end"
54057               c:identifier="gtk_text_iter_forward_word_end">
54058         <doc xml:whitespace="preserve">Moves forward to the next word end. (If @iter is currently on a
54059 word end, moves forward to the next one after that.) Word breaks
54060 are determined by Pango and should be correct for nearly any
54061 language (if not, the correct fix would be to the Pango word break
54062 algorithms).</doc>
54063         <return-value transfer-ownership="none">
54064           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
54065           <type name="gboolean" c:type="gboolean"/>
54066         </return-value>
54067       </method>
54068       <method name="forward_word_ends"
54069               c:identifier="gtk_text_iter_forward_word_ends">
54070         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_word_end() up to @count times.</doc>
54071         <return-value transfer-ownership="none">
54072           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
54073           <type name="gboolean" c:type="gboolean"/>
54074         </return-value>
54075         <parameters>
54076           <parameter name="count" transfer-ownership="none">
54077             <doc xml:whitespace="preserve">number of times to move</doc>
54078             <type name="gint" c:type="gint"/>
54079           </parameter>
54080         </parameters>
54081       </method>
54082       <method name="free" c:identifier="gtk_text_iter_free">
54083         <doc xml:whitespace="preserve">Free an iterator allocated on the heap. This function
54084 is intended for use in language bindings, and is not
54085 especially useful for applications, because iterators can
54086 simply be allocated on the stack.</doc>
54087         <return-value transfer-ownership="none">
54088           <type name="none" c:type="void"/>
54089         </return-value>
54090       </method>
54091       <method name="get_attributes"
54092               c:identifier="gtk_text_iter_get_attributes">
54093         <doc xml:whitespace="preserve">Computes the effect of any tags applied to this spot in the
54094 text. The @values parameter should be initialized to the default
54095 settings you wish to use if no tags are in effect. You'd typically
54096 obtain the defaults from gtk_text_view_get_default_attributes().
54097 gtk_text_iter_get_attributes () will modify @values, applying the
54098 effects of any tags present at @iter. If any tags affected @values,
54099 the function returns %TRUE.</doc>
54100         <return-value transfer-ownership="none">
54101           <doc xml:whitespace="preserve">%TRUE if @values was modified</doc>
54102           <type name="gboolean" c:type="gboolean"/>
54103         </return-value>
54104         <parameters>
54105           <parameter name="values" transfer-ownership="none">
54106             <doc xml:whitespace="preserve">a #GtkTextAttributes to be filled in</doc>
54107             <type name="TextAttributes" c:type="GtkTextAttributes*"/>
54108           </parameter>
54109         </parameters>
54110       </method>
54111       <method name="get_buffer" c:identifier="gtk_text_iter_get_buffer">
54112         <doc xml:whitespace="preserve">Returns the #GtkTextBuffer this iterator is associated with.</doc>
54113         <return-value transfer-ownership="none">
54114           <doc xml:whitespace="preserve">the buffer</doc>
54115           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
54116         </return-value>
54117       </method>
54118       <method name="get_bytes_in_line"
54119               c:identifier="gtk_text_iter_get_bytes_in_line">
54120         <doc xml:whitespace="preserve">Returns the number of bytes in the line containing @iter,
54121 including the paragraph delimiters.</doc>
54122         <return-value transfer-ownership="none">
54123           <doc xml:whitespace="preserve">number of bytes in the line</doc>
54124           <type name="gint" c:type="gint"/>
54125         </return-value>
54126       </method>
54127       <method name="get_char"
54128               c:identifier="gtk_text_iter_get_char"
54129               introspectable="0">
54130         <doc xml:whitespace="preserve">Returns the Unicode character at this iterator.  (Equivalent to
54131 operator* on a C++ iterator.)  If the element at this iterator is a
54132 non-character element, such as an image embedded in the buffer, the
54133 Unicode "unknown" character 0xFFFC is returned. If invoked on
54134 the end iterator, zero is returned; zero is not a valid Unicode character.
54135 So you can write a loop which ends when gtk_text_iter_get_char ()
54136 returns 0.</doc>
54137         <return-value transfer-ownership="none">
54138           <doc xml:whitespace="preserve">a Unicode character, or 0 if @iter is not dereferenceable</doc>
54139           <type name="gunichar" c:type="gunichar"/>
54140         </return-value>
54141       </method>
54142       <method name="get_chars_in_line"
54143               c:identifier="gtk_text_iter_get_chars_in_line">
54144         <doc xml:whitespace="preserve">Returns the number of characters in the line containing @iter,
54145 including the paragraph delimiters.</doc>
54146         <return-value transfer-ownership="none">
54147           <doc xml:whitespace="preserve">number of characters in the line</doc>
54148           <type name="gint" c:type="gint"/>
54149         </return-value>
54150       </method>
54151       <method name="get_child_anchor"
54152               c:identifier="gtk_text_iter_get_child_anchor">
54153         <doc xml:whitespace="preserve">If the location at @iter contains a child anchor, the
54154 anchor is returned (with no new reference count added). Otherwise,
54155 %NULL is returned.</doc>
54156         <return-value transfer-ownership="none">
54157           <doc xml:whitespace="preserve">the anchor at @iter</doc>
54158           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
54159         </return-value>
54160       </method>
54161       <method name="get_language" c:identifier="gtk_text_iter_get_language">
54162         <doc xml:whitespace="preserve">A convenience wrapper around gtk_text_iter_get_attributes (),
54163 which returns the language in effect at @iter. If no tags affecting
54164 language apply to @iter, the return value is identical to that of
54165 gtk_get_default_language ().</doc>
54166         <return-value transfer-ownership="full">
54167           <doc xml:whitespace="preserve">language in effect at @iter</doc>
54168           <type name="Pango.Language" c:type="PangoLanguage*"/>
54169         </return-value>
54170       </method>
54171       <method name="get_line" c:identifier="gtk_text_iter_get_line">
54172         <doc xml:whitespace="preserve">Returns the line number containing the iterator. Lines in
54173 a #GtkTextBuffer are numbered beginning with 0 for the first
54174 line in the buffer.</doc>
54175         <return-value transfer-ownership="none">
54176           <doc xml:whitespace="preserve">a line number</doc>
54177           <type name="gint" c:type="gint"/>
54178         </return-value>
54179       </method>
54180       <method name="get_line_index"
54181               c:identifier="gtk_text_iter_get_line_index">
54182         <doc xml:whitespace="preserve">Returns the byte index of the iterator, counting
54183 from the start of a newline-terminated line.
54184 Remember that #GtkTextBuffer encodes text in
54185 UTF-8, and that characters can require a variable
54186 number of bytes to represent.</doc>
54187         <return-value transfer-ownership="none">
54188           <doc xml:whitespace="preserve">distance from start of line, in bytes</doc>
54189           <type name="gint" c:type="gint"/>
54190         </return-value>
54191       </method>
54192       <method name="get_line_offset"
54193               c:identifier="gtk_text_iter_get_line_offset">
54194         <doc xml:whitespace="preserve">Returns the character offset of the iterator,
54195 counting from the start of a newline-terminated line.
54196 The first character on the line has offset 0.</doc>
54197         <return-value transfer-ownership="none">
54198           <doc xml:whitespace="preserve">offset from start of line</doc>
54199           <type name="gint" c:type="gint"/>
54200         </return-value>
54201       </method>
54202       <method name="get_marks" c:identifier="gtk_text_iter_get_marks">
54203         <doc xml:whitespace="preserve">Returns a list of all #GtkTextMark at this location. Because marks
54204 are not iterable (they don't take up any "space" in the buffer,
54205 they are just marks in between iterable locations), multiple marks
54206 can exist in the same place. The returned list is not in any
54207 meaningful order.</doc>
54208         <return-value transfer-ownership="container">
54209           <doc xml:whitespace="preserve">list of #GtkTextMark</doc>
54210           <type name="GLib.SList" c:type="GSList*">
54211             <type name="TextMark"/>
54212           </type>
54213         </return-value>
54214       </method>
54215       <method name="get_offset" c:identifier="gtk_text_iter_get_offset">
54216         <doc xml:whitespace="preserve">Returns the character offset of an iterator.
54217 Each character in a #GtkTextBuffer has an offset,
54218 starting with 0 for the first character in the buffer.
54219 Use gtk_text_buffer_get_iter_at_offset () to convert an
54220 offset back into an iterator.</doc>
54221         <return-value transfer-ownership="none">
54222           <doc xml:whitespace="preserve">a character offset</doc>
54223           <type name="gint" c:type="gint"/>
54224         </return-value>
54225       </method>
54226       <method name="get_pixbuf" c:identifier="gtk_text_iter_get_pixbuf">
54227         <doc xml:whitespace="preserve">If the element at @iter is a pixbuf, the pixbuf is returned
54228 (with no new reference count added). Otherwise,
54229 %NULL is returned.</doc>
54230         <return-value transfer-ownership="none">
54231           <doc xml:whitespace="preserve">the pixbuf at @iter</doc>
54232           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
54233         </return-value>
54234       </method>
54235       <method name="get_slice" c:identifier="gtk_text_iter_get_slice">
54236         <doc xml:whitespace="preserve">Returns the text in the given range. A "slice" is an array of
54237 characters encoded in UTF-8 format, including the Unicode "unknown"
54238 character 0xFFFC for iterable non-character elements in the buffer,
54239 such as images.  Because images are encoded in the slice, byte and
54240 character offsets in the returned array will correspond to byte
54241 offsets in the text buffer. Note that 0xFFFC can occur in normal
54242 text as well, so it is not a reliable indicator that a pixbuf or
54243 widget is in the buffer.</doc>
54244         <return-value transfer-ownership="full">
54245           <doc xml:whitespace="preserve">slice of text from the buffer</doc>
54246           <type name="utf8" c:type="gchar*"/>
54247         </return-value>
54248         <parameters>
54249           <parameter name="end" transfer-ownership="none">
54250             <doc xml:whitespace="preserve">iterator at end of a range</doc>
54251             <type name="TextIter" c:type="GtkTextIter*"/>
54252           </parameter>
54253         </parameters>
54254       </method>
54255       <method name="get_tags" c:identifier="gtk_text_iter_get_tags">
54256         <doc xml:whitespace="preserve">Returns a list of tags that apply to @iter, in ascending order of
54257 priority (highest-priority tags are last). The #GtkTextTag in the
54258 list don't have a reference added, but you have to free the list
54259 itself.</doc>
54260         <return-value transfer-ownership="container">
54261           <doc xml:whitespace="preserve">list of #GtkTextTag</doc>
54262           <type name="GLib.SList" c:type="GSList*">
54263             <type name="TextTag"/>
54264           </type>
54265         </return-value>
54266       </method>
54267       <method name="get_text" c:identifier="gtk_text_iter_get_text">
54268         <doc xml:whitespace="preserve">Returns &lt;emphasis&gt;text&lt;/emphasis&gt; in the given range.  If the range
54269 contains non-text elements such as images, the character and byte
54270 offsets in the returned string will not correspond to character and
54271 byte offsets in the buffer. If you want offsets to correspond, see
54272 gtk_text_iter_get_slice ().</doc>
54273         <return-value transfer-ownership="full">
54274           <doc xml:whitespace="preserve">array of characters from the buffer</doc>
54275           <type name="utf8" c:type="gchar*"/>
54276         </return-value>
54277         <parameters>
54278           <parameter name="end" transfer-ownership="none">
54279             <doc xml:whitespace="preserve">iterator at end of a range</doc>
54280             <type name="TextIter" c:type="GtkTextIter*"/>
54281           </parameter>
54282         </parameters>
54283       </method>
54284       <method name="get_toggled_tags"
54285               c:identifier="gtk_text_iter_get_toggled_tags">
54286         <doc xml:whitespace="preserve">Returns a list of #GtkTextTag that are toggled on or off at this
54287 point.  (If @toggled_on is %TRUE, the list contains tags that are
54288 toggled on.) If a tag is toggled on at @iter, then some non-empty
54289 range of characters following @iter has that tag applied to it.  If
54290 a tag is toggled off, then some non-empty range following @iter
54291 does &lt;emphasis&gt;not&lt;/emphasis&gt; have the tag applied to it.</doc>
54292         <return-value transfer-ownership="container">
54293           <doc xml:whitespace="preserve">tags toggled at this point</doc>
54294           <type name="GLib.SList" c:type="GSList*">
54295             <type name="TextTag"/>
54296           </type>
54297         </return-value>
54298         <parameters>
54299           <parameter name="toggled_on" transfer-ownership="none">
54300             <doc xml:whitespace="preserve">%TRUE to get toggled-on tags</doc>
54301             <type name="gboolean" c:type="gboolean"/>
54302           </parameter>
54303         </parameters>
54304       </method>
54305       <method name="get_visible_line_index"
54306               c:identifier="gtk_text_iter_get_visible_line_index">
54307         <doc xml:whitespace="preserve">Returns the number of bytes from the start of the
54308 line to the given @iter, not counting bytes that
54309 are invisible due to tags with the "invisible" flag
54310 toggled on.</doc>
54311         <return-value transfer-ownership="none">
54312           <doc xml:whitespace="preserve">byte index of @iter with respect to the start of the line</doc>
54313           <type name="gint" c:type="gint"/>
54314         </return-value>
54315       </method>
54316       <method name="get_visible_line_offset"
54317               c:identifier="gtk_text_iter_get_visible_line_offset">
54318         <doc xml:whitespace="preserve">Returns the offset in characters from the start of the
54319 line to the given @iter, not counting characters that
54320 are invisible due to tags with the "invisible" flag
54321 toggled on.</doc>
54322         <return-value transfer-ownership="none">
54323           <doc xml:whitespace="preserve">offset in visible characters from the start of the line</doc>
54324           <type name="gint" c:type="gint"/>
54325         </return-value>
54326       </method>
54327       <method name="get_visible_slice"
54328               c:identifier="gtk_text_iter_get_visible_slice">
54329         <doc xml:whitespace="preserve">Like gtk_text_iter_get_slice (), but invisible text is not included.
54330 Invisible text is usually invisible because a #GtkTextTag with the
54331 "invisible" attribute turned on has been applied to it.</doc>
54332         <return-value transfer-ownership="full">
54333           <doc xml:whitespace="preserve">slice of text from the buffer</doc>
54334           <type name="utf8" c:type="gchar*"/>
54335         </return-value>
54336         <parameters>
54337           <parameter name="end" transfer-ownership="none">
54338             <doc xml:whitespace="preserve">iterator at end of range</doc>
54339             <type name="TextIter" c:type="GtkTextIter*"/>
54340           </parameter>
54341         </parameters>
54342       </method>
54343       <method name="get_visible_text"
54344               c:identifier="gtk_text_iter_get_visible_text">
54345         <doc xml:whitespace="preserve">Like gtk_text_iter_get_text (), but invisible text is not included.
54346 Invisible text is usually invisible because a #GtkTextTag with the
54347 "invisible" attribute turned on has been applied to it.</doc>
54348         <return-value transfer-ownership="full">
54349           <doc xml:whitespace="preserve">string containing visible text in the range</doc>
54350           <type name="utf8" c:type="gchar*"/>
54351         </return-value>
54352         <parameters>
54353           <parameter name="end" transfer-ownership="none">
54354             <doc xml:whitespace="preserve">iterator at end of range</doc>
54355             <type name="TextIter" c:type="GtkTextIter*"/>
54356           </parameter>
54357         </parameters>
54358       </method>
54359       <method name="has_tag" c:identifier="gtk_text_iter_has_tag">
54360         <doc xml:whitespace="preserve">Returns %TRUE if @iter is within a range tagged with @tag.</doc>
54361         <return-value transfer-ownership="none">
54362           <doc xml:whitespace="preserve">whether @iter is tagged with @tag</doc>
54363           <type name="gboolean" c:type="gboolean"/>
54364         </return-value>
54365         <parameters>
54366           <parameter name="tag" transfer-ownership="none">
54367             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
54368             <type name="TextTag" c:type="GtkTextTag*"/>
54369           </parameter>
54370         </parameters>
54371       </method>
54372       <method name="in_range" c:identifier="gtk_text_iter_in_range">
54373         <doc xml:whitespace="preserve">Checks whether @iter falls in the range [@start, @end).</doc>
54374         <return-value transfer-ownership="none">
54375           <doc xml:whitespace="preserve">%TRUE if @iter is in the range</doc>
54376           <type name="gboolean" c:type="gboolean"/>
54377         </return-value>
54378         <parameters>
54379           <parameter name="start" transfer-ownership="none">
54380             <doc xml:whitespace="preserve">start of range</doc>
54381             <type name="TextIter" c:type="GtkTextIter*"/>
54382           </parameter>
54383           <parameter name="end" transfer-ownership="none">
54384             <doc xml:whitespace="preserve">end of range</doc>
54385             <type name="TextIter" c:type="GtkTextIter*"/>
54386           </parameter>
54387         </parameters>
54388       </method>
54389       <method name="inside_sentence"
54390               c:identifier="gtk_text_iter_inside_sentence">
54391         <doc xml:whitespace="preserve">Determines whether @iter is inside a sentence (as opposed to in
54392 between two sentences, e.g. after a period and before the first
54393 letter of the next sentence).  Sentence boundaries are determined
54394 by Pango and should be correct for nearly any language (if not, the
54395 correct fix would be to the Pango text boundary algorithms).</doc>
54396         <return-value transfer-ownership="none">
54397           <doc xml:whitespace="preserve">%TRUE if @iter is inside a sentence.</doc>
54398           <type name="gboolean" c:type="gboolean"/>
54399         </return-value>
54400       </method>
54401       <method name="inside_word" c:identifier="gtk_text_iter_inside_word">
54402         <doc xml:whitespace="preserve">Determines whether @iter is inside a natural-language word (as
54403 opposed to say inside some whitespace).  Word breaks are determined
54404 by Pango and should be correct for nearly any language (if not, the
54405 correct fix would be to the Pango word break algorithms).</doc>
54406         <return-value transfer-ownership="none">
54407           <doc xml:whitespace="preserve">%TRUE if @iter is inside a word</doc>
54408           <type name="gboolean" c:type="gboolean"/>
54409         </return-value>
54410       </method>
54411       <method name="is_cursor_position"
54412               c:identifier="gtk_text_iter_is_cursor_position">
54413         <doc xml:whitespace="preserve">See gtk_text_iter_forward_cursor_position() or #PangoLogAttr or
54414 pango_break() for details on what a cursor position is.</doc>
54415         <return-value transfer-ownership="none">
54416           <doc xml:whitespace="preserve">%TRUE if the cursor can be placed at @iter</doc>
54417           <type name="gboolean" c:type="gboolean"/>
54418         </return-value>
54419       </method>
54420       <method name="is_end" c:identifier="gtk_text_iter_is_end">
54421         <doc xml:whitespace="preserve">Returns %TRUE if @iter is the end iterator, i.e. one past the last
54422 dereferenceable iterator in the buffer. gtk_text_iter_is_end () is
54423 the most efficient way to check whether an iterator is the end
54424 iterator.</doc>
54425         <return-value transfer-ownership="none">
54426           <doc xml:whitespace="preserve">whether @iter is the end iterator</doc>
54427           <type name="gboolean" c:type="gboolean"/>
54428         </return-value>
54429       </method>
54430       <method name="is_start" c:identifier="gtk_text_iter_is_start">
54431         <doc xml:whitespace="preserve">Returns %TRUE if @iter is the first iterator in the buffer, that is
54432 if @iter has a character offset of 0.</doc>
54433         <return-value transfer-ownership="none">
54434           <doc xml:whitespace="preserve">whether @iter is the first in the buffer</doc>
54435           <type name="gboolean" c:type="gboolean"/>
54436         </return-value>
54437       </method>
54438       <method name="order" c:identifier="gtk_text_iter_order">
54439         <doc xml:whitespace="preserve">Swaps the value of @first and @second if @second comes before
54440 in sequence. Most text buffer functions that take a range call this
54441 automatically on your behalf, so there's no real reason to call it yourself
54442 in those cases. There are some exceptions, such as gtk_text_iter_in_range(),
54443 that expect a pre-sorted range.</doc>
54444         <return-value transfer-ownership="none">
54445           <type name="none" c:type="void"/>
54446         </return-value>
54447         <parameters>
54448           <parameter name="second" transfer-ownership="none">
54449             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
54450             <type name="TextIter" c:type="GtkTextIter*"/>
54451           </parameter>
54452         </parameters>
54453       </method>
54454       <method name="set_line" c:identifier="gtk_text_iter_set_line">
54455         <doc xml:whitespace="preserve">Moves iterator @iter to the start of the line @line_number.  If
54456 buffer, moves @iter to the start of the last line in the buffer.</doc>
54457         <return-value transfer-ownership="none">
54458           <type name="none" c:type="void"/>
54459         </return-value>
54460         <parameters>
54461           <parameter name="line_number" transfer-ownership="none">
54462             <doc xml:whitespace="preserve">line number (counted from 0)</doc>
54463             <type name="gint" c:type="gint"/>
54464           </parameter>
54465         </parameters>
54466       </method>
54467       <method name="set_line_index"
54468               c:identifier="gtk_text_iter_set_line_index">
54469         <doc xml:whitespace="preserve">Same as gtk_text_iter_set_line_offset(), but works with a
54470 &lt;emphasis&gt;byte&lt;/emphasis&gt; index. The given byte index must be at
54471 the start of a character, it can't be in the middle of a UTF-8
54472 encoded character.</doc>
54473         <return-value transfer-ownership="none">
54474           <type name="none" c:type="void"/>
54475         </return-value>
54476         <parameters>
54477           <parameter name="byte_on_line" transfer-ownership="none">
54478             <doc xml:whitespace="preserve">a byte index relative to the start of @iter's current line</doc>
54479             <type name="gint" c:type="gint"/>
54480           </parameter>
54481         </parameters>
54482       </method>
54483       <method name="set_line_offset"
54484               c:identifier="gtk_text_iter_set_line_offset">
54485         <doc xml:whitespace="preserve">Moves @iter within a line, to a new &lt;emphasis&gt;character&lt;/emphasis&gt;
54486 (not byte) offset. The given character offset must be less than or
54487 equal to the number of characters in the line; if equal, @iter
54488 moves to the start of the next line. See
54489 gtk_text_iter_set_line_index() if you have a byte index rather than
54490 a character offset.</doc>
54491         <return-value transfer-ownership="none">
54492           <type name="none" c:type="void"/>
54493         </return-value>
54494         <parameters>
54495           <parameter name="char_on_line" transfer-ownership="none">
54496             <doc xml:whitespace="preserve">a character offset relative to the start of @iter's current line</doc>
54497             <type name="gint" c:type="gint"/>
54498           </parameter>
54499         </parameters>
54500       </method>
54501       <method name="set_offset" c:identifier="gtk_text_iter_set_offset">
54502         <doc xml:whitespace="preserve">Sets @iter to point to @char_offset. @char_offset counts from the start
54503 of the entire text buffer, starting with 0.</doc>
54504         <return-value transfer-ownership="none">
54505           <type name="none" c:type="void"/>
54506         </return-value>
54507         <parameters>
54508           <parameter name="char_offset" transfer-ownership="none">
54509             <doc xml:whitespace="preserve">a character number</doc>
54510             <type name="gint" c:type="gint"/>
54511           </parameter>
54512         </parameters>
54513       </method>
54514       <method name="set_visible_line_index"
54515               c:identifier="gtk_text_iter_set_visible_line_index">
54516         <doc xml:whitespace="preserve">Like gtk_text_iter_set_line_index(), but the index is in visible
54517 bytes, i.e. text with a tag making it invisible is not counted
54518 in the index.</doc>
54519         <return-value transfer-ownership="none">
54520           <type name="none" c:type="void"/>
54521         </return-value>
54522         <parameters>
54523           <parameter name="byte_on_line" transfer-ownership="none">
54524             <doc xml:whitespace="preserve">a byte index</doc>
54525             <type name="gint" c:type="gint"/>
54526           </parameter>
54527         </parameters>
54528       </method>
54529       <method name="set_visible_line_offset"
54530               c:identifier="gtk_text_iter_set_visible_line_offset">
54531         <doc xml:whitespace="preserve">Like gtk_text_iter_set_line_offset(), but the offset is in visible
54532 characters, i.e. text with a tag making it invisible is not
54533 counted in the offset.</doc>
54534         <return-value transfer-ownership="none">
54535           <type name="none" c:type="void"/>
54536         </return-value>
54537         <parameters>
54538           <parameter name="char_on_line" transfer-ownership="none">
54539             <doc xml:whitespace="preserve">a character offset</doc>
54540             <type name="gint" c:type="gint"/>
54541           </parameter>
54542         </parameters>
54543       </method>
54544       <method name="starts_line" c:identifier="gtk_text_iter_starts_line">
54545         <doc xml:whitespace="preserve">Returns %TRUE if @iter begins a paragraph,
54546 i.e. if gtk_text_iter_get_line_offset () would return 0.
54547 However this function is potentially more efficient than
54548 gtk_text_iter_get_line_offset () because it doesn't have to compute
54549 the offset, it just has to see whether it's 0.</doc>
54550         <return-value transfer-ownership="none">
54551           <doc xml:whitespace="preserve">whether @iter begins a line</doc>
54552           <type name="gboolean" c:type="gboolean"/>
54553         </return-value>
54554       </method>
54555       <method name="starts_sentence"
54556               c:identifier="gtk_text_iter_starts_sentence">
54557         <doc xml:whitespace="preserve">Determines whether @iter begins a sentence.  Sentence boundaries are
54558 determined by Pango and should be correct for nearly any language
54559 (if not, the correct fix would be to the Pango text boundary
54560 algorithms).</doc>
54561         <return-value transfer-ownership="none">
54562           <doc xml:whitespace="preserve">%TRUE if @iter is at the start of a sentence.</doc>
54563           <type name="gboolean" c:type="gboolean"/>
54564         </return-value>
54565       </method>
54566       <method name="starts_word" c:identifier="gtk_text_iter_starts_word">
54567         <doc xml:whitespace="preserve">Determines whether @iter begins a natural-language word.  Word
54568 breaks are determined by Pango and should be correct for nearly any
54569 language (if not, the correct fix would be to the Pango word break
54570 algorithms).</doc>
54571         <return-value transfer-ownership="none">
54572           <doc xml:whitespace="preserve">%TRUE if @iter is at the start of a word</doc>
54573           <type name="gboolean" c:type="gboolean"/>
54574         </return-value>
54575       </method>
54576       <method name="toggles_tag" c:identifier="gtk_text_iter_toggles_tag">
54577         <doc xml:whitespace="preserve">This is equivalent to (gtk_text_iter_begins_tag () ||
54578 gtk_text_iter_ends_tag ()), i.e. it tells you whether a range with</doc>
54579         <return-value transfer-ownership="none">
54580           <doc xml:whitespace="preserve">whether @tag is toggled on or off at @iter</doc>
54581           <type name="gboolean" c:type="gboolean"/>
54582         </return-value>
54583         <parameters>
54584           <parameter name="tag" transfer-ownership="none" allow-none="1">
54585             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
54586             <type name="TextTag" c:type="GtkTextTag*"/>
54587           </parameter>
54588         </parameters>
54589       </method>
54590     </record>
54591     <class name="TextMark"
54592            c:symbol-prefix="text_mark"
54593            c:type="GtkTextMark"
54594            parent="GObject.Object"
54595            glib:type-name="GtkTextMark"
54596            glib:get-type="gtk_text_mark_get_type"
54597            glib:type-struct="TextMarkClass">
54598       <constructor name="new" c:identifier="gtk_text_mark_new" version="2.12">
54599         <doc xml:whitespace="preserve">Creates a text mark. Add it to a buffer using gtk_text_buffer_add_mark().
54600 If @name is %NULL, the mark is anonymous; otherwise, the mark can be 
54601 retrieved by name using gtk_text_buffer_get_mark(). If a mark has left 
54602 gravity, and text is inserted at the mark's current location, the mark 
54603 will be moved to the left of the newly-inserted text. If the mark has 
54604 right gravity (@left_gravity = %FALSE), the mark will end up on the 
54605 right of newly-inserted text. The standard left-to-right cursor is a 
54606 mark with right gravity (when you type, the cursor stays on the right
54607 side of the text you're typing).</doc>
54608         <return-value transfer-ownership="full">
54609           <doc xml:whitespace="preserve">new #GtkTextMark</doc>
54610           <type name="TextMark" c:type="GtkTextMark*"/>
54611         </return-value>
54612         <parameters>
54613           <parameter name="name" transfer-ownership="none" allow-none="1">
54614             <doc xml:whitespace="preserve">mark name or %NULL</doc>
54615             <type name="utf8" c:type="gchar*"/>
54616           </parameter>
54617           <parameter name="left_gravity" transfer-ownership="none">
54618             <doc xml:whitespace="preserve">whether the mark should have left gravity</doc>
54619             <type name="gboolean" c:type="gboolean"/>
54620           </parameter>
54621         </parameters>
54622       </constructor>
54623       <method name="get_buffer" c:identifier="gtk_text_mark_get_buffer">
54624         <doc xml:whitespace="preserve">Gets the buffer this mark is located inside,
54625 or %NULL if the mark is deleted.</doc>
54626         <return-value transfer-ownership="none">
54627           <doc xml:whitespace="preserve">the mark's #GtkTextBuffer</doc>
54628           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
54629         </return-value>
54630       </method>
54631       <method name="get_deleted" c:identifier="gtk_text_mark_get_deleted">
54632         <doc xml:whitespace="preserve">Returns %TRUE if the mark has been removed from its buffer
54633 with gtk_text_buffer_delete_mark(). See gtk_text_buffer_add_mark()
54634 for a way to add it to a buffer again.</doc>
54635         <return-value transfer-ownership="none">
54636           <doc xml:whitespace="preserve">whether the mark is deleted</doc>
54637           <type name="gboolean" c:type="gboolean"/>
54638         </return-value>
54639       </method>
54640       <method name="get_left_gravity"
54641               c:identifier="gtk_text_mark_get_left_gravity">
54642         <doc xml:whitespace="preserve">Determines whether the mark has left gravity.</doc>
54643         <return-value transfer-ownership="none">
54644           <doc xml:whitespace="preserve">%TRUE if the mark has left gravity, %FALSE otherwise</doc>
54645           <type name="gboolean" c:type="gboolean"/>
54646         </return-value>
54647       </method>
54648       <method name="get_name" c:identifier="gtk_text_mark_get_name">
54649         <doc xml:whitespace="preserve">Returns the mark name; returns NULL for anonymous marks.</doc>
54650         <return-value transfer-ownership="none">
54651           <doc xml:whitespace="preserve">mark name</doc>
54652           <type name="utf8" c:type="gchar*"/>
54653         </return-value>
54654       </method>
54655       <method name="get_visible" c:identifier="gtk_text_mark_get_visible">
54656         <doc xml:whitespace="preserve">Returns %TRUE if the mark is visible (i.e. a cursor is displayed
54657 for it).</doc>
54658         <return-value transfer-ownership="none">
54659           <doc xml:whitespace="preserve">%TRUE if visible</doc>
54660           <type name="gboolean" c:type="gboolean"/>
54661         </return-value>
54662       </method>
54663       <method name="set_visible" c:identifier="gtk_text_mark_set_visible">
54664         <doc xml:whitespace="preserve">Sets the visibility of @mark; the insertion point is normally
54665 visible, i.e. you can see it as a vertical bar. Also, the text
54666 widget uses a visible mark to indicate where a drop will occur when
54667 dragging-and-dropping text. Most other marks are not visible.
54668 Marks are not visible by default.</doc>
54669         <return-value transfer-ownership="none">
54670           <type name="none" c:type="void"/>
54671         </return-value>
54672         <parameters>
54673           <parameter name="setting" transfer-ownership="none">
54674             <doc xml:whitespace="preserve">visibility of mark</doc>
54675             <type name="gboolean" c:type="gboolean"/>
54676           </parameter>
54677         </parameters>
54678       </method>
54679       <property name="left-gravity"
54680                 writable="1"
54681                 construct-only="1"
54682                 transfer-ownership="none">
54683         <type name="gboolean"/>
54684       </property>
54685       <property name="name"
54686                 writable="1"
54687                 construct-only="1"
54688                 transfer-ownership="none">
54689         <type name="utf8"/>
54690       </property>
54691       <field name="parent_instance">
54692         <type name="GObject.Object" c:type="GObject"/>
54693       </field>
54694       <field name="segment">
54695         <type name="gpointer" c:type="gpointer"/>
54696       </field>
54697     </class>
54698     <record name="TextMarkClass"
54699             c:type="GtkTextMarkClass"
54700             glib:is-gtype-struct-for="TextMark">
54701       <field name="parent_class">
54702         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
54703       </field>
54704       <field name="_gtk_reserved1" introspectable="0">
54705         <callback name="_gtk_reserved1">
54706           <return-value transfer-ownership="none">
54707             <type name="none" c:type="void"/>
54708           </return-value>
54709         </callback>
54710       </field>
54711       <field name="_gtk_reserved2" introspectable="0">
54712         <callback name="_gtk_reserved2">
54713           <return-value transfer-ownership="none">
54714             <type name="none" c:type="void"/>
54715           </return-value>
54716         </callback>
54717       </field>
54718       <field name="_gtk_reserved3" introspectable="0">
54719         <callback name="_gtk_reserved3">
54720           <return-value transfer-ownership="none">
54721             <type name="none" c:type="void"/>
54722           </return-value>
54723         </callback>
54724       </field>
54725       <field name="_gtk_reserved4" introspectable="0">
54726         <callback name="_gtk_reserved4">
54727           <return-value transfer-ownership="none">
54728             <type name="none" c:type="void"/>
54729           </return-value>
54730         </callback>
54731       </field>
54732     </record>
54733     <bitfield name="TextSearchFlags"
54734               glib:type-name="GtkTextSearchFlags"
54735               glib:get-type="gtk_text_search_flags_get_type"
54736               c:type="GtkTextSearchFlags">
54737       <member name="visible_only"
54738               value="1"
54739               c:identifier="GTK_TEXT_SEARCH_VISIBLE_ONLY"
54740               glib:nick="visible-only"/>
54741       <member name="text_only"
54742               value="2"
54743               c:identifier="GTK_TEXT_SEARCH_TEXT_ONLY"
54744               glib:nick="text-only"/>
54745     </bitfield>
54746     <class name="TextTag"
54747            c:symbol-prefix="text_tag"
54748            c:type="GtkTextTag"
54749            parent="GObject.Object"
54750            glib:type-name="GtkTextTag"
54751            glib:get-type="gtk_text_tag_get_type"
54752            glib:type-struct="TextTagClass">
54753       <constructor name="new" c:identifier="gtk_text_tag_new">
54754         <doc xml:whitespace="preserve">Creates a #GtkTextTag. Configure the tag using object arguments,
54755 i.e. using g_object_set().</doc>
54756         <return-value transfer-ownership="full">
54757           <doc xml:whitespace="preserve">a new #GtkTextTag</doc>
54758           <type name="TextTag" c:type="GtkTextTag*"/>
54759         </return-value>
54760         <parameters>
54761           <parameter name="name" transfer-ownership="none" allow-none="1">
54762             <doc xml:whitespace="preserve">tag name, or %NULL</doc>
54763             <type name="utf8" c:type="gchar*"/>
54764           </parameter>
54765         </parameters>
54766       </constructor>
54767       <method name="event" c:identifier="gtk_text_tag_event">
54768         <doc xml:whitespace="preserve">Emits the "event" signal on the #GtkTextTag.</doc>
54769         <return-value transfer-ownership="none">
54770           <doc xml:whitespace="preserve">result of signal emission (whether the event was handled)</doc>
54771           <type name="gboolean" c:type="gboolean"/>
54772         </return-value>
54773         <parameters>
54774           <parameter name="event_object" transfer-ownership="none">
54775             <doc xml:whitespace="preserve">object that received the event, such as a widget</doc>
54776             <type name="GObject.Object" c:type="GObject*"/>
54777           </parameter>
54778           <parameter name="event" transfer-ownership="none">
54779             <doc xml:whitespace="preserve">the event</doc>
54780             <type name="Gdk.Event" c:type="GdkEvent*"/>
54781           </parameter>
54782           <parameter name="iter" transfer-ownership="none">
54783             <doc xml:whitespace="preserve">location where the event was received</doc>
54784             <type name="TextIter" c:type="GtkTextIter*"/>
54785           </parameter>
54786         </parameters>
54787       </method>
54788       <method name="get_priority" c:identifier="gtk_text_tag_get_priority">
54789         <doc xml:whitespace="preserve">Get the tag priority.</doc>
54790         <return-value transfer-ownership="none">
54791           <doc xml:whitespace="preserve">The tag's priority.</doc>
54792           <type name="gint" c:type="gint"/>
54793         </return-value>
54794       </method>
54795       <method name="set_priority" c:identifier="gtk_text_tag_set_priority">
54796         <doc xml:whitespace="preserve">Sets the priority of a #GtkTextTag. Valid priorities are
54797 start at 0 and go to one less than gtk_text_tag_table_get_size().
54798 Each tag in a table has a unique priority; setting the priority
54799 of one tag shifts the priorities of all the other tags in the
54800 table to maintain a unique priority for each tag. Higher priority
54801 tags "win" if two tags both set the same text attribute. When adding
54802 a tag to a tag table, it will be assigned the highest priority in
54803 the table by default; so normally the precedence of a set of tags
54804 is the order in which they were added to the table, or created with
54805 gtk_text_buffer_create_tag(), which adds the tag to the buffer's table
54806 automatically.</doc>
54807         <return-value transfer-ownership="none">
54808           <type name="none" c:type="void"/>
54809         </return-value>
54810         <parameters>
54811           <parameter name="priority" transfer-ownership="none">
54812             <doc xml:whitespace="preserve">the new priority</doc>
54813             <type name="gint" c:type="gint"/>
54814           </parameter>
54815         </parameters>
54816       </method>
54817       <property name="accumulative-margin"
54818                 version="2.12"
54819                 writable="1"
54820                 transfer-ownership="none">
54821         <doc xml:whitespace="preserve">Whether the margins accumulate or override each other.
54822 When set to %TRUE the margins of this tag are added to the margins 
54823 of any other non-accumulative margins present. When set to %FALSE 
54824 the margins override one another (the default).</doc>
54825         <type name="gboolean"/>
54826       </property>
54827       <property name="background"
54828                 readable="0"
54829                 writable="1"
54830                 transfer-ownership="none">
54831         <type name="utf8"/>
54832       </property>
54833       <property name="background-full-height"
54834                 writable="1"
54835                 transfer-ownership="none">
54836         <type name="gboolean"/>
54837       </property>
54838       <property name="background-full-height-set"
54839                 writable="1"
54840                 transfer-ownership="none">
54841         <type name="gboolean"/>
54842       </property>
54843       <property name="background-gdk" writable="1" transfer-ownership="none">
54844         <type name="Gdk.Color"/>
54845       </property>
54846       <property name="background-set" writable="1" transfer-ownership="none">
54847         <type name="gboolean"/>
54848       </property>
54849       <property name="direction" writable="1" transfer-ownership="none">
54850         <type name="TextDirection"/>
54851       </property>
54852       <property name="editable" writable="1" transfer-ownership="none">
54853         <type name="gboolean"/>
54854       </property>
54855       <property name="editable-set" writable="1" transfer-ownership="none">
54856         <type name="gboolean"/>
54857       </property>
54858       <property name="family" writable="1" transfer-ownership="none">
54859         <type name="utf8"/>
54860       </property>
54861       <property name="family-set" writable="1" transfer-ownership="none">
54862         <type name="gboolean"/>
54863       </property>
54864       <property name="font" writable="1" transfer-ownership="none">
54865         <doc xml:whitespace="preserve">Font description as string, e.g. \"Sans Italic 12\". 
54866 Note that the initial value of this property depends on
54867 the internals of #PangoFontDescription.</doc>
54868         <type name="utf8"/>
54869       </property>
54870       <property name="font-desc" writable="1" transfer-ownership="none">
54871         <type name="Pango.FontDescription"/>
54872       </property>
54873       <property name="foreground"
54874                 readable="0"
54875                 writable="1"
54876                 transfer-ownership="none">
54877         <type name="utf8"/>
54878       </property>
54879       <property name="foreground-gdk" writable="1" transfer-ownership="none">
54880         <type name="Gdk.Color"/>
54881       </property>
54882       <property name="foreground-set" writable="1" transfer-ownership="none">
54883         <type name="gboolean"/>
54884       </property>
54885       <property name="indent" writable="1" transfer-ownership="none">
54886         <type name="gint"/>
54887       </property>
54888       <property name="indent-set" writable="1" transfer-ownership="none">
54889         <type name="gboolean"/>
54890       </property>
54891       <property name="invisible"
54892                 version="2.8"
54893                 writable="1"
54894                 transfer-ownership="none">
54895         <doc xml:whitespace="preserve">Whether this text is hidden.
54896 Note that there may still be problems with the support for invisible 
54897 text, in particular when navigating programmatically inside a buffer
54898 containing invisible segments.</doc>
54899         <type name="gboolean"/>
54900       </property>
54901       <property name="invisible-set" writable="1" transfer-ownership="none">
54902         <type name="gboolean"/>
54903       </property>
54904       <property name="justification" writable="1" transfer-ownership="none">
54905         <type name="Justification"/>
54906       </property>
54907       <property name="justification-set"
54908                 writable="1"
54909                 transfer-ownership="none">
54910         <type name="gboolean"/>
54911       </property>
54912       <property name="language" writable="1" transfer-ownership="none">
54913         <doc xml:whitespace="preserve">The language this text is in, as an ISO code. Pango can use this as a 
54914 hint when rendering the text. If not set, an appropriate default will be 
54915 used.
54916 Note that the initial value of this property depends on the current
54917 locale, see also gtk_get_default_language().</doc>
54918         <type name="utf8"/>
54919       </property>
54920       <property name="language-set" writable="1" transfer-ownership="none">
54921         <type name="gboolean"/>
54922       </property>
54923       <property name="left-margin" writable="1" transfer-ownership="none">
54924         <type name="gint"/>
54925       </property>
54926       <property name="left-margin-set" writable="1" transfer-ownership="none">
54927         <type name="gboolean"/>
54928       </property>
54929       <property name="name"
54930                 writable="1"
54931                 construct-only="1"
54932                 transfer-ownership="none">
54933         <type name="utf8"/>
54934       </property>
54935       <property name="paragraph-background"
54936                 version="2.8"
54937                 readable="0"
54938                 writable="1"
54939                 transfer-ownership="none">
54940         <doc xml:whitespace="preserve">The paragraph background color as a string.</doc>
54941         <type name="utf8"/>
54942       </property>
54943       <property name="paragraph-background-gdk"
54944                 version="2.8"
54945                 writable="1"
54946                 transfer-ownership="none">
54947         <doc xml:whitespace="preserve">The paragraph background color as a as a (possibly unallocated) 
54948 #GdkColor.</doc>
54949         <type name="Gdk.Color"/>
54950       </property>
54951       <property name="paragraph-background-set"
54952                 writable="1"
54953                 transfer-ownership="none">
54954         <type name="gboolean"/>
54955       </property>
54956       <property name="pixels-above-lines"
54957                 writable="1"
54958                 transfer-ownership="none">
54959         <type name="gint"/>
54960       </property>
54961       <property name="pixels-above-lines-set"
54962                 writable="1"
54963                 transfer-ownership="none">
54964         <type name="gboolean"/>
54965       </property>
54966       <property name="pixels-below-lines"
54967                 writable="1"
54968                 transfer-ownership="none">
54969         <type name="gint"/>
54970       </property>
54971       <property name="pixels-below-lines-set"
54972                 writable="1"
54973                 transfer-ownership="none">
54974         <type name="gboolean"/>
54975       </property>
54976       <property name="pixels-inside-wrap"
54977                 writable="1"
54978                 transfer-ownership="none">
54979         <type name="gint"/>
54980       </property>
54981       <property name="pixels-inside-wrap-set"
54982                 writable="1"
54983                 transfer-ownership="none">
54984         <type name="gboolean"/>
54985       </property>
54986       <property name="right-margin" writable="1" transfer-ownership="none">
54987         <type name="gint"/>
54988       </property>
54989       <property name="right-margin-set" writable="1" transfer-ownership="none">
54990         <type name="gboolean"/>
54991       </property>
54992       <property name="rise" writable="1" transfer-ownership="none">
54993         <type name="gint"/>
54994       </property>
54995       <property name="rise-set" writable="1" transfer-ownership="none">
54996         <type name="gboolean"/>
54997       </property>
54998       <property name="scale" writable="1" transfer-ownership="none">
54999         <type name="gdouble"/>
55000       </property>
55001       <property name="scale-set" writable="1" transfer-ownership="none">
55002         <type name="gboolean"/>
55003       </property>
55004       <property name="size" writable="1" transfer-ownership="none">
55005         <type name="gint"/>
55006       </property>
55007       <property name="size-points" writable="1" transfer-ownership="none">
55008         <type name="gdouble"/>
55009       </property>
55010       <property name="size-set" writable="1" transfer-ownership="none">
55011         <type name="gboolean"/>
55012       </property>
55013       <property name="stretch" writable="1" transfer-ownership="none">
55014         <type name="Pango.Stretch"/>
55015       </property>
55016       <property name="stretch-set" writable="1" transfer-ownership="none">
55017         <type name="gboolean"/>
55018       </property>
55019       <property name="strikethrough" writable="1" transfer-ownership="none">
55020         <type name="gboolean"/>
55021       </property>
55022       <property name="strikethrough-set"
55023                 writable="1"
55024                 transfer-ownership="none">
55025         <type name="gboolean"/>
55026       </property>
55027       <property name="style" writable="1" transfer-ownership="none">
55028         <type name="Pango.Style"/>
55029       </property>
55030       <property name="style-set" writable="1" transfer-ownership="none">
55031         <type name="gboolean"/>
55032       </property>
55033       <property name="tabs" writable="1" transfer-ownership="none">
55034         <type name="Pango.TabArray"/>
55035       </property>
55036       <property name="tabs-set" writable="1" transfer-ownership="none">
55037         <type name="gboolean"/>
55038       </property>
55039       <property name="underline" writable="1" transfer-ownership="none">
55040         <type name="Pango.Underline"/>
55041       </property>
55042       <property name="underline-set" writable="1" transfer-ownership="none">
55043         <type name="gboolean"/>
55044       </property>
55045       <property name="variant" writable="1" transfer-ownership="none">
55046         <type name="Pango.Variant"/>
55047       </property>
55048       <property name="variant-set" writable="1" transfer-ownership="none">
55049         <type name="gboolean"/>
55050       </property>
55051       <property name="weight" writable="1" transfer-ownership="none">
55052         <type name="gint"/>
55053       </property>
55054       <property name="weight-set" writable="1" transfer-ownership="none">
55055         <type name="gboolean"/>
55056       </property>
55057       <property name="wrap-mode" writable="1" transfer-ownership="none">
55058         <type name="WrapMode"/>
55059       </property>
55060       <property name="wrap-mode-set" writable="1" transfer-ownership="none">
55061         <type name="gboolean"/>
55062       </property>
55063       <field name="parent_instance">
55064         <type name="GObject.Object" c:type="GObject"/>
55065       </field>
55066       <field name="table">
55067         <type name="TextTagTable" c:type="GtkTextTagTable*"/>
55068       </field>
55069       <field name="name">
55070         <type name="utf8" c:type="char*"/>
55071       </field>
55072       <field name="priority">
55073         <type name="gint" c:type="int"/>
55074       </field>
55075       <field name="values">
55076         <type name="TextAttributes" c:type="GtkTextAttributes*"/>
55077       </field>
55078       <field name="bg_color_set" bits="1">
55079         <type name="guint" c:type="guint"/>
55080       </field>
55081       <field name="fg_color_set" bits="1">
55082         <type name="guint" c:type="guint"/>
55083       </field>
55084       <field name="scale_set" bits="1">
55085         <type name="guint" c:type="guint"/>
55086       </field>
55087       <field name="justification_set" bits="1">
55088         <type name="guint" c:type="guint"/>
55089       </field>
55090       <field name="left_margin_set" bits="1">
55091         <type name="guint" c:type="guint"/>
55092       </field>
55093       <field name="indent_set" bits="1">
55094         <type name="guint" c:type="guint"/>
55095       </field>
55096       <field name="rise_set" bits="1">
55097         <type name="guint" c:type="guint"/>
55098       </field>
55099       <field name="strikethrough_set" bits="1">
55100         <type name="guint" c:type="guint"/>
55101       </field>
55102       <field name="right_margin_set" bits="1">
55103         <type name="guint" c:type="guint"/>
55104       </field>
55105       <field name="pixels_above_lines_set" bits="1">
55106         <type name="guint" c:type="guint"/>
55107       </field>
55108       <field name="pixels_below_lines_set" bits="1">
55109         <type name="guint" c:type="guint"/>
55110       </field>
55111       <field name="pixels_inside_wrap_set" bits="1">
55112         <type name="guint" c:type="guint"/>
55113       </field>
55114       <field name="tabs_set" bits="1">
55115         <type name="guint" c:type="guint"/>
55116       </field>
55117       <field name="underline_set" bits="1">
55118         <type name="guint" c:type="guint"/>
55119       </field>
55120       <field name="wrap_mode_set" bits="1">
55121         <type name="guint" c:type="guint"/>
55122       </field>
55123       <field name="bg_full_height_set" bits="1">
55124         <type name="guint" c:type="guint"/>
55125       </field>
55126       <field name="invisible_set" bits="1">
55127         <type name="guint" c:type="guint"/>
55128       </field>
55129       <field name="editable_set" bits="1">
55130         <type name="guint" c:type="guint"/>
55131       </field>
55132       <field name="language_set" bits="1">
55133         <type name="guint" c:type="guint"/>
55134       </field>
55135       <field name="pg_bg_color_set" bits="1">
55136         <type name="guint" c:type="guint"/>
55137       </field>
55138       <field name="accumulative_margin" bits="1">
55139         <type name="guint" c:type="guint"/>
55140       </field>
55141       <field name="pad1" bits="1">
55142         <type name="guint" c:type="guint"/>
55143       </field>
55144       <glib:signal name="event">
55145         <doc xml:whitespace="preserve">The ::event signal is emitted when an event occurs on a region of the
55146 buffer marked with this tag.
55147 event. %FALSE to propagate the event further.</doc>
55148         <return-value transfer-ownership="none">
55149           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the</doc>
55150           <type name="gboolean"/>
55151         </return-value>
55152         <parameters>
55153           <parameter name="object" transfer-ownership="none">
55154             <doc xml:whitespace="preserve">the object the event was fired from (typically a #GtkTextView)</doc>
55155             <type name="GObject.Object"/>
55156           </parameter>
55157           <parameter name="p0" transfer-ownership="none">
55158             <doc xml:whitespace="preserve">the event which triggered the signal</doc>
55159             <type name="Gdk.Event"/>
55160           </parameter>
55161           <parameter name="p1" transfer-ownership="none">
55162             <doc xml:whitespace="preserve">a #GtkTextIter pointing at the location the event occured</doc>
55163             <type name="TextIter"/>
55164           </parameter>
55165         </parameters>
55166       </glib:signal>
55167     </class>
55168     <record name="TextTagClass"
55169             c:type="GtkTextTagClass"
55170             glib:is-gtype-struct-for="TextTag">
55171       <field name="parent_class">
55172         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
55173       </field>
55174       <field name="event">
55175         <callback name="event">
55176           <return-value transfer-ownership="none">
55177             <type name="gboolean" c:type="gboolean"/>
55178           </return-value>
55179           <parameters>
55180             <parameter name="tag" transfer-ownership="none">
55181               <type name="TextTag" c:type="GtkTextTag*"/>
55182             </parameter>
55183             <parameter name="event_object" transfer-ownership="none">
55184               <type name="GObject.Object" c:type="GObject*"/>
55185             </parameter>
55186             <parameter name="event" transfer-ownership="none">
55187               <type name="Gdk.Event" c:type="GdkEvent*"/>
55188             </parameter>
55189             <parameter name="iter" transfer-ownership="none">
55190               <type name="TextIter" c:type="GtkTextIter*"/>
55191             </parameter>
55192           </parameters>
55193         </callback>
55194       </field>
55195       <field name="_gtk_reserved1" introspectable="0">
55196         <callback name="_gtk_reserved1">
55197           <return-value transfer-ownership="none">
55198             <type name="none" c:type="void"/>
55199           </return-value>
55200         </callback>
55201       </field>
55202       <field name="_gtk_reserved2" introspectable="0">
55203         <callback name="_gtk_reserved2">
55204           <return-value transfer-ownership="none">
55205             <type name="none" c:type="void"/>
55206           </return-value>
55207         </callback>
55208       </field>
55209       <field name="_gtk_reserved3" introspectable="0">
55210         <callback name="_gtk_reserved3">
55211           <return-value transfer-ownership="none">
55212             <type name="none" c:type="void"/>
55213           </return-value>
55214         </callback>
55215       </field>
55216       <field name="_gtk_reserved4" introspectable="0">
55217         <callback name="_gtk_reserved4">
55218           <return-value transfer-ownership="none">
55219             <type name="none" c:type="void"/>
55220           </return-value>
55221         </callback>
55222       </field>
55223     </record>
55224     <class name="TextTagTable"
55225            c:symbol-prefix="text_tag_table"
55226            c:type="GtkTextTagTable"
55227            parent="GObject.Object"
55228            glib:type-name="GtkTextTagTable"
55229            glib:get-type="gtk_text_tag_table_get_type"
55230            glib:type-struct="TextTagTableClass">
55231       <constructor name="new" c:identifier="gtk_text_tag_table_new">
55232         <doc xml:whitespace="preserve">Creates a new #GtkTextTagTable. The table contains no tags by
55233 default.</doc>
55234         <return-value transfer-ownership="full">
55235           <doc xml:whitespace="preserve">a new #GtkTextTagTable</doc>
55236           <type name="TextTagTable" c:type="GtkTextTagTable*"/>
55237         </return-value>
55238       </constructor>
55239       <method name="add" c:identifier="gtk_text_tag_table_add">
55240         <doc xml:whitespace="preserve">Add a tag to the table. The tag is assigned the highest priority
55241 in the table.
55242 the same name as an already-added tag.</doc>
55243         <return-value transfer-ownership="none">
55244           <type name="none" c:type="void"/>
55245         </return-value>
55246         <parameters>
55247           <parameter name="tag" transfer-ownership="none">
55248             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
55249             <type name="TextTag" c:type="GtkTextTag*"/>
55250           </parameter>
55251         </parameters>
55252       </method>
55253       <method name="foreach" c:identifier="gtk_text_tag_table_foreach">
55254         <doc xml:whitespace="preserve">Calls @func on each tag in @table, with user data @data.
55255 Note that the table may not be modified while iterating 
55256 over it (you can't add/remove tags).</doc>
55257         <return-value transfer-ownership="none">
55258           <type name="none" c:type="void"/>
55259         </return-value>
55260         <parameters>
55261           <parameter name="func"
55262                      transfer-ownership="none"
55263                      scope="call"
55264                      closure="1">
55265             <doc xml:whitespace="preserve">a function to call on each tag</doc>
55266             <type name="TextTagTableForeach" c:type="GtkTextTagTableForeach"/>
55267           </parameter>
55268           <parameter name="data" transfer-ownership="none">
55269             <doc xml:whitespace="preserve">user data</doc>
55270             <type name="gpointer" c:type="gpointer"/>
55271           </parameter>
55272         </parameters>
55273       </method>
55274       <method name="get_size" c:identifier="gtk_text_tag_table_get_size">
55275         <doc xml:whitespace="preserve">Returns the size of the table (number of tags)</doc>
55276         <return-value transfer-ownership="none">
55277           <doc xml:whitespace="preserve">number of tags in @table</doc>
55278           <type name="gint" c:type="gint"/>
55279         </return-value>
55280       </method>
55281       <method name="lookup" c:identifier="gtk_text_tag_table_lookup">
55282         <doc xml:whitespace="preserve">Look up a named tag.</doc>
55283         <return-value transfer-ownership="none">
55284           <doc xml:whitespace="preserve">The tag, or %NULL if none by that name is in the table.</doc>
55285           <type name="TextTag" c:type="GtkTextTag*"/>
55286         </return-value>
55287         <parameters>
55288           <parameter name="name" transfer-ownership="none">
55289             <doc xml:whitespace="preserve">name of a tag</doc>
55290             <type name="utf8" c:type="gchar*"/>
55291           </parameter>
55292         </parameters>
55293       </method>
55294       <method name="remove" c:identifier="gtk_text_tag_table_remove">
55295         <doc xml:whitespace="preserve">Remove a tag from the table. This will remove the table's
55296 reference to the tag, so be careful - the tag will end
55297 up destroyed if you don't have a reference to it.</doc>
55298         <return-value transfer-ownership="none">
55299           <type name="none" c:type="void"/>
55300         </return-value>
55301         <parameters>
55302           <parameter name="tag" transfer-ownership="none">
55303             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
55304             <type name="TextTag" c:type="GtkTextTag*"/>
55305           </parameter>
55306         </parameters>
55307       </method>
55308       <field name="parent_instance">
55309         <type name="GObject.Object" c:type="GObject"/>
55310       </field>
55311       <field name="priv">
55312         <type name="TextTagTablePrivate" c:type="GtkTextTagTablePrivate*"/>
55313       </field>
55314       <glib:signal name="tag-added">
55315         <return-value transfer-ownership="none">
55316           <type name="none"/>
55317         </return-value>
55318         <parameters>
55319           <parameter name="object" transfer-ownership="none">
55320             <doc xml:whitespace="preserve">the added tag.</doc>
55321             <type name="TextTag"/>
55322           </parameter>
55323         </parameters>
55324       </glib:signal>
55325       <glib:signal name="tag-changed">
55326         <return-value transfer-ownership="none">
55327           <type name="none"/>
55328         </return-value>
55329         <parameters>
55330           <parameter name="object" transfer-ownership="none">
55331             <doc xml:whitespace="preserve">the changed tag.</doc>
55332             <type name="TextTag"/>
55333           </parameter>
55334           <parameter name="p0" transfer-ownership="none">
55335             <doc xml:whitespace="preserve">whether the size has been changed.</doc>
55336             <type name="gboolean"/>
55337           </parameter>
55338         </parameters>
55339       </glib:signal>
55340       <glib:signal name="tag-removed">
55341         <return-value transfer-ownership="none">
55342           <type name="none"/>
55343         </return-value>
55344         <parameters>
55345           <parameter name="object" transfer-ownership="none">
55346             <doc xml:whitespace="preserve">the removed tag.</doc>
55347             <type name="TextTag"/>
55348           </parameter>
55349         </parameters>
55350       </glib:signal>
55351     </class>
55352     <record name="TextTagTableClass"
55353             c:type="GtkTextTagTableClass"
55354             glib:is-gtype-struct-for="TextTagTable">
55355       <field name="parent_class">
55356         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
55357       </field>
55358       <field name="tag_changed">
55359         <callback name="tag_changed">
55360           <return-value transfer-ownership="none">
55361             <type name="none" c:type="void"/>
55362           </return-value>
55363           <parameters>
55364             <parameter name="table" transfer-ownership="none">
55365               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
55366             </parameter>
55367             <parameter name="tag" transfer-ownership="none">
55368               <type name="TextTag" c:type="GtkTextTag*"/>
55369             </parameter>
55370             <parameter name="size_changed" transfer-ownership="none">
55371               <type name="gboolean" c:type="gboolean"/>
55372             </parameter>
55373           </parameters>
55374         </callback>
55375       </field>
55376       <field name="tag_added">
55377         <callback name="tag_added">
55378           <return-value transfer-ownership="none">
55379             <type name="none" c:type="void"/>
55380           </return-value>
55381           <parameters>
55382             <parameter name="table" transfer-ownership="none">
55383               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
55384             </parameter>
55385             <parameter name="tag" transfer-ownership="none">
55386               <type name="TextTag" c:type="GtkTextTag*"/>
55387             </parameter>
55388           </parameters>
55389         </callback>
55390       </field>
55391       <field name="tag_removed">
55392         <callback name="tag_removed">
55393           <return-value transfer-ownership="none">
55394             <type name="none" c:type="void"/>
55395           </return-value>
55396           <parameters>
55397             <parameter name="table" transfer-ownership="none">
55398               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
55399             </parameter>
55400             <parameter name="tag" transfer-ownership="none">
55401               <type name="TextTag" c:type="GtkTextTag*"/>
55402             </parameter>
55403           </parameters>
55404         </callback>
55405       </field>
55406       <field name="_gtk_reserved1" introspectable="0">
55407         <callback name="_gtk_reserved1">
55408           <return-value transfer-ownership="none">
55409             <type name="none" c:type="void"/>
55410           </return-value>
55411         </callback>
55412       </field>
55413       <field name="_gtk_reserved2" introspectable="0">
55414         <callback name="_gtk_reserved2">
55415           <return-value transfer-ownership="none">
55416             <type name="none" c:type="void"/>
55417           </return-value>
55418         </callback>
55419       </field>
55420       <field name="_gtk_reserved3" introspectable="0">
55421         <callback name="_gtk_reserved3">
55422           <return-value transfer-ownership="none">
55423             <type name="none" c:type="void"/>
55424           </return-value>
55425         </callback>
55426       </field>
55427       <field name="_gtk_reserved4" introspectable="0">
55428         <callback name="_gtk_reserved4">
55429           <return-value transfer-ownership="none">
55430             <type name="none" c:type="void"/>
55431           </return-value>
55432         </callback>
55433       </field>
55434     </record>
55435     <callback name="TextTagTableForeach" c:type="GtkTextTagTableForeach">
55436       <return-value transfer-ownership="none">
55437         <type name="none" c:type="void"/>
55438       </return-value>
55439       <parameters>
55440         <parameter name="tag" transfer-ownership="none">
55441           <type name="TextTag" c:type="GtkTextTag*"/>
55442         </parameter>
55443         <parameter name="data" transfer-ownership="none">
55444           <type name="gpointer" c:type="gpointer"/>
55445         </parameter>
55446       </parameters>
55447     </callback>
55448     <record name="TextTagTablePrivate"
55449             c:type="GtkTextTagTablePrivate"
55450             disguised="1">
55451     </record>
55452     <class name="TextView"
55453            c:symbol-prefix="text_view"
55454            c:type="GtkTextView"
55455            parent="Container"
55456            glib:type-name="GtkTextView"
55457            glib:get-type="gtk_text_view_get_type"
55458            glib:type-struct="TextViewClass">
55459       <implements name="Atk.ImplementorIface"/>
55460       <implements name="Buildable"/>
55461       <implements name="SizeRequest"/>
55462       <constructor name="new" c:identifier="gtk_text_view_new">
55463         <doc xml:whitespace="preserve">Creates a new #GtkTextView. If you don't call gtk_text_view_set_buffer()
55464 before using the text view, an empty default buffer will be created
55465 for you. Get the buffer with gtk_text_view_get_buffer(). If you want
55466 to specify your own buffer, consider gtk_text_view_new_with_buffer().</doc>
55467         <return-value transfer-ownership="none">
55468           <doc xml:whitespace="preserve">a new #GtkTextView</doc>
55469           <type name="Widget" c:type="GtkWidget*"/>
55470         </return-value>
55471       </constructor>
55472       <constructor name="new_with_buffer"
55473                    c:identifier="gtk_text_view_new_with_buffer">
55474         <doc xml:whitespace="preserve">Creates a new #GtkTextView widget displaying the buffer
55475 this function is equivalent to gtk_text_view_new(). The
55476 text view adds its own reference count to the buffer; it does not
55477 take over an existing reference.</doc>
55478         <return-value transfer-ownership="none">
55479           <doc xml:whitespace="preserve">a new #GtkTextView.</doc>
55480           <type name="Widget" c:type="GtkWidget*"/>
55481         </return-value>
55482         <parameters>
55483           <parameter name="buffer" transfer-ownership="none">
55484             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
55485             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
55486           </parameter>
55487         </parameters>
55488       </constructor>
55489       <virtual-method name="move_focus">
55490         <return-value transfer-ownership="none">
55491           <type name="none" c:type="void"/>
55492         </return-value>
55493         <parameters>
55494           <parameter name="direction" transfer-ownership="none">
55495             <type name="DirectionType" c:type="GtkDirectionType"/>
55496           </parameter>
55497         </parameters>
55498       </virtual-method>
55499       <method name="add_child_at_anchor"
55500               c:identifier="gtk_text_view_add_child_at_anchor">
55501         <doc xml:whitespace="preserve">Adds a child widget in the text buffer, at the given @anchor.</doc>
55502         <return-value transfer-ownership="none">
55503           <type name="none" c:type="void"/>
55504         </return-value>
55505         <parameters>
55506           <parameter name="child" transfer-ownership="none">
55507             <doc xml:whitespace="preserve">a #GtkWidget</doc>
55508             <type name="Widget" c:type="GtkWidget*"/>
55509           </parameter>
55510           <parameter name="anchor" transfer-ownership="none">
55511             <doc xml:whitespace="preserve">a #GtkTextChildAnchor in the #GtkTextBuffer for @text_view</doc>
55512             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
55513           </parameter>
55514         </parameters>
55515       </method>
55516       <method name="add_child_in_window"
55517               c:identifier="gtk_text_view_add_child_in_window">
55518         <doc xml:whitespace="preserve">Adds a child at fixed coordinates in one of the text widget's
55519 windows. The window must have nonzero size (see
55520 gtk_text_view_set_border_window_size()). Note that the child
55521 coordinates are given relative to the #GdkWindow in question, and
55522 that these coordinates have no sane relationship to scrolling. When
55523 placing a child in #GTK_TEXT_WINDOW_WIDGET, scrolling is
55524 irrelevant, the child floats above all scrollable areas. But when
55525 placing a child in one of the scrollable windows (border windows or
55526 text window), you'll need to compute the child's correct position
55527 in buffer coordinates any time scrolling occurs or buffer changes
55528 occur, and then call gtk_text_view_move_child() to update the
55529 child's position. Unfortunately there's no good way to detect that
55530 scrolling has occurred, using the current API; a possible hack
55531 would be to update all child positions when the scroll adjustments
55532 change or the text buffer changes. See bug 64518 on
55533 bugzilla.gnome.org for status of fixing this issue.</doc>
55534         <return-value transfer-ownership="none">
55535           <type name="none" c:type="void"/>
55536         </return-value>
55537         <parameters>
55538           <parameter name="child" transfer-ownership="none">
55539             <doc xml:whitespace="preserve">a #GtkWidget</doc>
55540             <type name="Widget" c:type="GtkWidget*"/>
55541           </parameter>
55542           <parameter name="which_window" transfer-ownership="none">
55543             <doc xml:whitespace="preserve">which window the child should appear in</doc>
55544             <type name="TextWindowType" c:type="GtkTextWindowType"/>
55545           </parameter>
55546           <parameter name="xpos" transfer-ownership="none">
55547             <doc xml:whitespace="preserve">X position of child in window coordinates</doc>
55548             <type name="gint" c:type="gint"/>
55549           </parameter>
55550           <parameter name="ypos" transfer-ownership="none">
55551             <doc xml:whitespace="preserve">Y position of child in window coordinates</doc>
55552             <type name="gint" c:type="gint"/>
55553           </parameter>
55554         </parameters>
55555       </method>
55556       <method name="backward_display_line"
55557               c:identifier="gtk_text_view_backward_display_line">
55558         <doc xml:whitespace="preserve">Moves the given @iter backward by one display (wrapped) line.
55559 A display line is different from a paragraph. Paragraphs are
55560 separated by newlines or other paragraph separator characters.
55561 Display lines are created by line-wrapping a paragraph. If
55562 wrapping is turned off, display lines and paragraphs will be the
55563 same. Display lines are divided differently for each view, since
55564 they depend on the view's width; paragraphs are the same in all
55565 views, since they depend on the contents of the #GtkTextBuffer.</doc>
55566         <return-value transfer-ownership="none">
55567           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
55568           <type name="gboolean" c:type="gboolean"/>
55569         </return-value>
55570         <parameters>
55571           <parameter name="iter" transfer-ownership="none">
55572             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55573             <type name="TextIter" c:type="GtkTextIter*"/>
55574           </parameter>
55575         </parameters>
55576       </method>
55577       <method name="backward_display_line_start"
55578               c:identifier="gtk_text_view_backward_display_line_start">
55579         <doc xml:whitespace="preserve">Moves the given @iter backward to the next display line start.
55580 A display line is different from a paragraph. Paragraphs are
55581 separated by newlines or other paragraph separator characters.
55582 Display lines are created by line-wrapping a paragraph. If
55583 wrapping is turned off, display lines and paragraphs will be the
55584 same. Display lines are divided differently for each view, since
55585 they depend on the view's width; paragraphs are the same in all
55586 views, since they depend on the contents of the #GtkTextBuffer.</doc>
55587         <return-value transfer-ownership="none">
55588           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
55589           <type name="gboolean" c:type="gboolean"/>
55590         </return-value>
55591         <parameters>
55592           <parameter name="iter" transfer-ownership="none">
55593             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55594             <type name="TextIter" c:type="GtkTextIter*"/>
55595           </parameter>
55596         </parameters>
55597       </method>
55598       <method name="buffer_to_window_coords"
55599               c:identifier="gtk_text_view_buffer_to_window_coords">
55600         <doc xml:whitespace="preserve">Converts coordinate (@buffer_x, @buffer_y) to coordinates for the window
55601 Note that you can't convert coordinates for a nonexisting window (see 
55602 gtk_text_view_set_border_window_size()).</doc>
55603         <return-value transfer-ownership="none">
55604           <type name="none" c:type="void"/>
55605         </return-value>
55606         <parameters>
55607           <parameter name="win" transfer-ownership="none">
55608             <doc xml:whitespace="preserve">a #GtkTextWindowType except #GTK_TEXT_WINDOW_PRIVATE</doc>
55609             <type name="TextWindowType" c:type="GtkTextWindowType"/>
55610           </parameter>
55611           <parameter name="buffer_x" transfer-ownership="none">
55612             <doc xml:whitespace="preserve">buffer x coordinate</doc>
55613             <type name="gint" c:type="gint"/>
55614           </parameter>
55615           <parameter name="buffer_y" transfer-ownership="none">
55616             <doc xml:whitespace="preserve">buffer y coordinate</doc>
55617             <type name="gint" c:type="gint"/>
55618           </parameter>
55619           <parameter name="window_x"
55620                      direction="out"
55621                      caller-allocates="0"
55622                      transfer-ownership="full"
55623                      allow-none="1">
55624             <doc xml:whitespace="preserve">window x coordinate return location or %NULL</doc>
55625             <type name="gint" c:type="gint*"/>
55626           </parameter>
55627           <parameter name="window_y"
55628                      direction="out"
55629                      caller-allocates="0"
55630                      transfer-ownership="full"
55631                      allow-none="1">
55632             <doc xml:whitespace="preserve">window y coordinate return location or %NULL</doc>
55633             <type name="gint" c:type="gint*"/>
55634           </parameter>
55635         </parameters>
55636       </method>
55637       <method name="forward_display_line"
55638               c:identifier="gtk_text_view_forward_display_line">
55639         <doc xml:whitespace="preserve">Moves the given @iter forward by one display (wrapped) line.
55640 A display line is different from a paragraph. Paragraphs are
55641 separated by newlines or other paragraph separator characters.
55642 Display lines are created by line-wrapping a paragraph. If
55643 wrapping is turned off, display lines and paragraphs will be the
55644 same. Display lines are divided differently for each view, since
55645 they depend on the view's width; paragraphs are the same in all
55646 views, since they depend on the contents of the #GtkTextBuffer.</doc>
55647         <return-value transfer-ownership="none">
55648           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
55649           <type name="gboolean" c:type="gboolean"/>
55650         </return-value>
55651         <parameters>
55652           <parameter name="iter" transfer-ownership="none">
55653             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55654             <type name="TextIter" c:type="GtkTextIter*"/>
55655           </parameter>
55656         </parameters>
55657       </method>
55658       <method name="forward_display_line_end"
55659               c:identifier="gtk_text_view_forward_display_line_end">
55660         <doc xml:whitespace="preserve">Moves the given @iter forward to the next display line end.
55661 A display line is different from a paragraph. Paragraphs are
55662 separated by newlines or other paragraph separator characters.
55663 Display lines are created by line-wrapping a paragraph. If
55664 wrapping is turned off, display lines and paragraphs will be the
55665 same. Display lines are divided differently for each view, since
55666 they depend on the view's width; paragraphs are the same in all
55667 views, since they depend on the contents of the #GtkTextBuffer.</doc>
55668         <return-value transfer-ownership="none">
55669           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
55670           <type name="gboolean" c:type="gboolean"/>
55671         </return-value>
55672         <parameters>
55673           <parameter name="iter" transfer-ownership="none">
55674             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55675             <type name="TextIter" c:type="GtkTextIter*"/>
55676           </parameter>
55677         </parameters>
55678       </method>
55679       <method name="get_accepts_tab"
55680               c:identifier="gtk_text_view_get_accepts_tab"
55681               version="2.4">
55682         <doc xml:whitespace="preserve">Returns whether pressing the Tab key inserts a tab characters.
55683 gtk_text_view_set_accepts_tab().
55684 %FALSE if pressing the Tab key moves the keyboard focus.</doc>
55685         <return-value transfer-ownership="none">
55686           <doc xml:whitespace="preserve">%TRUE if pressing the Tab key inserts a tab character,</doc>
55687           <type name="gboolean" c:type="gboolean"/>
55688         </return-value>
55689       </method>
55690       <method name="get_border_window_size"
55691               c:identifier="gtk_text_view_get_border_window_size">
55692         <doc xml:whitespace="preserve">Gets the width of the specified border window. See
55693 gtk_text_view_set_border_window_size().</doc>
55694         <return-value transfer-ownership="none">
55695           <doc xml:whitespace="preserve">width of window</doc>
55696           <type name="gint" c:type="gint"/>
55697         </return-value>
55698         <parameters>
55699           <parameter name="type" transfer-ownership="none">
55700             <doc xml:whitespace="preserve">window to return size from</doc>
55701             <type name="TextWindowType" c:type="GtkTextWindowType"/>
55702           </parameter>
55703         </parameters>
55704       </method>
55705       <method name="get_buffer" c:identifier="gtk_text_view_get_buffer">
55706         <doc xml:whitespace="preserve">Returns the #GtkTextBuffer being displayed by this text view.
55707 The reference count on the buffer is not incremented; the caller
55708 of this function won't own a new reference.</doc>
55709         <return-value transfer-ownership="none">
55710           <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
55711           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
55712         </return-value>
55713       </method>
55714       <method name="get_cursor_visible"
55715               c:identifier="gtk_text_view_get_cursor_visible">
55716         <doc xml:whitespace="preserve">Find out whether the cursor is being displayed.</doc>
55717         <return-value transfer-ownership="none">
55718           <doc xml:whitespace="preserve">whether the insertion mark is visible</doc>
55719           <type name="gboolean" c:type="gboolean"/>
55720         </return-value>
55721       </method>
55722       <method name="get_default_attributes"
55723               c:identifier="gtk_text_view_get_default_attributes">
55724         <doc xml:whitespace="preserve">Obtains a copy of the default text attributes. These are the
55725 attributes used for text unless a tag overrides them.
55726 You'd typically pass the default attributes in to
55727 gtk_text_iter_get_attributes() in order to get the
55728 attributes in effect at a given text position.
55729 The return value is a copy owned by the caller of this function,
55730 and should be freed.</doc>
55731         <return-value transfer-ownership="full">
55732           <doc xml:whitespace="preserve">a new #GtkTextAttributes</doc>
55733           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
55734         </return-value>
55735       </method>
55736       <method name="get_editable" c:identifier="gtk_text_view_get_editable">
55737         <doc xml:whitespace="preserve">Returns the default editability of the #GtkTextView. Tags in the
55738 buffer may override this setting for some ranges of text.</doc>
55739         <return-value transfer-ownership="none">
55740           <doc xml:whitespace="preserve">whether text is editable by default</doc>
55741           <type name="gboolean" c:type="gboolean"/>
55742         </return-value>
55743       </method>
55744       <method name="get_hadjustment"
55745               c:identifier="gtk_text_view_get_hadjustment"
55746               version="2.22">
55747         <doc xml:whitespace="preserve">Gets the horizontal-scrolling #GtkAdjustment.</doc>
55748         <return-value transfer-ownership="none">
55749           <doc xml:whitespace="preserve">pointer to the horizontal #GtkAdjustment</doc>
55750           <type name="Adjustment" c:type="GtkAdjustment*"/>
55751         </return-value>
55752       </method>
55753       <method name="get_indent" c:identifier="gtk_text_view_get_indent">
55754         <doc xml:whitespace="preserve">Gets the default indentation of paragraphs in @text_view.
55755 Tags in the view's buffer may override the default.
55756 The indentation may be negative.</doc>
55757         <return-value transfer-ownership="none">
55758           <doc xml:whitespace="preserve">number of pixels of indentation</doc>
55759           <type name="gint" c:type="gint"/>
55760         </return-value>
55761       </method>
55762       <method name="get_iter_at_location"
55763               c:identifier="gtk_text_view_get_iter_at_location">
55764         <doc xml:whitespace="preserve">Retrieves the iterator at buffer coordinates @x and @y. Buffer
55765 coordinates are coordinates for the entire buffer, not just the
55766 currently-displayed portion.  If you have coordinates from an
55767 event, you have to convert those to buffer coordinates with
55768 gtk_text_view_window_to_buffer_coords().</doc>
55769         <return-value transfer-ownership="none">
55770           <type name="none" c:type="void"/>
55771         </return-value>
55772         <parameters>
55773           <parameter name="iter"
55774                      direction="out"
55775                      caller-allocates="1"
55776                      transfer-ownership="none">
55777             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55778             <type name="TextIter" c:type="GtkTextIter*"/>
55779           </parameter>
55780           <parameter name="x" transfer-ownership="none">
55781             <doc xml:whitespace="preserve">x position, in buffer coordinates</doc>
55782             <type name="gint" c:type="gint"/>
55783           </parameter>
55784           <parameter name="y" transfer-ownership="none">
55785             <doc xml:whitespace="preserve">y position, in buffer coordinates</doc>
55786             <type name="gint" c:type="gint"/>
55787           </parameter>
55788         </parameters>
55789       </method>
55790       <method name="get_iter_at_position"
55791               c:identifier="gtk_text_view_get_iter_at_position"
55792               version="2.6">
55793         <doc xml:whitespace="preserve">Retrieves the iterator pointing to the character at buffer 
55794 coordinates @x and @y. Buffer coordinates are coordinates for 
55795 the entire buffer, not just the currently-displayed portion.  
55796 If you have coordinates from an event, you have to convert 
55797 those to buffer coordinates with 
55798 gtk_text_view_window_to_buffer_coords().
55799 Note that this is different from gtk_text_view_get_iter_at_location(),
55800 which returns cursor locations, i.e. positions &lt;emphasis&gt;between&lt;/emphasis&gt;
55801 characters.</doc>
55802         <return-value transfer-ownership="none">
55803           <type name="none" c:type="void"/>
55804         </return-value>
55805         <parameters>
55806           <parameter name="iter"
55807                      direction="out"
55808                      caller-allocates="1"
55809                      transfer-ownership="none">
55810             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55811             <type name="TextIter" c:type="GtkTextIter*"/>
55812           </parameter>
55813           <parameter name="trailing"
55814                      direction="out"
55815                      caller-allocates="0"
55816                      transfer-ownership="full"
55817                      allow-none="1">
55818             <doc xml:whitespace="preserve">if non-%NULL, location to store an integer indicating where in the grapheme the user clicked. It will either be zero, or the number of characters in the grapheme. 0 represents the trailing edge of the grapheme.</doc>
55819             <type name="gint" c:type="gint*"/>
55820           </parameter>
55821           <parameter name="x" transfer-ownership="none">
55822             <doc xml:whitespace="preserve">x position, in buffer coordinates</doc>
55823             <type name="gint" c:type="gint"/>
55824           </parameter>
55825           <parameter name="y" transfer-ownership="none">
55826             <doc xml:whitespace="preserve">y position, in buffer coordinates</doc>
55827             <type name="gint" c:type="gint"/>
55828           </parameter>
55829         </parameters>
55830       </method>
55831       <method name="get_iter_location"
55832               c:identifier="gtk_text_view_get_iter_location">
55833         <doc xml:whitespace="preserve">Gets a rectangle which roughly contains the character at @iter.
55834 The rectangle position is in buffer coordinates; use
55835 gtk_text_view_buffer_to_window_coords() to convert these
55836 coordinates to coordinates for one of the windows in the text view.</doc>
55837         <return-value transfer-ownership="none">
55838           <type name="none" c:type="void"/>
55839         </return-value>
55840         <parameters>
55841           <parameter name="iter" transfer-ownership="none">
55842             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55843             <type name="TextIter" c:type="GtkTextIter*"/>
55844           </parameter>
55845           <parameter name="location"
55846                      direction="out"
55847                      caller-allocates="1"
55848                      transfer-ownership="none">
55849             <doc xml:whitespace="preserve">bounds of the character at @iter</doc>
55850             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
55851           </parameter>
55852         </parameters>
55853       </method>
55854       <method name="get_justification"
55855               c:identifier="gtk_text_view_get_justification">
55856         <doc xml:whitespace="preserve">Gets the default justification of paragraphs in @text_view.
55857 Tags in the buffer may override the default.</doc>
55858         <return-value transfer-ownership="none">
55859           <doc xml:whitespace="preserve">default justification</doc>
55860           <type name="Justification" c:type="GtkJustification"/>
55861         </return-value>
55862       </method>
55863       <method name="get_left_margin"
55864               c:identifier="gtk_text_view_get_left_margin">
55865         <doc xml:whitespace="preserve">Gets the default left margin size of paragraphs in the @text_view.
55866 Tags in the buffer may override the default.</doc>
55867         <return-value transfer-ownership="none">
55868           <doc xml:whitespace="preserve">left margin in pixels</doc>
55869           <type name="gint" c:type="gint"/>
55870         </return-value>
55871       </method>
55872       <method name="get_line_at_y" c:identifier="gtk_text_view_get_line_at_y">
55873         <doc xml:whitespace="preserve">Gets the #GtkTextIter at the start of the line containing
55874 the coordinate @y. @y is in buffer coordinates, convert from
55875 window coordinates with gtk_text_view_window_to_buffer_coords().
55876 If non-%NULL, @line_top will be filled with the coordinate of the top
55877 edge of the line.</doc>
55878         <return-value transfer-ownership="none">
55879           <type name="none" c:type="void"/>
55880         </return-value>
55881         <parameters>
55882           <parameter name="target_iter"
55883                      direction="out"
55884                      caller-allocates="1"
55885                      transfer-ownership="none">
55886             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55887             <type name="TextIter" c:type="GtkTextIter*"/>
55888           </parameter>
55889           <parameter name="y" transfer-ownership="none">
55890             <doc xml:whitespace="preserve">a y coordinate</doc>
55891             <type name="gint" c:type="gint"/>
55892           </parameter>
55893           <parameter name="line_top"
55894                      direction="out"
55895                      caller-allocates="0"
55896                      transfer-ownership="full">
55897             <doc xml:whitespace="preserve">return location for top coordinate of the line</doc>
55898             <type name="gint" c:type="gint*"/>
55899           </parameter>
55900         </parameters>
55901       </method>
55902       <method name="get_line_yrange"
55903               c:identifier="gtk_text_view_get_line_yrange">
55904         <doc xml:whitespace="preserve">Gets the y coordinate of the top of the line containing @iter,
55905 and the height of the line. The coordinate is a buffer coordinate;
55906 convert to window coordinates with gtk_text_view_buffer_to_window_coords().</doc>
55907         <return-value transfer-ownership="none">
55908           <type name="none" c:type="void"/>
55909         </return-value>
55910         <parameters>
55911           <parameter name="iter" transfer-ownership="none">
55912             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
55913             <type name="TextIter" c:type="GtkTextIter*"/>
55914           </parameter>
55915           <parameter name="y"
55916                      direction="out"
55917                      caller-allocates="0"
55918                      transfer-ownership="full">
55919             <doc xml:whitespace="preserve">return location for a y coordinate</doc>
55920             <type name="gint" c:type="gint*"/>
55921           </parameter>
55922           <parameter name="height"
55923                      direction="out"
55924                      caller-allocates="0"
55925                      transfer-ownership="full">
55926             <doc xml:whitespace="preserve">return location for a height</doc>
55927             <type name="gint" c:type="gint*"/>
55928           </parameter>
55929         </parameters>
55930       </method>
55931       <method name="get_overwrite"
55932               c:identifier="gtk_text_view_get_overwrite"
55933               version="2.4">
55934         <doc xml:whitespace="preserve">Returns whether the #GtkTextView is in overwrite mode or not.</doc>
55935         <return-value transfer-ownership="none">
55936           <doc xml:whitespace="preserve">whether @text_view is in overwrite mode or not.</doc>
55937           <type name="gboolean" c:type="gboolean"/>
55938         </return-value>
55939       </method>
55940       <method name="get_pixels_above_lines"
55941               c:identifier="gtk_text_view_get_pixels_above_lines">
55942         <doc xml:whitespace="preserve">Gets the default number of pixels to put above paragraphs.</doc>
55943         <return-value transfer-ownership="none">
55944           <doc xml:whitespace="preserve">default number of pixels above paragraphs</doc>
55945           <type name="gint" c:type="gint"/>
55946         </return-value>
55947       </method>
55948       <method name="get_pixels_below_lines"
55949               c:identifier="gtk_text_view_get_pixels_below_lines">
55950         <doc xml:whitespace="preserve">Gets the value set by gtk_text_view_set_pixels_below_lines().</doc>
55951         <return-value transfer-ownership="none">
55952           <doc xml:whitespace="preserve">default number of blank pixels below paragraphs</doc>
55953           <type name="gint" c:type="gint"/>
55954         </return-value>
55955       </method>
55956       <method name="get_pixels_inside_wrap"
55957               c:identifier="gtk_text_view_get_pixels_inside_wrap">
55958         <doc xml:whitespace="preserve">Gets the value set by gtk_text_view_set_pixels_inside_wrap().</doc>
55959         <return-value transfer-ownership="none">
55960           <doc xml:whitespace="preserve">default number of pixels of blank space between wrapped lines</doc>
55961           <type name="gint" c:type="gint"/>
55962         </return-value>
55963       </method>
55964       <method name="get_right_margin"
55965               c:identifier="gtk_text_view_get_right_margin">
55966         <doc xml:whitespace="preserve">Gets the default right margin for text in @text_view. Tags
55967 in the buffer may override the default.</doc>
55968         <return-value transfer-ownership="none">
55969           <doc xml:whitespace="preserve">right margin in pixels</doc>
55970           <type name="gint" c:type="gint"/>
55971         </return-value>
55972       </method>
55973       <method name="get_tabs" c:identifier="gtk_text_view_get_tabs">
55974         <doc xml:whitespace="preserve">Gets the default tabs for @text_view. Tags in the buffer may
55975 override the defaults. The returned array will be %NULL if
55976 "standard" (8-space) tabs are used. Free the return value
55977 with pango_tab_array_free().
55978 tabs are used; must be freed with pango_tab_array_free().</doc>
55979         <return-value transfer-ownership="full">
55980           <doc xml:whitespace="preserve">copy of default tab array, or %NULL if "standard"</doc>
55981           <type name="Pango.TabArray" c:type="PangoTabArray*"/>
55982         </return-value>
55983       </method>
55984       <method name="get_vadjustment"
55985               c:identifier="gtk_text_view_get_vadjustment"
55986               version="2.22">
55987         <doc xml:whitespace="preserve">Gets the vertical-scrolling #GtkAdjustment.</doc>
55988         <return-value transfer-ownership="none">
55989           <doc xml:whitespace="preserve">pointer to the vertical #GtkAdjustment</doc>
55990           <type name="Adjustment" c:type="GtkAdjustment*"/>
55991         </return-value>
55992       </method>
55993       <method name="get_visible_rect"
55994               c:identifier="gtk_text_view_get_visible_rect">
55995         <doc xml:whitespace="preserve">Fills @visible_rect with the currently-visible
55996 region of the buffer, in buffer coordinates. Convert to window coordinates
55997 with gtk_text_view_buffer_to_window_coords().</doc>
55998         <return-value transfer-ownership="none">
55999           <type name="none" c:type="void"/>
56000         </return-value>
56001         <parameters>
56002           <parameter name="visible_rect" transfer-ownership="none">
56003             <doc xml:whitespace="preserve">rectangle to fill</doc>
56004             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56005           </parameter>
56006         </parameters>
56007       </method>
56008       <method name="get_window" c:identifier="gtk_text_view_get_window">
56009         <doc xml:whitespace="preserve">Retrieves the #GdkWindow corresponding to an area of the text view;
56010 possible windows include the overall widget window, child windows
56011 on the left, right, top, bottom, and the window that displays the
56012 text buffer. Windows are %NULL and nonexistent if their width or
56013 height is 0, and are nonexistent before the widget has been
56014 realized.</doc>
56015         <return-value transfer-ownership="none">
56016           <doc xml:whitespace="preserve">a #GdkWindow, or %NULL</doc>
56017           <type name="Gdk.Window" c:type="GdkWindow*"/>
56018         </return-value>
56019         <parameters>
56020           <parameter name="win" transfer-ownership="none">
56021             <doc xml:whitespace="preserve">window to get</doc>
56022             <type name="TextWindowType" c:type="GtkTextWindowType"/>
56023           </parameter>
56024         </parameters>
56025       </method>
56026       <method name="get_window_type"
56027               c:identifier="gtk_text_view_get_window_type">
56028         <doc xml:whitespace="preserve">Usually used to find out which window an event corresponds to.
56029 If you connect to an event signal on @text_view, this function
56030 should be called on &lt;literal&gt;event-&amp;gt;window&lt;/literal&gt; to
56031 see which window it was.</doc>
56032         <return-value transfer-ownership="none">
56033           <doc xml:whitespace="preserve">the window type.</doc>
56034           <type name="TextWindowType" c:type="GtkTextWindowType"/>
56035         </return-value>
56036         <parameters>
56037           <parameter name="window" transfer-ownership="none">
56038             <doc xml:whitespace="preserve">a window type</doc>
56039             <type name="Gdk.Window" c:type="GdkWindow*"/>
56040           </parameter>
56041         </parameters>
56042       </method>
56043       <method name="get_wrap_mode" c:identifier="gtk_text_view_get_wrap_mode">
56044         <doc xml:whitespace="preserve">Gets the line wrapping for the view.</doc>
56045         <return-value transfer-ownership="none">
56046           <doc xml:whitespace="preserve">the line wrap setting</doc>
56047           <type name="WrapMode" c:type="GtkWrapMode"/>
56048         </return-value>
56049       </method>
56050       <method name="im_context_filter_keypress"
56051               c:identifier="gtk_text_view_im_context_filter_keypress"
56052               version="2.22">
56053         <doc xml:whitespace="preserve">Allow the #GtkTextView input method to internally handle key press
56054 and release events. If this function returns %TRUE, then no further
56055 processing should be done for this key event. See
56056 gtk_im_context_filter_keypress().
56057 Note that you are expected to call this function from your handler
56058 when overriding key event handling. This is needed in the case when
56059 you need to insert your own key handling between the input method
56060 and the default key event handling of the #GtkTextView.
56061 |[
56062 static gboolean
56063 gtk_foo_bar_key_press_event (GtkWidget   *widget,
56064 GdkEventKey *event)
56065 {
56066 if ((key-&gt;keyval == GDK_Return || key-&gt;keyval == GDK_KP_Enter))
56067 {
56068 if (gtk_text_view_im_context_filter_keypress (GTK_TEXT_VIEW (view), event))
56069 return TRUE;
56070 }
56071 /&amp;ast; Do some stuff &amp;ast;/
56072 return GTK_WIDGET_CLASS (gtk_foo_bar_parent_class)-&gt;key_press_event (widget, event);
56073 }
56074 ]|</doc>
56075         <return-value transfer-ownership="none">
56076           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
56077           <type name="gboolean" c:type="gboolean"/>
56078         </return-value>
56079         <parameters>
56080           <parameter name="event" transfer-ownership="none">
56081             <doc xml:whitespace="preserve">the key event</doc>
56082             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
56083           </parameter>
56084         </parameters>
56085       </method>
56086       <method name="move_child" c:identifier="gtk_text_view_move_child">
56087         <doc xml:whitespace="preserve">Updates the position of a child, as for gtk_text_view_add_child_in_window().</doc>
56088         <return-value transfer-ownership="none">
56089           <type name="none" c:type="void"/>
56090         </return-value>
56091         <parameters>
56092           <parameter name="child" transfer-ownership="none">
56093             <doc xml:whitespace="preserve">child widget already added to the text view</doc>
56094             <type name="Widget" c:type="GtkWidget*"/>
56095           </parameter>
56096           <parameter name="xpos" transfer-ownership="none">
56097             <doc xml:whitespace="preserve">new X position in window coordinates</doc>
56098             <type name="gint" c:type="gint"/>
56099           </parameter>
56100           <parameter name="ypos" transfer-ownership="none">
56101             <doc xml:whitespace="preserve">new Y position in window coordinates</doc>
56102             <type name="gint" c:type="gint"/>
56103           </parameter>
56104         </parameters>
56105       </method>
56106       <method name="move_mark_onscreen"
56107               c:identifier="gtk_text_view_move_mark_onscreen">
56108         <doc xml:whitespace="preserve">Moves a mark within the buffer so that it's
56109 located within the currently-visible text area.</doc>
56110         <return-value transfer-ownership="none">
56111           <doc xml:whitespace="preserve">%TRUE if the mark moved (wasn't already onscreen)</doc>
56112           <type name="gboolean" c:type="gboolean"/>
56113         </return-value>
56114         <parameters>
56115           <parameter name="mark" transfer-ownership="none">
56116             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
56117             <type name="TextMark" c:type="GtkTextMark*"/>
56118           </parameter>
56119         </parameters>
56120       </method>
56121       <method name="move_visually" c:identifier="gtk_text_view_move_visually">
56122         <doc xml:whitespace="preserve">Move the iterator a given number of characters visually, treating
56123 it as the strong cursor position. If @count is positive, then the
56124 new strong cursor position will be @count positions to the right of
56125 the old cursor position. If @count is negative then the new strong
56126 cursor position will be @count positions to the left of the old
56127 cursor position.
56128 In the presence of bi-directional text, the correspondence
56129 between logical and visual order will depend on the direction
56130 of the current run, and there may be jumps when the cursor
56131 is moved off of the end of a run.</doc>
56132         <return-value transfer-ownership="none">
56133           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not on the end iterator</doc>
56134           <type name="gboolean" c:type="gboolean"/>
56135         </return-value>
56136         <parameters>
56137           <parameter name="iter" transfer-ownership="none">
56138             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
56139             <type name="TextIter" c:type="GtkTextIter*"/>
56140           </parameter>
56141           <parameter name="count" transfer-ownership="none">
56142             <doc xml:whitespace="preserve">number of characters to move (negative moves left, positive moves right)</doc>
56143             <type name="gint" c:type="gint"/>
56144           </parameter>
56145         </parameters>
56146       </method>
56147       <method name="place_cursor_onscreen"
56148               c:identifier="gtk_text_view_place_cursor_onscreen">
56149         <doc xml:whitespace="preserve">Moves the cursor to the currently visible region of the
56150 buffer, it it isn't there already.</doc>
56151         <return-value transfer-ownership="none">
56152           <doc xml:whitespace="preserve">%TRUE if the cursor had to be moved.</doc>
56153           <type name="gboolean" c:type="gboolean"/>
56154         </return-value>
56155       </method>
56156       <method name="reset_im_context"
56157               c:identifier="gtk_text_view_reset_im_context"
56158               version="2.22">
56159         <doc xml:whitespace="preserve">Reset the input method context of the text view if needed.
56160 This can be necessary in the case where modifying the buffer
56161 would confuse on-going input method behavior.</doc>
56162         <return-value transfer-ownership="none">
56163           <type name="none" c:type="void"/>
56164         </return-value>
56165       </method>
56166       <method name="scroll_mark_onscreen"
56167               c:identifier="gtk_text_view_scroll_mark_onscreen">
56168         <doc xml:whitespace="preserve">Scrolls @text_view the minimum distance such that @mark is contained
56169 within the visible area of the widget.</doc>
56170         <return-value transfer-ownership="none">
56171           <type name="none" c:type="void"/>
56172         </return-value>
56173         <parameters>
56174           <parameter name="mark" transfer-ownership="none">
56175             <doc xml:whitespace="preserve">a mark in the buffer for @text_view</doc>
56176             <type name="TextMark" c:type="GtkTextMark*"/>
56177           </parameter>
56178         </parameters>
56179       </method>
56180       <method name="scroll_to_iter"
56181               c:identifier="gtk_text_view_scroll_to_iter">
56182         <doc xml:whitespace="preserve">Scrolls @text_view so that @iter is on the screen in the position
56183 indicated by @xalign and @yalign. An alignment of 0.0 indicates
56184 left or top, 1.0 indicates right or bottom, 0.5 means center. 
56185 If @use_align is %FALSE, the text scrolls the minimal distance to 
56186 get the mark onscreen, possibly not scrolling at all. The effective 
56187 screen for purposes of this function is reduced by a margin of size 
56188 Note that this function uses the currently-computed height of the
56189 lines in the text buffer. Line heights are computed in an idle 
56190 handler; so this function may not have the desired effect if it's 
56191 called before the height computations. To avoid oddness, consider 
56192 using gtk_text_view_scroll_to_mark() which saves a point to be 
56193 scrolled to after line validation.</doc>
56194         <return-value transfer-ownership="none">
56195           <doc xml:whitespace="preserve">%TRUE if scrolling occurred</doc>
56196           <type name="gboolean" c:type="gboolean"/>
56197         </return-value>
56198         <parameters>
56199           <parameter name="iter" transfer-ownership="none">
56200             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
56201             <type name="TextIter" c:type="GtkTextIter*"/>
56202           </parameter>
56203           <parameter name="within_margin" transfer-ownership="none">
56204             <doc xml:whitespace="preserve">margin as a [0.0,0.5) fraction of screen size</doc>
56205             <type name="gdouble" c:type="gdouble"/>
56206           </parameter>
56207           <parameter name="use_align" transfer-ownership="none">
56208             <doc xml:whitespace="preserve">whether to use alignment arguments (if %FALSE, just get the mark onscreen)</doc>
56209             <type name="gboolean" c:type="gboolean"/>
56210           </parameter>
56211           <parameter name="xalign" transfer-ownership="none">
56212             <doc xml:whitespace="preserve">horizontal alignment of mark within visible area</doc>
56213             <type name="gdouble" c:type="gdouble"/>
56214           </parameter>
56215           <parameter name="yalign" transfer-ownership="none">
56216             <doc xml:whitespace="preserve">vertical alignment of mark within visible area</doc>
56217             <type name="gdouble" c:type="gdouble"/>
56218           </parameter>
56219         </parameters>
56220       </method>
56221       <method name="scroll_to_mark"
56222               c:identifier="gtk_text_view_scroll_to_mark">
56223         <doc xml:whitespace="preserve">Scrolls @text_view so that @mark is on the screen in the position
56224 indicated by @xalign and @yalign. An alignment of 0.0 indicates
56225 left or top, 1.0 indicates right or bottom, 0.5 means center. 
56226 If @use_align is %FALSE, the text scrolls the minimal distance to 
56227 get the mark onscreen, possibly not scrolling at all. The effective 
56228 screen for purposes of this function is reduced by a margin of size</doc>
56229         <return-value transfer-ownership="none">
56230           <type name="none" c:type="void"/>
56231         </return-value>
56232         <parameters>
56233           <parameter name="mark" transfer-ownership="none">
56234             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
56235             <type name="TextMark" c:type="GtkTextMark*"/>
56236           </parameter>
56237           <parameter name="within_margin" transfer-ownership="none">
56238             <doc xml:whitespace="preserve">margin as a [0.0,0.5) fraction of screen size</doc>
56239             <type name="gdouble" c:type="gdouble"/>
56240           </parameter>
56241           <parameter name="use_align" transfer-ownership="none">
56242             <doc xml:whitespace="preserve">whether to use alignment arguments (if %FALSE, just get the mark onscreen)</doc>
56243             <type name="gboolean" c:type="gboolean"/>
56244           </parameter>
56245           <parameter name="xalign" transfer-ownership="none">
56246             <doc xml:whitespace="preserve">horizontal alignment of mark within visible area</doc>
56247             <type name="gdouble" c:type="gdouble"/>
56248           </parameter>
56249           <parameter name="yalign" transfer-ownership="none">
56250             <doc xml:whitespace="preserve">vertical alignment of mark within visible area</doc>
56251             <type name="gdouble" c:type="gdouble"/>
56252           </parameter>
56253         </parameters>
56254       </method>
56255       <method name="set_accepts_tab"
56256               c:identifier="gtk_text_view_set_accepts_tab"
56257               version="2.4">
56258         <doc xml:whitespace="preserve">Sets the behavior of the text widget when the Tab key is pressed. 
56259 If @accepts_tab is %TRUE, a tab character is inserted. If @accepts_tab 
56260 is %FALSE the keyboard focus is moved to the next widget in the focus 
56261 chain.</doc>
56262         <return-value transfer-ownership="none">
56263           <type name="none" c:type="void"/>
56264         </return-value>
56265         <parameters>
56266           <parameter name="accepts_tab" transfer-ownership="none">
56267             <doc xml:whitespace="preserve">%TRUE if pressing the Tab key should insert a tab character, %FALSE, if pressing the Tab key should move the keyboard focus.</doc>
56268             <type name="gboolean" c:type="gboolean"/>
56269           </parameter>
56270         </parameters>
56271       </method>
56272       <method name="set_border_window_size"
56273               c:identifier="gtk_text_view_set_border_window_size">
56274         <doc xml:whitespace="preserve">Sets the width of %GTK_TEXT_WINDOW_LEFT or %GTK_TEXT_WINDOW_RIGHT,
56275 or the height of %GTK_TEXT_WINDOW_TOP or %GTK_TEXT_WINDOW_BOTTOM.
56276 Automatically destroys the corresponding window if the size is set
56277 to 0, and creates the window if the size is set to non-zero.  This
56278 function can only be used for the "border windows," it doesn't work
56279 with #GTK_TEXT_WINDOW_WIDGET, #GTK_TEXT_WINDOW_TEXT, or
56280 #GTK_TEXT_WINDOW_PRIVATE.</doc>
56281         <return-value transfer-ownership="none">
56282           <type name="none" c:type="void"/>
56283         </return-value>
56284         <parameters>
56285           <parameter name="type" transfer-ownership="none">
56286             <doc xml:whitespace="preserve">window to affect</doc>
56287             <type name="TextWindowType" c:type="GtkTextWindowType"/>
56288           </parameter>
56289           <parameter name="size" transfer-ownership="none">
56290             <doc xml:whitespace="preserve">width or height of the window</doc>
56291             <type name="gint" c:type="gint"/>
56292           </parameter>
56293         </parameters>
56294       </method>
56295       <method name="set_buffer" c:identifier="gtk_text_view_set_buffer">
56296         <doc xml:whitespace="preserve">Sets @buffer as the buffer being displayed by @text_view. The previous
56297 buffer displayed by the text view is unreferenced, and a reference is
56298 added to @buffer. If you owned a reference to @buffer before passing it
56299 to this function, you must remove that reference yourself; #GtkTextView
56300 will not "adopt" it.</doc>
56301         <return-value transfer-ownership="none">
56302           <type name="none" c:type="void"/>
56303         </return-value>
56304         <parameters>
56305           <parameter name="buffer" transfer-ownership="none" allow-none="1">
56306             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
56307             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
56308           </parameter>
56309         </parameters>
56310       </method>
56311       <method name="set_cursor_visible"
56312               c:identifier="gtk_text_view_set_cursor_visible">
56313         <doc xml:whitespace="preserve">Toggles whether the insertion point is displayed. A buffer with no editable
56314 text probably shouldn't have a visible cursor, so you may want to turn
56315 the cursor off.</doc>
56316         <return-value transfer-ownership="none">
56317           <type name="none" c:type="void"/>
56318         </return-value>
56319         <parameters>
56320           <parameter name="setting" transfer-ownership="none">
56321             <doc xml:whitespace="preserve">whether to show the insertion cursor</doc>
56322             <type name="gboolean" c:type="gboolean"/>
56323           </parameter>
56324         </parameters>
56325       </method>
56326       <method name="set_editable" c:identifier="gtk_text_view_set_editable">
56327         <doc xml:whitespace="preserve">Sets the default editability of the #GtkTextView. You can override
56328 this default setting with tags in the buffer, using the "editable"
56329 attribute of tags.</doc>
56330         <return-value transfer-ownership="none">
56331           <type name="none" c:type="void"/>
56332         </return-value>
56333         <parameters>
56334           <parameter name="setting" transfer-ownership="none">
56335             <doc xml:whitespace="preserve">whether it's editable</doc>
56336             <type name="gboolean" c:type="gboolean"/>
56337           </parameter>
56338         </parameters>
56339       </method>
56340       <method name="set_indent" c:identifier="gtk_text_view_set_indent">
56341         <doc xml:whitespace="preserve">Sets the default indentation for paragraphs in @text_view.
56342 Tags in the buffer may override the default.</doc>
56343         <return-value transfer-ownership="none">
56344           <type name="none" c:type="void"/>
56345         </return-value>
56346         <parameters>
56347           <parameter name="indent" transfer-ownership="none">
56348             <doc xml:whitespace="preserve">indentation in pixels</doc>
56349             <type name="gint" c:type="gint"/>
56350           </parameter>
56351         </parameters>
56352       </method>
56353       <method name="set_justification"
56354               c:identifier="gtk_text_view_set_justification">
56355         <doc xml:whitespace="preserve">Sets the default justification of text in @text_view.
56356 Tags in the view's buffer may override the default.</doc>
56357         <return-value transfer-ownership="none">
56358           <type name="none" c:type="void"/>
56359         </return-value>
56360         <parameters>
56361           <parameter name="justification" transfer-ownership="none">
56362             <doc xml:whitespace="preserve">justification</doc>
56363             <type name="Justification" c:type="GtkJustification"/>
56364           </parameter>
56365         </parameters>
56366       </method>
56367       <method name="set_left_margin"
56368               c:identifier="gtk_text_view_set_left_margin">
56369         <doc xml:whitespace="preserve">Sets the default left margin for text in @text_view.
56370 Tags in the buffer may override the default.</doc>
56371         <return-value transfer-ownership="none">
56372           <type name="none" c:type="void"/>
56373         </return-value>
56374         <parameters>
56375           <parameter name="left_margin" transfer-ownership="none">
56376             <doc xml:whitespace="preserve">left margin in pixels</doc>
56377             <type name="gint" c:type="gint"/>
56378           </parameter>
56379         </parameters>
56380       </method>
56381       <method name="set_overwrite"
56382               c:identifier="gtk_text_view_set_overwrite"
56383               version="2.4">
56384         <doc xml:whitespace="preserve">Changes the #GtkTextView overwrite mode.</doc>
56385         <return-value transfer-ownership="none">
56386           <type name="none" c:type="void"/>
56387         </return-value>
56388         <parameters>
56389           <parameter name="overwrite" transfer-ownership="none">
56390             <doc xml:whitespace="preserve">%TRUE to turn on overwrite mode, %FALSE to turn it off</doc>
56391             <type name="gboolean" c:type="gboolean"/>
56392           </parameter>
56393         </parameters>
56394       </method>
56395       <method name="set_pixels_above_lines"
56396               c:identifier="gtk_text_view_set_pixels_above_lines">
56397         <doc xml:whitespace="preserve">Sets the default number of blank pixels above paragraphs in @text_view.
56398 Tags in the buffer for @text_view may override the defaults.</doc>
56399         <return-value transfer-ownership="none">
56400           <type name="none" c:type="void"/>
56401         </return-value>
56402         <parameters>
56403           <parameter name="pixels_above_lines" transfer-ownership="none">
56404             <doc xml:whitespace="preserve">pixels above paragraphs</doc>
56405             <type name="gint" c:type="gint"/>
56406           </parameter>
56407         </parameters>
56408       </method>
56409       <method name="set_pixels_below_lines"
56410               c:identifier="gtk_text_view_set_pixels_below_lines">
56411         <doc xml:whitespace="preserve">Sets the default number of pixels of blank space
56412 to put below paragraphs in @text_view. May be overridden
56413 by tags applied to @text_view's buffer.</doc>
56414         <return-value transfer-ownership="none">
56415           <type name="none" c:type="void"/>
56416         </return-value>
56417         <parameters>
56418           <parameter name="pixels_below_lines" transfer-ownership="none">
56419             <doc xml:whitespace="preserve">pixels below paragraphs</doc>
56420             <type name="gint" c:type="gint"/>
56421           </parameter>
56422         </parameters>
56423       </method>
56424       <method name="set_pixels_inside_wrap"
56425               c:identifier="gtk_text_view_set_pixels_inside_wrap">
56426         <doc xml:whitespace="preserve">Sets the default number of pixels of blank space to leave between
56427 display/wrapped lines within a paragraph. May be overridden by
56428 tags in @text_view's buffer.</doc>
56429         <return-value transfer-ownership="none">
56430           <type name="none" c:type="void"/>
56431         </return-value>
56432         <parameters>
56433           <parameter name="pixels_inside_wrap" transfer-ownership="none">
56434             <doc xml:whitespace="preserve">default number of pixels between wrapped lines</doc>
56435             <type name="gint" c:type="gint"/>
56436           </parameter>
56437         </parameters>
56438       </method>
56439       <method name="set_right_margin"
56440               c:identifier="gtk_text_view_set_right_margin">
56441         <doc xml:whitespace="preserve">Sets the default right margin for text in the text view.
56442 Tags in the buffer may override the default.</doc>
56443         <return-value transfer-ownership="none">
56444           <type name="none" c:type="void"/>
56445         </return-value>
56446         <parameters>
56447           <parameter name="right_margin" transfer-ownership="none">
56448             <doc xml:whitespace="preserve">right margin in pixels</doc>
56449             <type name="gint" c:type="gint"/>
56450           </parameter>
56451         </parameters>
56452       </method>
56453       <method name="set_tabs" c:identifier="gtk_text_view_set_tabs">
56454         <doc xml:whitespace="preserve">Sets the default tab stops for paragraphs in @text_view.
56455 Tags in the buffer may override the default.</doc>
56456         <return-value transfer-ownership="none">
56457           <type name="none" c:type="void"/>
56458         </return-value>
56459         <parameters>
56460           <parameter name="tabs" transfer-ownership="none">
56461             <doc xml:whitespace="preserve">tabs as a #PangoTabArray</doc>
56462             <type name="Pango.TabArray" c:type="PangoTabArray*"/>
56463           </parameter>
56464         </parameters>
56465       </method>
56466       <method name="set_wrap_mode" c:identifier="gtk_text_view_set_wrap_mode">
56467         <doc xml:whitespace="preserve">Sets the line wrapping for the view.</doc>
56468         <return-value transfer-ownership="none">
56469           <type name="none" c:type="void"/>
56470         </return-value>
56471         <parameters>
56472           <parameter name="wrap_mode" transfer-ownership="none">
56473             <doc xml:whitespace="preserve">a #GtkWrapMode</doc>
56474             <type name="WrapMode" c:type="GtkWrapMode"/>
56475           </parameter>
56476         </parameters>
56477       </method>
56478       <method name="starts_display_line"
56479               c:identifier="gtk_text_view_starts_display_line">
56480         <doc xml:whitespace="preserve">Determines whether @iter is at the start of a display line.
56481 See gtk_text_view_forward_display_line() for an explanation of
56482 display lines vs. paragraphs.</doc>
56483         <return-value transfer-ownership="none">
56484           <doc xml:whitespace="preserve">%TRUE if @iter begins a wrapped line</doc>
56485           <type name="gboolean" c:type="gboolean"/>
56486         </return-value>
56487         <parameters>
56488           <parameter name="iter" transfer-ownership="none">
56489             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
56490             <type name="TextIter" c:type="GtkTextIter*"/>
56491           </parameter>
56492         </parameters>
56493       </method>
56494       <method name="window_to_buffer_coords"
56495               c:identifier="gtk_text_view_window_to_buffer_coords">
56496         <doc xml:whitespace="preserve">Converts coordinates on the window identified by @win to buffer
56497 coordinates, storing the result in (@buffer_x,@buffer_y).
56498 Note that you can't convert coordinates for a nonexisting window (see 
56499 gtk_text_view_set_border_window_size()).</doc>
56500         <return-value transfer-ownership="none">
56501           <type name="none" c:type="void"/>
56502         </return-value>
56503         <parameters>
56504           <parameter name="win" transfer-ownership="none">
56505             <doc xml:whitespace="preserve">a #GtkTextWindowType except #GTK_TEXT_WINDOW_PRIVATE</doc>
56506             <type name="TextWindowType" c:type="GtkTextWindowType"/>
56507           </parameter>
56508           <parameter name="window_x" transfer-ownership="none">
56509             <doc xml:whitespace="preserve">window x coordinate</doc>
56510             <type name="gint" c:type="gint"/>
56511           </parameter>
56512           <parameter name="window_y" transfer-ownership="none">
56513             <doc xml:whitespace="preserve">window y coordinate</doc>
56514             <type name="gint" c:type="gint"/>
56515           </parameter>
56516           <parameter name="buffer_x"
56517                      direction="out"
56518                      caller-allocates="0"
56519                      transfer-ownership="full"
56520                      allow-none="1">
56521             <doc xml:whitespace="preserve">buffer x coordinate return location or %NULL</doc>
56522             <type name="gint" c:type="gint*"/>
56523           </parameter>
56524           <parameter name="buffer_y"
56525                      direction="out"
56526                      caller-allocates="0"
56527                      transfer-ownership="full"
56528                      allow-none="1">
56529             <doc xml:whitespace="preserve">buffer y coordinate return location or %NULL</doc>
56530             <type name="gint" c:type="gint*"/>
56531           </parameter>
56532         </parameters>
56533       </method>
56534       <property name="accepts-tab" writable="1" transfer-ownership="none">
56535         <type name="gboolean"/>
56536       </property>
56537       <property name="buffer" writable="1" transfer-ownership="none">
56538         <type name="TextBuffer"/>
56539       </property>
56540       <property name="cursor-visible" writable="1" transfer-ownership="none">
56541         <type name="gboolean"/>
56542       </property>
56543       <property name="editable" writable="1" transfer-ownership="none">
56544         <type name="gboolean"/>
56545       </property>
56546       <property name="im-module"
56547                 version="2.16"
56548                 writable="1"
56549                 transfer-ownership="none">
56550         <doc xml:whitespace="preserve">Which IM (input method) module should be used for this entry. 
56551 See #GtkIMContext.
56552 Setting this to a non-%NULL value overrides the
56553 system-wide IM module setting. See the GtkSettings 
56554 #GtkSettings:gtk-im-module property.</doc>
56555         <type name="utf8"/>
56556       </property>
56557       <property name="indent" writable="1" transfer-ownership="none">
56558         <type name="gint"/>
56559       </property>
56560       <property name="justification" writable="1" transfer-ownership="none">
56561         <type name="Justification"/>
56562       </property>
56563       <property name="left-margin" writable="1" transfer-ownership="none">
56564         <type name="gint"/>
56565       </property>
56566       <property name="overwrite" writable="1" transfer-ownership="none">
56567         <type name="gboolean"/>
56568       </property>
56569       <property name="pixels-above-lines"
56570                 writable="1"
56571                 transfer-ownership="none">
56572         <type name="gint"/>
56573       </property>
56574       <property name="pixels-below-lines"
56575                 writable="1"
56576                 transfer-ownership="none">
56577         <type name="gint"/>
56578       </property>
56579       <property name="pixels-inside-wrap"
56580                 writable="1"
56581                 transfer-ownership="none">
56582         <type name="gint"/>
56583       </property>
56584       <property name="right-margin" writable="1" transfer-ownership="none">
56585         <type name="gint"/>
56586       </property>
56587       <property name="tabs" writable="1" transfer-ownership="none">
56588         <type name="Pango.TabArray"/>
56589       </property>
56590       <property name="wrap-mode" writable="1" transfer-ownership="none">
56591         <type name="WrapMode"/>
56592       </property>
56593       <field name="parent_instance">
56594         <type name="Container" c:type="GtkContainer"/>
56595       </field>
56596       <field name="priv">
56597         <type name="TextViewPrivate" c:type="GtkTextViewPrivate*"/>
56598       </field>
56599       <glib:signal name="backspace">
56600         <doc xml:whitespace="preserve">The ::backspace signal is a 
56601 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56602 which gets emitted when the user asks for it.
56603 The default bindings for this signal are
56604 Backspace and Shift-Backspace.</doc>
56605         <return-value transfer-ownership="none">
56606           <type name="none"/>
56607         </return-value>
56608       </glib:signal>
56609       <glib:signal name="copy-clipboard">
56610         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a 
56611 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56612 which gets emitted to copy the selection to the clipboard.
56613 The default bindings for this signal are
56614 Ctrl-c and Ctrl-Insert.</doc>
56615         <return-value transfer-ownership="none">
56616           <type name="none"/>
56617         </return-value>
56618       </glib:signal>
56619       <glib:signal name="cut-clipboard">
56620         <doc xml:whitespace="preserve">The ::cut-clipboard signal is a 
56621 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56622 which gets emitted to cut the selection to the clipboard.
56623 The default bindings for this signal are
56624 Ctrl-x and Shift-Delete.</doc>
56625         <return-value transfer-ownership="none">
56626           <type name="none"/>
56627         </return-value>
56628       </glib:signal>
56629       <glib:signal name="delete-from-cursor">
56630         <doc xml:whitespace="preserve">The ::delete-from-cursor signal is a 
56631 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56632 which gets emitted when the user initiates a text deletion.
56633 If the @type is %GTK_DELETE_CHARS, GTK+ deletes the selection
56634 if there is one, otherwise it deletes the requested number
56635 of characters.
56636 The default bindings for this signal are
56637 Delete for deleting a character, Ctrl-Delete for 
56638 deleting a word and Ctrl-Backspace for deleting a word 
56639 backwords.</doc>
56640         <return-value transfer-ownership="none">
56641           <type name="none"/>
56642         </return-value>
56643         <parameters>
56644           <parameter name="object" transfer-ownership="none">
56645             <doc xml:whitespace="preserve">the granularity of the deletion, as a #GtkDeleteType</doc>
56646             <type name="DeleteType"/>
56647           </parameter>
56648           <parameter name="p0" transfer-ownership="none">
56649             <doc xml:whitespace="preserve">the number of @type units to delete</doc>
56650             <type name="gint"/>
56651           </parameter>
56652         </parameters>
56653       </glib:signal>
56654       <glib:signal name="insert-at-cursor">
56655         <doc xml:whitespace="preserve">The ::insert-at-cursor signal is a
56656 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
56657 which gets emitted when the user initiates the insertion of a 
56658 fixed string at the cursor.
56659 This signal has no default bindings.</doc>
56660         <return-value transfer-ownership="none">
56661           <type name="none"/>
56662         </return-value>
56663         <parameters>
56664           <parameter name="object" transfer-ownership="none">
56665             <doc xml:whitespace="preserve">the string to insert</doc>
56666             <type name="utf8"/>
56667           </parameter>
56668         </parameters>
56669       </glib:signal>
56670       <glib:signal name="move-cursor">
56671         <doc xml:whitespace="preserve">The ::move-cursor signal is a 
56672 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56673 which gets emitted when the user initiates a cursor movement. 
56674 If the cursor is not visible in @text_view, this signal causes
56675 the viewport to be moved instead.
56676 Applications should not connect to it, but may emit it with 
56677 g_signal_emit_by_name() if they need to control the cursor
56678 programmatically.
56679 The default bindings for this signal come in two variants,
56680 the variant with the Shift modifier extends the selection,
56681 the variant without the Shift modifer does not.
56682 There are too many key combinations to list them all here.
56683 &lt;itemizedlist&gt;
56684 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
56685 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
56686 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
56687 &lt;listitem&gt;PageUp/PageDown keys move vertically by pages&lt;/listitem&gt;
56688 &lt;listitem&gt;Ctrl-PageUp/PageDown keys move horizontally by pages&lt;/listitem&gt;
56689 &lt;/itemizedlist&gt;</doc>
56690         <return-value transfer-ownership="none">
56691           <type name="none"/>
56692         </return-value>
56693         <parameters>
56694           <parameter name="object" transfer-ownership="none">
56695             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
56696             <type name="MovementStep"/>
56697           </parameter>
56698           <parameter name="p0" transfer-ownership="none">
56699             <doc xml:whitespace="preserve">the number of @step units to move</doc>
56700             <type name="gint"/>
56701           </parameter>
56702           <parameter name="p1" transfer-ownership="none">
56703             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
56704             <type name="gboolean"/>
56705           </parameter>
56706         </parameters>
56707       </glib:signal>
56708       <glib:signal name="move-viewport">
56709         <doc xml:whitespace="preserve">The ::move-viewport signal is a 
56710 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56711 which can be bound to key combinations to allow the user
56712 to move the viewport, i.e. change what part of the text view
56713 is visible in a containing scrolled window.
56714 There are no default bindings for this signal.</doc>
56715         <return-value transfer-ownership="none">
56716           <type name="none"/>
56717         </return-value>
56718         <parameters>
56719           <parameter name="object" transfer-ownership="none">
56720             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
56721             <type name="ScrollStep"/>
56722           </parameter>
56723           <parameter name="p0" transfer-ownership="none">
56724             <doc xml:whitespace="preserve">the number of @step units to move</doc>
56725             <type name="gint"/>
56726           </parameter>
56727         </parameters>
56728       </glib:signal>
56729       <glib:signal name="paste-clipboard">
56730         <doc xml:whitespace="preserve">The ::paste-clipboard signal is a 
56731 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56732 which gets emitted to paste the contents of the clipboard 
56733 into the text view.
56734 The default bindings for this signal are
56735 Ctrl-v and Shift-Insert.</doc>
56736         <return-value transfer-ownership="none">
56737           <type name="none"/>
56738         </return-value>
56739       </glib:signal>
56740       <glib:signal name="populate-popup">
56741         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the 
56742 context menu of the text view.
56743 If you need to add items to the context menu, connect
56744 to this signal and append your menuitems to the @menu.</doc>
56745         <return-value transfer-ownership="none">
56746           <type name="none"/>
56747         </return-value>
56748         <parameters>
56749           <parameter name="object" transfer-ownership="none">
56750             <doc xml:whitespace="preserve">the menu that is being populated</doc>
56751             <type name="Menu"/>
56752           </parameter>
56753         </parameters>
56754       </glib:signal>
56755       <glib:signal name="preedit-changed" version="2.20">
56756         <doc xml:whitespace="preserve">If an input method is used, the typed text will not immediately
56757 be committed to the buffer. So if you are interested in the text,
56758 connect to this signal.
56759 This signal is only emitted if the text at the given position
56760 is actually editable.</doc>
56761         <return-value transfer-ownership="none">
56762           <type name="none"/>
56763         </return-value>
56764         <parameters>
56765           <parameter name="object" transfer-ownership="none">
56766             <doc xml:whitespace="preserve">the current preedit string</doc>
56767             <type name="utf8"/>
56768           </parameter>
56769         </parameters>
56770       </glib:signal>
56771       <glib:signal name="select-all">
56772         <doc xml:whitespace="preserve">The ::select-all signal is a 
56773 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56774 which gets emitted to select or unselect the complete
56775 contents of the text view.
56776 The default bindings for this signal are Ctrl-a and Ctrl-/ 
56777 for selecting and Shift-Ctrl-a and Ctrl-\ for unselecting.</doc>
56778         <return-value transfer-ownership="none">
56779           <type name="none"/>
56780         </return-value>
56781         <parameters>
56782           <parameter name="object" transfer-ownership="none">
56783             <doc xml:whitespace="preserve">%TRUE to select, %FALSE to unselect</doc>
56784             <type name="gboolean"/>
56785           </parameter>
56786         </parameters>
56787       </glib:signal>
56788       <glib:signal name="set-anchor">
56789         <doc xml:whitespace="preserve">The ::set-anchor signal is a
56790 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
56791 which gets emitted when the user initiates setting the "anchor" 
56792 mark. The "anchor" mark gets placed at the same position as the
56793 "insert" mark.
56794 This signal has no default bindings.</doc>
56795         <return-value transfer-ownership="none">
56796           <type name="none"/>
56797         </return-value>
56798       </glib:signal>
56799       <glib:signal name="set-scroll-adjustments">
56800         <return-value transfer-ownership="none">
56801           <type name="none"/>
56802         </return-value>
56803         <parameters>
56804           <parameter name="object" transfer-ownership="none">
56805             <type name="Adjustment"/>
56806           </parameter>
56807           <parameter name="p0" transfer-ownership="none">
56808             <type name="Adjustment"/>
56809           </parameter>
56810         </parameters>
56811       </glib:signal>
56812       <glib:signal name="toggle-cursor-visible">
56813         <doc xml:whitespace="preserve">The ::toggle-cursor-visible signal is a 
56814 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56815 which gets emitted to toggle the visibility of the cursor.
56816 The default binding for this signal is F7.</doc>
56817         <return-value transfer-ownership="none">
56818           <type name="none"/>
56819         </return-value>
56820       </glib:signal>
56821       <glib:signal name="toggle-overwrite">
56822         <doc xml:whitespace="preserve">The ::toggle-overwrite signal is a 
56823 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
56824 which gets emitted to toggle the overwrite mode of the text view.
56825 The default bindings for this signal is Insert.</doc>
56826         <return-value transfer-ownership="none">
56827           <type name="none"/>
56828         </return-value>
56829       </glib:signal>
56830     </class>
56831     <record name="TextViewClass"
56832             c:type="GtkTextViewClass"
56833             glib:is-gtype-struct-for="TextView">
56834       <field name="parent_class">
56835         <type name="ContainerClass" c:type="GtkContainerClass"/>
56836       </field>
56837       <field name="set_scroll_adjustments">
56838         <callback name="set_scroll_adjustments">
56839           <return-value transfer-ownership="none">
56840             <type name="none" c:type="void"/>
56841           </return-value>
56842           <parameters>
56843             <parameter name="text_view" transfer-ownership="none">
56844               <type name="TextView" c:type="GtkTextView*"/>
56845             </parameter>
56846             <parameter name="hadjustment" transfer-ownership="none">
56847               <type name="Adjustment" c:type="GtkAdjustment*"/>
56848             </parameter>
56849             <parameter name="vadjustment" transfer-ownership="none">
56850               <type name="Adjustment" c:type="GtkAdjustment*"/>
56851             </parameter>
56852           </parameters>
56853         </callback>
56854       </field>
56855       <field name="populate_popup">
56856         <callback name="populate_popup">
56857           <return-value transfer-ownership="none">
56858             <type name="none" c:type="void"/>
56859           </return-value>
56860           <parameters>
56861             <parameter name="text_view" transfer-ownership="none">
56862               <type name="TextView" c:type="GtkTextView*"/>
56863             </parameter>
56864             <parameter name="menu" transfer-ownership="none">
56865               <type name="Menu" c:type="GtkMenu*"/>
56866             </parameter>
56867           </parameters>
56868         </callback>
56869       </field>
56870       <field name="move_cursor">
56871         <callback name="move_cursor">
56872           <return-value transfer-ownership="none">
56873             <type name="none" c:type="void"/>
56874           </return-value>
56875           <parameters>
56876             <parameter name="text_view" transfer-ownership="none">
56877               <type name="TextView" c:type="GtkTextView*"/>
56878             </parameter>
56879             <parameter name="step" transfer-ownership="none">
56880               <type name="MovementStep" c:type="GtkMovementStep"/>
56881             </parameter>
56882             <parameter name="count" transfer-ownership="none">
56883               <type name="gint" c:type="gint"/>
56884             </parameter>
56885             <parameter name="extend_selection" transfer-ownership="none">
56886               <type name="gboolean" c:type="gboolean"/>
56887             </parameter>
56888           </parameters>
56889         </callback>
56890       </field>
56891       <field name="set_anchor">
56892         <callback name="set_anchor">
56893           <return-value transfer-ownership="none">
56894             <type name="none" c:type="void"/>
56895           </return-value>
56896           <parameters>
56897             <parameter name="text_view" transfer-ownership="none">
56898               <type name="TextView" c:type="GtkTextView*"/>
56899             </parameter>
56900           </parameters>
56901         </callback>
56902       </field>
56903       <field name="insert_at_cursor">
56904         <callback name="insert_at_cursor">
56905           <return-value transfer-ownership="none">
56906             <type name="none" c:type="void"/>
56907           </return-value>
56908           <parameters>
56909             <parameter name="text_view" transfer-ownership="none">
56910               <type name="TextView" c:type="GtkTextView*"/>
56911             </parameter>
56912             <parameter name="str" transfer-ownership="none">
56913               <type name="utf8" c:type="gchar*"/>
56914             </parameter>
56915           </parameters>
56916         </callback>
56917       </field>
56918       <field name="delete_from_cursor">
56919         <callback name="delete_from_cursor">
56920           <return-value transfer-ownership="none">
56921             <type name="none" c:type="void"/>
56922           </return-value>
56923           <parameters>
56924             <parameter name="text_view" transfer-ownership="none">
56925               <type name="TextView" c:type="GtkTextView*"/>
56926             </parameter>
56927             <parameter name="type" transfer-ownership="none">
56928               <type name="DeleteType" c:type="GtkDeleteType"/>
56929             </parameter>
56930             <parameter name="count" transfer-ownership="none">
56931               <type name="gint" c:type="gint"/>
56932             </parameter>
56933           </parameters>
56934         </callback>
56935       </field>
56936       <field name="backspace">
56937         <callback name="backspace">
56938           <return-value transfer-ownership="none">
56939             <type name="none" c:type="void"/>
56940           </return-value>
56941           <parameters>
56942             <parameter name="text_view" transfer-ownership="none">
56943               <type name="TextView" c:type="GtkTextView*"/>
56944             </parameter>
56945           </parameters>
56946         </callback>
56947       </field>
56948       <field name="cut_clipboard">
56949         <callback name="cut_clipboard">
56950           <return-value transfer-ownership="none">
56951             <type name="none" c:type="void"/>
56952           </return-value>
56953           <parameters>
56954             <parameter name="text_view" transfer-ownership="none">
56955               <type name="TextView" c:type="GtkTextView*"/>
56956             </parameter>
56957           </parameters>
56958         </callback>
56959       </field>
56960       <field name="copy_clipboard">
56961         <callback name="copy_clipboard">
56962           <return-value transfer-ownership="none">
56963             <type name="none" c:type="void"/>
56964           </return-value>
56965           <parameters>
56966             <parameter name="text_view" transfer-ownership="none">
56967               <type name="TextView" c:type="GtkTextView*"/>
56968             </parameter>
56969           </parameters>
56970         </callback>
56971       </field>
56972       <field name="paste_clipboard">
56973         <callback name="paste_clipboard">
56974           <return-value transfer-ownership="none">
56975             <type name="none" c:type="void"/>
56976           </return-value>
56977           <parameters>
56978             <parameter name="text_view" transfer-ownership="none">
56979               <type name="TextView" c:type="GtkTextView*"/>
56980             </parameter>
56981           </parameters>
56982         </callback>
56983       </field>
56984       <field name="toggle_overwrite">
56985         <callback name="toggle_overwrite">
56986           <return-value transfer-ownership="none">
56987             <type name="none" c:type="void"/>
56988           </return-value>
56989           <parameters>
56990             <parameter name="text_view" transfer-ownership="none">
56991               <type name="TextView" c:type="GtkTextView*"/>
56992             </parameter>
56993           </parameters>
56994         </callback>
56995       </field>
56996       <field name="move_focus">
56997         <callback name="move_focus">
56998           <return-value transfer-ownership="none">
56999             <type name="none" c:type="void"/>
57000           </return-value>
57001           <parameters>
57002             <parameter name="text_view" transfer-ownership="none">
57003               <type name="TextView" c:type="GtkTextView*"/>
57004             </parameter>
57005             <parameter name="direction" transfer-ownership="none">
57006               <type name="DirectionType" c:type="GtkDirectionType"/>
57007             </parameter>
57008           </parameters>
57009         </callback>
57010       </field>
57011       <field name="_gtk_reserved1" introspectable="0">
57012         <callback name="_gtk_reserved1">
57013           <return-value transfer-ownership="none">
57014             <type name="none" c:type="void"/>
57015           </return-value>
57016         </callback>
57017       </field>
57018       <field name="_gtk_reserved2" introspectable="0">
57019         <callback name="_gtk_reserved2">
57020           <return-value transfer-ownership="none">
57021             <type name="none" c:type="void"/>
57022           </return-value>
57023         </callback>
57024       </field>
57025       <field name="_gtk_reserved3" introspectable="0">
57026         <callback name="_gtk_reserved3">
57027           <return-value transfer-ownership="none">
57028             <type name="none" c:type="void"/>
57029           </return-value>
57030         </callback>
57031       </field>
57032       <field name="_gtk_reserved4" introspectable="0">
57033         <callback name="_gtk_reserved4">
57034           <return-value transfer-ownership="none">
57035             <type name="none" c:type="void"/>
57036           </return-value>
57037         </callback>
57038       </field>
57039       <field name="_gtk_reserved5" introspectable="0">
57040         <callback name="_gtk_reserved5">
57041           <return-value transfer-ownership="none">
57042             <type name="none" c:type="void"/>
57043           </return-value>
57044         </callback>
57045       </field>
57046       <field name="_gtk_reserved6" introspectable="0">
57047         <callback name="_gtk_reserved6">
57048           <return-value transfer-ownership="none">
57049             <type name="none" c:type="void"/>
57050           </return-value>
57051         </callback>
57052       </field>
57053       <field name="_gtk_reserved7" introspectable="0">
57054         <callback name="_gtk_reserved7">
57055           <return-value transfer-ownership="none">
57056             <type name="none" c:type="void"/>
57057           </return-value>
57058         </callback>
57059       </field>
57060     </record>
57061     <record name="TextViewPrivate" c:type="GtkTextViewPrivate" disguised="1">
57062     </record>
57063     <enumeration name="TextWindowType"
57064                  glib:type-name="GtkTextWindowType"
57065                  glib:get-type="gtk_text_window_type_get_type"
57066                  c:type="GtkTextWindowType">
57067       <member name="private"
57068               value="0"
57069               c:identifier="GTK_TEXT_WINDOW_PRIVATE"
57070               glib:nick="private"/>
57071       <member name="widget"
57072               value="1"
57073               c:identifier="GTK_TEXT_WINDOW_WIDGET"
57074               glib:nick="widget"/>
57075       <member name="text"
57076               value="2"
57077               c:identifier="GTK_TEXT_WINDOW_TEXT"
57078               glib:nick="text"/>
57079       <member name="left"
57080               value="3"
57081               c:identifier="GTK_TEXT_WINDOW_LEFT"
57082               glib:nick="left"/>
57083       <member name="right"
57084               value="4"
57085               c:identifier="GTK_TEXT_WINDOW_RIGHT"
57086               glib:nick="right"/>
57087       <member name="top"
57088               value="5"
57089               c:identifier="GTK_TEXT_WINDOW_TOP"
57090               glib:nick="top"/>
57091       <member name="bottom"
57092               value="6"
57093               c:identifier="GTK_TEXT_WINDOW_BOTTOM"
57094               glib:nick="bottom"/>
57095     </enumeration>
57096     <record name="ThemeEngine" c:type="GtkThemeEngine" disguised="1">
57097     </record>
57098     <class name="ToggleAction"
57099            c:symbol-prefix="toggle_action"
57100            c:type="GtkToggleAction"
57101            parent="Action"
57102            glib:type-name="GtkToggleAction"
57103            glib:get-type="gtk_toggle_action_get_type"
57104            glib:type-struct="ToggleActionClass">
57105       <implements name="Buildable"/>
57106       <constructor name="new"
57107                    c:identifier="gtk_toggle_action_new"
57108                    version="2.4">
57109         <doc xml:whitespace="preserve">Creates a new #GtkToggleAction object. To add the action to
57110 a #GtkActionGroup and set the accelerator for the action,
57111 call gtk_action_group_add_action_with_accel().</doc>
57112         <return-value transfer-ownership="full">
57113           <doc xml:whitespace="preserve">a new #GtkToggleAction</doc>
57114           <type name="ToggleAction" c:type="GtkToggleAction*"/>
57115         </return-value>
57116         <parameters>
57117           <parameter name="name" transfer-ownership="none">
57118             <doc xml:whitespace="preserve">A unique name for the action</doc>
57119             <type name="utf8" c:type="gchar*"/>
57120           </parameter>
57121           <parameter name="label" transfer-ownership="none" allow-none="1">
57122             <doc xml:whitespace="preserve">The label displayed in menu items and on buttons, or %NULL</doc>
57123             <type name="utf8" c:type="gchar*"/>
57124           </parameter>
57125           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
57126             <doc xml:whitespace="preserve">A tooltip for the action, or %NULL</doc>
57127             <type name="utf8" c:type="gchar*"/>
57128           </parameter>
57129           <parameter name="stock_id" transfer-ownership="none">
57130             <doc xml:whitespace="preserve">The stock icon to display in widgets representing the action, or %NULL</doc>
57131             <type name="utf8" c:type="gchar*"/>
57132           </parameter>
57133         </parameters>
57134       </constructor>
57135       <method name="get_active"
57136               c:identifier="gtk_toggle_action_get_active"
57137               version="2.4">
57138         <doc xml:whitespace="preserve">Returns the checked state of the toggle action.</doc>
57139         <return-value transfer-ownership="none">
57140           <doc xml:whitespace="preserve">the checked state of the toggle action</doc>
57141           <type name="gboolean" c:type="gboolean"/>
57142         </return-value>
57143       </method>
57144       <method name="get_draw_as_radio"
57145               c:identifier="gtk_toggle_action_get_draw_as_radio"
57146               version="2.4">
57147         <doc xml:whitespace="preserve">Returns whether the action should have proxies like a radio action.</doc>
57148         <return-value transfer-ownership="none">
57149           <doc xml:whitespace="preserve">whether the action should have proxies like a radio action.</doc>
57150           <type name="gboolean" c:type="gboolean"/>
57151         </return-value>
57152       </method>
57153       <method name="set_active"
57154               c:identifier="gtk_toggle_action_set_active"
57155               version="2.4">
57156         <doc xml:whitespace="preserve">Sets the checked state on the toggle action.</doc>
57157         <return-value transfer-ownership="none">
57158           <type name="none" c:type="void"/>
57159         </return-value>
57160         <parameters>
57161           <parameter name="is_active" transfer-ownership="none">
57162             <doc xml:whitespace="preserve">whether the action should be checked or not</doc>
57163             <type name="gboolean" c:type="gboolean"/>
57164           </parameter>
57165         </parameters>
57166       </method>
57167       <method name="set_draw_as_radio"
57168               c:identifier="gtk_toggle_action_set_draw_as_radio"
57169               version="2.4">
57170         <doc xml:whitespace="preserve">Sets whether the action should have proxies like a radio action.</doc>
57171         <return-value transfer-ownership="none">
57172           <type name="none" c:type="void"/>
57173         </return-value>
57174         <parameters>
57175           <parameter name="draw_as_radio" transfer-ownership="none">
57176             <doc xml:whitespace="preserve">whether the action should have proxies like a radio action</doc>
57177             <type name="gboolean" c:type="gboolean"/>
57178           </parameter>
57179         </parameters>
57180       </method>
57181       <method name="toggled"
57182               c:identifier="gtk_toggle_action_toggled"
57183               version="2.4">
57184         <doc xml:whitespace="preserve">Emits the "toggled" signal on the toggle action.</doc>
57185         <return-value transfer-ownership="none">
57186           <type name="none" c:type="void"/>
57187         </return-value>
57188       </method>
57189       <property name="active"
57190                 version="2.10"
57191                 writable="1"
57192                 transfer-ownership="none">
57193         <doc xml:whitespace="preserve">Whether the toggle action should be active.</doc>
57194         <type name="gboolean"/>
57195       </property>
57196       <property name="draw-as-radio" writable="1" transfer-ownership="none">
57197         <doc xml:whitespace="preserve">Whether the proxies for this action look like radio action proxies.
57198 This is an appearance property and thus only applies if 
57199 #GtkActivatable:use-action-appearance is %TRUE.</doc>
57200         <type name="gboolean"/>
57201       </property>
57202       <field name="parent">
57203         <type name="Action" c:type="GtkAction"/>
57204       </field>
57205       <field name="private_data">
57206         <type name="ToggleActionPrivate" c:type="GtkToggleActionPrivate*"/>
57207       </field>
57208       <glib:signal name="toggled">
57209         <doc xml:whitespace="preserve">Should be connected if you wish to perform an action
57210 whenever the #GtkToggleAction state is changed.</doc>
57211         <return-value transfer-ownership="none">
57212           <type name="none"/>
57213         </return-value>
57214       </glib:signal>
57215     </class>
57216     <record name="ToggleActionClass"
57217             c:type="GtkToggleActionClass"
57218             glib:is-gtype-struct-for="ToggleAction">
57219       <field name="parent_class">
57220         <type name="ActionClass" c:type="GtkActionClass"/>
57221       </field>
57222       <field name="toggled">
57223         <callback name="toggled">
57224           <return-value transfer-ownership="none">
57225             <type name="none" c:type="void"/>
57226           </return-value>
57227           <parameters>
57228             <parameter name="action" transfer-ownership="none">
57229               <type name="ToggleAction" c:type="GtkToggleAction*"/>
57230             </parameter>
57231           </parameters>
57232         </callback>
57233       </field>
57234       <field name="_gtk_reserved1" introspectable="0">
57235         <callback name="_gtk_reserved1">
57236           <return-value transfer-ownership="none">
57237             <type name="none" c:type="void"/>
57238           </return-value>
57239         </callback>
57240       </field>
57241       <field name="_gtk_reserved2" introspectable="0">
57242         <callback name="_gtk_reserved2">
57243           <return-value transfer-ownership="none">
57244             <type name="none" c:type="void"/>
57245           </return-value>
57246         </callback>
57247       </field>
57248       <field name="_gtk_reserved3" introspectable="0">
57249         <callback name="_gtk_reserved3">
57250           <return-value transfer-ownership="none">
57251             <type name="none" c:type="void"/>
57252           </return-value>
57253         </callback>
57254       </field>
57255       <field name="_gtk_reserved4" introspectable="0">
57256         <callback name="_gtk_reserved4">
57257           <return-value transfer-ownership="none">
57258             <type name="none" c:type="void"/>
57259           </return-value>
57260         </callback>
57261       </field>
57262     </record>
57263     <record name="ToggleActionEntry" c:type="GtkToggleActionEntry">
57264       <doc xml:whitespace="preserve">#GtkToggleActionEntry structs are used with
57265 gtk_action_group_add_toggle_actions() to construct toggle actions.</doc>
57266       <field name="name" writable="1">
57267         <type name="utf8" c:type="gchar*"/>
57268       </field>
57269       <field name="stock_id" writable="1">
57270         <type name="utf8" c:type="gchar*"/>
57271       </field>
57272       <field name="label" writable="1">
57273         <type name="utf8" c:type="gchar*"/>
57274       </field>
57275       <field name="accelerator" writable="1">
57276         <type name="utf8" c:type="gchar*"/>
57277       </field>
57278       <field name="tooltip" writable="1">
57279         <type name="utf8" c:type="gchar*"/>
57280       </field>
57281       <field name="callback" writable="1">
57282         <type name="GObject.Callback" c:type="GCallback"/>
57283       </field>
57284       <field name="is_active" writable="1">
57285         <type name="gboolean" c:type="gboolean"/>
57286       </field>
57287     </record>
57288     <record name="ToggleActionPrivate"
57289             c:type="GtkToggleActionPrivate"
57290             disguised="1">
57291     </record>
57292     <class name="ToggleButton"
57293            c:symbol-prefix="toggle_button"
57294            c:type="GtkToggleButton"
57295            parent="Button"
57296            glib:type-name="GtkToggleButton"
57297            glib:get-type="gtk_toggle_button_get_type"
57298            glib:type-struct="ToggleButtonClass">
57299       <implements name="Atk.ImplementorIface"/>
57300       <implements name="Activatable"/>
57301       <implements name="Buildable"/>
57302       <implements name="SizeRequest"/>
57303       <constructor name="new" c:identifier="gtk_toggle_button_new">
57304         <return-value transfer-ownership="none">
57305           <type name="Widget" c:type="GtkWidget*"/>
57306         </return-value>
57307       </constructor>
57308       <constructor name="new_with_label"
57309                    c:identifier="gtk_toggle_button_new_with_label">
57310         <return-value transfer-ownership="none">
57311           <type name="Widget" c:type="GtkWidget*"/>
57312         </return-value>
57313         <parameters>
57314           <parameter name="label" transfer-ownership="none">
57315             <type name="utf8" c:type="gchar*"/>
57316           </parameter>
57317         </parameters>
57318       </constructor>
57319       <constructor name="new_with_mnemonic"
57320                    c:identifier="gtk_toggle_button_new_with_mnemonic">
57321         <doc xml:whitespace="preserve">Creates a new #GtkToggleButton containing a label. The label
57322 will be created using gtk_label_new_with_mnemonic(), so underscores
57323 in @label indicate the mnemonic for the button.</doc>
57324         <return-value transfer-ownership="none">
57325           <doc xml:whitespace="preserve">a new #GtkToggleButton</doc>
57326           <type name="Widget" c:type="GtkWidget*"/>
57327         </return-value>
57328         <parameters>
57329           <parameter name="label" transfer-ownership="none">
57330             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
57331             <type name="utf8" c:type="gchar*"/>
57332           </parameter>
57333         </parameters>
57334       </constructor>
57335       <method name="get_active" c:identifier="gtk_toggle_button_get_active">
57336         <return-value transfer-ownership="none">
57337           <type name="gboolean" c:type="gboolean"/>
57338         </return-value>
57339       </method>
57340       <method name="get_inconsistent"
57341               c:identifier="gtk_toggle_button_get_inconsistent">
57342         <doc xml:whitespace="preserve">Gets the value set by gtk_toggle_button_set_inconsistent().</doc>
57343         <return-value transfer-ownership="none">
57344           <doc xml:whitespace="preserve">%TRUE if the button is displayed as inconsistent, %FALSE otherwise</doc>
57345           <type name="gboolean" c:type="gboolean"/>
57346         </return-value>
57347       </method>
57348       <method name="get_mode" c:identifier="gtk_toggle_button_get_mode">
57349         <doc xml:whitespace="preserve">Retrieves whether the button is displayed as a separate indicator
57350 and label. See gtk_toggle_button_set_mode().
57351 and label.</doc>
57352         <return-value transfer-ownership="none">
57353           <doc xml:whitespace="preserve">%TRUE if the togglebutton is drawn as a separate indicator</doc>
57354           <type name="gboolean" c:type="gboolean"/>
57355         </return-value>
57356       </method>
57357       <method name="set_active" c:identifier="gtk_toggle_button_set_active">
57358         <return-value transfer-ownership="none">
57359           <type name="none" c:type="void"/>
57360         </return-value>
57361         <parameters>
57362           <parameter name="is_active" transfer-ownership="none">
57363             <type name="gboolean" c:type="gboolean"/>
57364           </parameter>
57365         </parameters>
57366       </method>
57367       <method name="set_inconsistent"
57368               c:identifier="gtk_toggle_button_set_inconsistent">
57369         <doc xml:whitespace="preserve">If the user has selected a range of elements (such as some text or
57370 spreadsheet cells) that are affected by a toggle button, and the
57371 current values in that range are inconsistent, you may want to
57372 display the toggle in an "in between" state. This function turns on
57373 "in between" display.  Normally you would turn off the inconsistent
57374 state again if the user toggles the toggle button. This has to be
57375 done manually, gtk_toggle_button_set_inconsistent() only affects
57376 visual appearance, it doesn't affect the semantics of the button.</doc>
57377         <return-value transfer-ownership="none">
57378           <type name="none" c:type="void"/>
57379         </return-value>
57380         <parameters>
57381           <parameter name="setting" transfer-ownership="none">
57382             <doc xml:whitespace="preserve">%TRUE if state is inconsistent</doc>
57383             <type name="gboolean" c:type="gboolean"/>
57384           </parameter>
57385         </parameters>
57386       </method>
57387       <method name="set_mode" c:identifier="gtk_toggle_button_set_mode">
57388         <doc xml:whitespace="preserve">Sets whether the button is displayed as a separate indicator and label.
57389 You can call this function on a checkbutton or a radiobutton with
57390 This function only affects instances of classes like #GtkCheckButton
57391 and #GtkRadioButton that derive from #GtkToggleButton,
57392 not instances of #GtkToggleButton itself.</doc>
57393         <return-value transfer-ownership="none">
57394           <type name="none" c:type="void"/>
57395         </return-value>
57396         <parameters>
57397           <parameter name="draw_indicator" transfer-ownership="none">
57398             <doc xml:whitespace="preserve">if %TRUE, draw the button as a separate indicator and label; if %FALSE, draw the button like a normal button</doc>
57399             <type name="gboolean" c:type="gboolean"/>
57400           </parameter>
57401         </parameters>
57402       </method>
57403       <method name="toggled" c:identifier="gtk_toggle_button_toggled">
57404         <return-value transfer-ownership="none">
57405           <type name="none" c:type="void"/>
57406         </return-value>
57407       </method>
57408       <property name="active" writable="1" transfer-ownership="none">
57409         <type name="gboolean"/>
57410       </property>
57411       <property name="draw-indicator" writable="1" transfer-ownership="none">
57412         <type name="gboolean"/>
57413       </property>
57414       <property name="inconsistent" writable="1" transfer-ownership="none">
57415         <type name="gboolean"/>
57416       </property>
57417       <field name="button">
57418         <type name="Button" c:type="GtkButton"/>
57419       </field>
57420       <field name="active" bits="1">
57421         <type name="guint" c:type="guint"/>
57422       </field>
57423       <field name="draw_indicator" bits="1">
57424         <type name="guint" c:type="guint"/>
57425       </field>
57426       <field name="inconsistent" bits="1">
57427         <type name="guint" c:type="guint"/>
57428       </field>
57429       <glib:signal name="toggled">
57430         <return-value transfer-ownership="none">
57431           <type name="none"/>
57432         </return-value>
57433       </glib:signal>
57434     </class>
57435     <record name="ToggleButtonClass"
57436             c:type="GtkToggleButtonClass"
57437             glib:is-gtype-struct-for="ToggleButton">
57438       <field name="parent_class">
57439         <type name="ButtonClass" c:type="GtkButtonClass"/>
57440       </field>
57441       <field name="toggled">
57442         <callback name="toggled">
57443           <return-value transfer-ownership="none">
57444             <type name="none" c:type="void"/>
57445           </return-value>
57446           <parameters>
57447             <parameter name="toggle_button" transfer-ownership="none">
57448               <type name="ToggleButton" c:type="GtkToggleButton*"/>
57449             </parameter>
57450           </parameters>
57451         </callback>
57452       </field>
57453       <field name="_gtk_reserved1" introspectable="0">
57454         <callback name="_gtk_reserved1">
57455           <return-value transfer-ownership="none">
57456             <type name="none" c:type="void"/>
57457           </return-value>
57458         </callback>
57459       </field>
57460       <field name="_gtk_reserved2" introspectable="0">
57461         <callback name="_gtk_reserved2">
57462           <return-value transfer-ownership="none">
57463             <type name="none" c:type="void"/>
57464           </return-value>
57465         </callback>
57466       </field>
57467       <field name="_gtk_reserved3" introspectable="0">
57468         <callback name="_gtk_reserved3">
57469           <return-value transfer-ownership="none">
57470             <type name="none" c:type="void"/>
57471           </return-value>
57472         </callback>
57473       </field>
57474       <field name="_gtk_reserved4" introspectable="0">
57475         <callback name="_gtk_reserved4">
57476           <return-value transfer-ownership="none">
57477             <type name="none" c:type="void"/>
57478           </return-value>
57479         </callback>
57480       </field>
57481     </record>
57482     <class name="ToggleToolButton"
57483            c:symbol-prefix="toggle_tool_button"
57484            c:type="GtkToggleToolButton"
57485            parent="ToolButton"
57486            glib:type-name="GtkToggleToolButton"
57487            glib:get-type="gtk_toggle_tool_button_get_type"
57488            glib:type-struct="ToggleToolButtonClass">
57489       <implements name="Atk.ImplementorIface"/>
57490       <implements name="Activatable"/>
57491       <implements name="Buildable"/>
57492       <implements name="SizeRequest"/>
57493       <constructor name="new"
57494                    c:identifier="gtk_toggle_tool_button_new"
57495                    version="2.4">
57496         <doc xml:whitespace="preserve">Returns a new #GtkToggleToolButton</doc>
57497         <return-value transfer-ownership="none">
57498           <doc xml:whitespace="preserve">a newly created #GtkToggleToolButton</doc>
57499           <type name="ToolItem" c:type="GtkToolItem*"/>
57500         </return-value>
57501       </constructor>
57502       <constructor name="new_from_stock"
57503                    c:identifier="gtk_toggle_tool_button_new_from_stock"
57504                    version="2.4">
57505         <doc xml:whitespace="preserve">Creates a new #GtkToggleToolButton containing the image and text from a
57506 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK
57507 and #GTK_STOCK_APPLY.
57508 It is an error if @stock_id is not a name of a stock item.</doc>
57509         <return-value transfer-ownership="none">
57510           <doc xml:whitespace="preserve">A new #GtkToggleToolButton</doc>
57511           <type name="ToolItem" c:type="GtkToolItem*"/>
57512         </return-value>
57513         <parameters>
57514           <parameter name="stock_id" transfer-ownership="none">
57515             <doc xml:whitespace="preserve">the name of the stock item</doc>
57516             <type name="utf8" c:type="gchar*"/>
57517           </parameter>
57518         </parameters>
57519       </constructor>
57520       <method name="get_active"
57521               c:identifier="gtk_toggle_tool_button_get_active"
57522               version="2.4">
57523         <doc xml:whitespace="preserve">Queries a #GtkToggleToolButton and returns its current state.
57524 Returns %TRUE if the toggle button is pressed in and %FALSE if it is raised.</doc>
57525         <return-value transfer-ownership="none">
57526           <doc xml:whitespace="preserve">%TRUE if the toggle tool button is pressed in, %FALSE if not</doc>
57527           <type name="gboolean" c:type="gboolean"/>
57528         </return-value>
57529       </method>
57530       <method name="set_active"
57531               c:identifier="gtk_toggle_tool_button_set_active"
57532               version="2.4">
57533         <doc xml:whitespace="preserve">Sets the status of the toggle tool button. Set to %TRUE if you
57534 want the GtkToggleButton to be 'pressed in', and %FALSE to raise it.
57535 This action causes the toggled signal to be emitted.</doc>
57536         <return-value transfer-ownership="none">
57537           <type name="none" c:type="void"/>
57538         </return-value>
57539         <parameters>
57540           <parameter name="is_active" transfer-ownership="none">
57541             <doc xml:whitespace="preserve">whether @button should be active</doc>
57542             <type name="gboolean" c:type="gboolean"/>
57543           </parameter>
57544         </parameters>
57545       </method>
57546       <property name="active"
57547                 version="2.8"
57548                 writable="1"
57549                 transfer-ownership="none">
57550         <doc xml:whitespace="preserve">If the toggle tool button should be pressed in.</doc>
57551         <type name="gboolean"/>
57552       </property>
57553       <field name="parent">
57554         <type name="ToolButton" c:type="GtkToolButton"/>
57555       </field>
57556       <field name="priv">
57557         <type name="ToggleToolButtonPrivate"
57558               c:type="GtkToggleToolButtonPrivate*"/>
57559       </field>
57560       <glib:signal name="toggled">
57561         <doc xml:whitespace="preserve">Emitted whenever the toggle tool button changes state.</doc>
57562         <return-value transfer-ownership="none">
57563           <type name="none"/>
57564         </return-value>
57565       </glib:signal>
57566     </class>
57567     <record name="ToggleToolButtonClass"
57568             c:type="GtkToggleToolButtonClass"
57569             glib:is-gtype-struct-for="ToggleToolButton">
57570       <field name="parent_class">
57571         <type name="ToolButtonClass" c:type="GtkToolButtonClass"/>
57572       </field>
57573       <field name="toggled">
57574         <callback name="toggled">
57575           <return-value transfer-ownership="none">
57576             <type name="none" c:type="void"/>
57577           </return-value>
57578           <parameters>
57579             <parameter name="button" transfer-ownership="none">
57580               <type name="ToggleToolButton" c:type="GtkToggleToolButton*"/>
57581             </parameter>
57582           </parameters>
57583         </callback>
57584       </field>
57585       <field name="_gtk_reserved1" introspectable="0">
57586         <callback name="_gtk_reserved1">
57587           <return-value transfer-ownership="none">
57588             <type name="none" c:type="void"/>
57589           </return-value>
57590         </callback>
57591       </field>
57592       <field name="_gtk_reserved2" introspectable="0">
57593         <callback name="_gtk_reserved2">
57594           <return-value transfer-ownership="none">
57595             <type name="none" c:type="void"/>
57596           </return-value>
57597         </callback>
57598       </field>
57599       <field name="_gtk_reserved3" introspectable="0">
57600         <callback name="_gtk_reserved3">
57601           <return-value transfer-ownership="none">
57602             <type name="none" c:type="void"/>
57603           </return-value>
57604         </callback>
57605       </field>
57606       <field name="_gtk_reserved4" introspectable="0">
57607         <callback name="_gtk_reserved4">
57608           <return-value transfer-ownership="none">
57609             <type name="none" c:type="void"/>
57610           </return-value>
57611         </callback>
57612       </field>
57613     </record>
57614     <record name="ToggleToolButtonPrivate"
57615             c:type="GtkToggleToolButtonPrivate"
57616             disguised="1">
57617     </record>
57618     <class name="ToolButton"
57619            c:symbol-prefix="tool_button"
57620            c:type="GtkToolButton"
57621            parent="ToolItem"
57622            glib:type-name="GtkToolButton"
57623            glib:get-type="gtk_tool_button_get_type"
57624            glib:type-struct="ToolButtonClass">
57625       <implements name="Atk.ImplementorIface"/>
57626       <implements name="Activatable"/>
57627       <implements name="Buildable"/>
57628       <implements name="SizeRequest"/>
57629       <constructor name="new" c:identifier="gtk_tool_button_new" version="2.4">
57630         <doc xml:whitespace="preserve">Creates a new %GtkToolButton using @icon_widget as icon and @label as
57631 label.</doc>
57632         <return-value transfer-ownership="none">
57633           <doc xml:whitespace="preserve">A new #GtkToolButton</doc>
57634           <type name="ToolItem" c:type="GtkToolItem*"/>
57635         </return-value>
57636         <parameters>
57637           <parameter name="icon_widget"
57638                      transfer-ownership="none"
57639                      allow-none="1">
57640             <doc xml:whitespace="preserve">a #GtkMisc widget that will be used as icon widget, or %NULL</doc>
57641             <type name="Widget" c:type="GtkWidget*"/>
57642           </parameter>
57643           <parameter name="label" transfer-ownership="none" allow-none="1">
57644             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL</doc>
57645             <type name="utf8" c:type="gchar*"/>
57646           </parameter>
57647         </parameters>
57648       </constructor>
57649       <constructor name="new_from_stock"
57650                    c:identifier="gtk_tool_button_new_from_stock"
57651                    version="2.4">
57652         <doc xml:whitespace="preserve">Creates a new #GtkToolButton containing the image and text from a
57653 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK
57654 and #GTK_STOCK_APPLY.
57655 It is an error if @stock_id is not a name of a stock item.</doc>
57656         <return-value transfer-ownership="none">
57657           <doc xml:whitespace="preserve">A new #GtkToolButton</doc>
57658           <type name="ToolItem" c:type="GtkToolItem*"/>
57659         </return-value>
57660         <parameters>
57661           <parameter name="stock_id" transfer-ownership="none">
57662             <doc xml:whitespace="preserve">the name of the stock item</doc>
57663             <type name="utf8" c:type="gchar*"/>
57664           </parameter>
57665         </parameters>
57666       </constructor>
57667       <method name="get_icon_name"
57668               c:identifier="gtk_tool_button_get_icon_name">
57669         <return-value transfer-ownership="none">
57670           <type name="utf8" c:type="gchar*"/>
57671         </return-value>
57672       </method>
57673       <method name="get_icon_widget"
57674               c:identifier="gtk_tool_button_get_icon_widget"
57675               version="2.4">
57676         <doc xml:whitespace="preserve">Return the widget used as icon widget on @button.
57677 See gtk_tool_button_set_icon_widget().
57678 on @button, or %NULL.</doc>
57679         <return-value transfer-ownership="none">
57680           <doc xml:whitespace="preserve">The widget used as icon</doc>
57681           <type name="Widget" c:type="GtkWidget*"/>
57682         </return-value>
57683       </method>
57684       <method name="get_label"
57685               c:identifier="gtk_tool_button_get_label"
57686               version="2.4">
57687         <doc xml:whitespace="preserve">Returns the label used by the tool button, or %NULL if the tool button
57688 doesn't have a label. or uses a the label from a stock item. The returned
57689 string is owned by GTK+, and must not be modified or freed.</doc>
57690         <return-value transfer-ownership="none">
57691           <doc xml:whitespace="preserve">The label, or %NULL</doc>
57692           <type name="utf8" c:type="gchar*"/>
57693         </return-value>
57694       </method>
57695       <method name="get_label_widget"
57696               c:identifier="gtk_tool_button_get_label_widget"
57697               version="2.4">
57698         <doc xml:whitespace="preserve">Returns the widget used as label on @button.
57699 See gtk_tool_button_set_label_widget().
57700 on @button, or %NULL.</doc>
57701         <return-value transfer-ownership="none">
57702           <doc xml:whitespace="preserve">The widget used as label</doc>
57703           <type name="Widget" c:type="GtkWidget*"/>
57704         </return-value>
57705       </method>
57706       <method name="get_stock_id"
57707               c:identifier="gtk_tool_button_get_stock_id"
57708               version="2.4">
57709         <doc xml:whitespace="preserve">Returns the name of the stock item. See gtk_tool_button_set_stock_id().
57710 The returned string is owned by GTK+ and must not be freed or modifed.</doc>
57711         <return-value transfer-ownership="none">
57712           <doc xml:whitespace="preserve">the name of the stock item for @button.</doc>
57713           <type name="utf8" c:type="gchar*"/>
57714         </return-value>
57715       </method>
57716       <method name="get_use_underline"
57717               c:identifier="gtk_tool_button_get_use_underline"
57718               version="2.4">
57719         <doc xml:whitespace="preserve">Returns whether underscores in the label property are used as mnemonics
57720 on menu items on the overflow menu. See gtk_tool_button_set_use_underline().
57721 mnemonics on menu items on the overflow menu.</doc>
57722         <return-value transfer-ownership="none">
57723           <doc xml:whitespace="preserve">%TRUE if underscores in the label property are used as</doc>
57724           <type name="gboolean" c:type="gboolean"/>
57725         </return-value>
57726       </method>
57727       <method name="set_icon_name"
57728               c:identifier="gtk_tool_button_set_icon_name">
57729         <return-value transfer-ownership="none">
57730           <type name="none" c:type="void"/>
57731         </return-value>
57732         <parameters>
57733           <parameter name="icon_name" transfer-ownership="none">
57734             <type name="utf8" c:type="gchar*"/>
57735           </parameter>
57736         </parameters>
57737       </method>
57738       <method name="set_icon_widget"
57739               c:identifier="gtk_tool_button_set_icon_widget"
57740               version="2.4">
57741         <doc xml:whitespace="preserve">Sets @icon as the widget used as icon on @button. If @icon_widget is
57742 %NULL the icon is determined by the "stock_id" property. If the
57743 "stock_id" property is also %NULL, @button will not have an icon.</doc>
57744         <return-value transfer-ownership="none">
57745           <type name="none" c:type="void"/>
57746         </return-value>
57747         <parameters>
57748           <parameter name="icon_widget"
57749                      transfer-ownership="none"
57750                      allow-none="1">
57751             <doc xml:whitespace="preserve">the widget used as icon, or %NULL</doc>
57752             <type name="Widget" c:type="GtkWidget*"/>
57753           </parameter>
57754         </parameters>
57755       </method>
57756       <method name="set_label"
57757               c:identifier="gtk_tool_button_set_label"
57758               version="2.4">
57759         <doc xml:whitespace="preserve">Sets @label as the label used for the tool button. The "label" property
57760 only has an effect if not overridden by a non-%NULL "label_widget" property.
57761 If both the "label_widget" and "label" properties are %NULL, the label
57762 is determined by the "stock_id" property. If the "stock_id" property is also
57763 %NULL, @button will not have a label.</doc>
57764         <return-value transfer-ownership="none">
57765           <type name="none" c:type="void"/>
57766         </return-value>
57767         <parameters>
57768           <parameter name="label" transfer-ownership="none" allow-none="1">
57769             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL.</doc>
57770             <type name="utf8" c:type="gchar*"/>
57771           </parameter>
57772         </parameters>
57773       </method>
57774       <method name="set_label_widget"
57775               c:identifier="gtk_tool_button_set_label_widget"
57776               version="2.4">
57777         <doc xml:whitespace="preserve">Sets @label_widget as the widget that will be used as the label
57778 for @button. If @label_widget is %NULL the "label" property is used
57779 as label. If "label" is also %NULL, the label in the stock item
57780 determined by the "stock_id" property is used as label. If
57781 "stock_id" is also %NULL, @button does not have a label.</doc>
57782         <return-value transfer-ownership="none">
57783           <type name="none" c:type="void"/>
57784         </return-value>
57785         <parameters>
57786           <parameter name="label_widget"
57787                      transfer-ownership="none"
57788                      allow-none="1">
57789             <doc xml:whitespace="preserve">the widget used as label, or %NULL</doc>
57790             <type name="Widget" c:type="GtkWidget*"/>
57791           </parameter>
57792         </parameters>
57793       </method>
57794       <method name="set_stock_id"
57795               c:identifier="gtk_tool_button_set_stock_id"
57796               version="2.4">
57797         <doc xml:whitespace="preserve">Sets the name of the stock item. See gtk_tool_button_new_from_stock().
57798 The stock_id property only has an effect if not
57799 overridden by non-%NULL "label" and "icon_widget" properties.</doc>
57800         <return-value transfer-ownership="none">
57801           <type name="none" c:type="void"/>
57802         </return-value>
57803         <parameters>
57804           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
57805             <doc xml:whitespace="preserve">a name of a stock item, or %NULL</doc>
57806             <type name="utf8" c:type="gchar*"/>
57807           </parameter>
57808         </parameters>
57809       </method>
57810       <method name="set_use_underline"
57811               c:identifier="gtk_tool_button_set_use_underline"
57812               version="2.4">
57813         <doc xml:whitespace="preserve">If set, an underline in the label property indicates that the next character
57814 should be used for the mnemonic accelerator key in the overflow menu. For
57815 example, if the label property is "_Open" and @use_underline is %TRUE,
57816 the label on the tool button will be "Open" and the item on the overflow
57817 menu will have an underlined 'O'.
57818 Labels shown on tool buttons never have mnemonics on them; this property
57819 only affects the menu item on the overflow menu.</doc>
57820         <return-value transfer-ownership="none">
57821           <type name="none" c:type="void"/>
57822         </return-value>
57823         <parameters>
57824           <parameter name="use_underline" transfer-ownership="none">
57825             <doc xml:whitespace="preserve">whether the button label has the form "_Open"</doc>
57826             <type name="gboolean" c:type="gboolean"/>
57827           </parameter>
57828         </parameters>
57829       </method>
57830       <property name="icon-name"
57831                 version="2.8"
57832                 writable="1"
57833                 transfer-ownership="none">
57834         <doc xml:whitespace="preserve">The name of the themed icon displayed on the item.
57835 This property only has an effect if not overridden by "label", 
57836 "icon_widget" or "stock_id" properties.</doc>
57837         <type name="utf8"/>
57838       </property>
57839       <property name="icon-widget" writable="1" transfer-ownership="none">
57840         <type name="Widget"/>
57841       </property>
57842       <property name="label" writable="1" transfer-ownership="none">
57843         <type name="utf8"/>
57844       </property>
57845       <property name="label-widget" writable="1" transfer-ownership="none">
57846         <type name="Widget"/>
57847       </property>
57848       <property name="stock-id" writable="1" transfer-ownership="none">
57849         <type name="utf8"/>
57850       </property>
57851       <property name="use-underline" writable="1" transfer-ownership="none">
57852         <type name="gboolean"/>
57853       </property>
57854       <field name="parent">
57855         <type name="ToolItem" c:type="GtkToolItem"/>
57856       </field>
57857       <field name="priv">
57858         <type name="ToolButtonPrivate" c:type="GtkToolButtonPrivate*"/>
57859       </field>
57860       <glib:signal name="clicked">
57861         <doc xml:whitespace="preserve">This signal is emitted when the tool button is clicked with the mouse
57862 or activated with the keyboard.</doc>
57863         <return-value transfer-ownership="none">
57864           <type name="none"/>
57865         </return-value>
57866       </glib:signal>
57867     </class>
57868     <record name="ToolButtonClass"
57869             c:type="GtkToolButtonClass"
57870             glib:is-gtype-struct-for="ToolButton">
57871       <field name="parent_class">
57872         <type name="ToolItemClass" c:type="GtkToolItemClass"/>
57873       </field>
57874       <field name="button_type">
57875         <type name="GType" c:type="GType"/>
57876       </field>
57877       <field name="clicked">
57878         <callback name="clicked">
57879           <return-value transfer-ownership="none">
57880             <type name="none" c:type="void"/>
57881           </return-value>
57882           <parameters>
57883             <parameter name="tool_item" transfer-ownership="none">
57884               <type name="ToolButton" c:type="GtkToolButton*"/>
57885             </parameter>
57886           </parameters>
57887         </callback>
57888       </field>
57889       <field name="_gtk_reserved1" introspectable="0">
57890         <callback name="_gtk_reserved1">
57891           <return-value transfer-ownership="none">
57892             <type name="none" c:type="void"/>
57893           </return-value>
57894         </callback>
57895       </field>
57896       <field name="_gtk_reserved2" introspectable="0">
57897         <callback name="_gtk_reserved2">
57898           <return-value transfer-ownership="none">
57899             <type name="none" c:type="void"/>
57900           </return-value>
57901         </callback>
57902       </field>
57903       <field name="_gtk_reserved3" introspectable="0">
57904         <callback name="_gtk_reserved3">
57905           <return-value transfer-ownership="none">
57906             <type name="none" c:type="void"/>
57907           </return-value>
57908         </callback>
57909       </field>
57910       <field name="_gtk_reserved4" introspectable="0">
57911         <callback name="_gtk_reserved4">
57912           <return-value transfer-ownership="none">
57913             <type name="none" c:type="void"/>
57914           </return-value>
57915         </callback>
57916       </field>
57917     </record>
57918     <record name="ToolButtonPrivate"
57919             c:type="GtkToolButtonPrivate"
57920             disguised="1">
57921     </record>
57922     <class name="ToolItem"
57923            c:symbol-prefix="tool_item"
57924            c:type="GtkToolItem"
57925            parent="Bin"
57926            glib:type-name="GtkToolItem"
57927            glib:get-type="gtk_tool_item_get_type"
57928            glib:type-struct="ToolItemClass">
57929       <doc xml:whitespace="preserve">The GtkToolItem struct contains only private data.
57930 It should only be accessed through the functions described below.</doc>
57931       <implements name="Atk.ImplementorIface"/>
57932       <implements name="Activatable"/>
57933       <implements name="Buildable"/>
57934       <implements name="SizeRequest"/>
57935       <constructor name="new" c:identifier="gtk_tool_item_new" version="2.4">
57936         <doc xml:whitespace="preserve">Creates a new #GtkToolItem</doc>
57937         <return-value transfer-ownership="none">
57938           <doc xml:whitespace="preserve">the new #GtkToolItem</doc>
57939           <type name="ToolItem" c:type="GtkToolItem*"/>
57940         </return-value>
57941       </constructor>
57942       <method name="get_ellipsize_mode"
57943               c:identifier="gtk_tool_item_get_ellipsize_mode"
57944               version="2.20">
57945         <doc xml:whitespace="preserve">Returns the ellipsize mode used for @tool_item. Custom subclasses of
57946 #GtkToolItem should call this function to find out how text should
57947 be ellipsized.
57948 should be ellipsized.</doc>
57949         <return-value transfer-ownership="none">
57950           <doc xml:whitespace="preserve">a #PangoEllipsizeMode indicating how text in @tool_item</doc>
57951           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
57952         </return-value>
57953       </method>
57954       <method name="get_expand"
57955               c:identifier="gtk_tool_item_get_expand"
57956               version="2.4">
57957         <doc xml:whitespace="preserve">Returns whether @tool_item is allocated extra space.
57958 See gtk_tool_item_set_expand().</doc>
57959         <return-value transfer-ownership="none">
57960           <doc xml:whitespace="preserve">%TRUE if @tool_item is allocated extra space.</doc>
57961           <type name="gboolean" c:type="gboolean"/>
57962         </return-value>
57963       </method>
57964       <method name="get_homogeneous"
57965               c:identifier="gtk_tool_item_get_homogeneous"
57966               version="2.4">
57967         <doc xml:whitespace="preserve">Returns whether @tool_item is the same size as other homogeneous
57968 items. See gtk_tool_item_set_homogeneous().
57969 items.</doc>
57970         <return-value transfer-ownership="none">
57971           <doc xml:whitespace="preserve">%TRUE if the item is the same size as other homogeneous</doc>
57972           <type name="gboolean" c:type="gboolean"/>
57973         </return-value>
57974       </method>
57975       <method name="get_icon_size"
57976               c:identifier="gtk_tool_item_get_icon_size"
57977               version="2.4">
57978         <doc xml:whitespace="preserve">Returns the icon size used for @tool_item. Custom subclasses of
57979 #GtkToolItem should call this function to find out what size icons
57980 they should use.
57981 used for @tool_item</doc>
57982         <return-value transfer-ownership="none">
57983           <doc xml:whitespace="preserve">a #GtkIconSize indicating the icon size</doc>
57984           <type name="gint"/>
57985         </return-value>
57986       </method>
57987       <method name="get_is_important"
57988               c:identifier="gtk_tool_item_get_is_important"
57989               version="2.4">
57990         <doc xml:whitespace="preserve">Returns whether @tool_item is considered important. See
57991 gtk_tool_item_set_is_important()</doc>
57992         <return-value transfer-ownership="none">
57993           <doc xml:whitespace="preserve">%TRUE if @tool_item is considered important.</doc>
57994           <type name="gboolean" c:type="gboolean"/>
57995         </return-value>
57996       </method>
57997       <method name="get_orientation"
57998               c:identifier="gtk_tool_item_get_orientation"
57999               version="2.4">
58000         <doc xml:whitespace="preserve">Returns the orientation used for @tool_item. Custom subclasses of
58001 #GtkToolItem should call this function to find out what size icons
58002 they should use.
58003 used for @tool_item</doc>
58004         <return-value transfer-ownership="none">
58005           <doc xml:whitespace="preserve">a #GtkOrientation indicating the orientation</doc>
58006           <type name="Orientation" c:type="GtkOrientation"/>
58007         </return-value>
58008       </method>
58009       <method name="get_proxy_menu_item"
58010               c:identifier="gtk_tool_item_get_proxy_menu_item"
58011               version="2.4">
58012         <doc xml:whitespace="preserve">If @menu_item_id matches the string passed to
58013 gtk_tool_item_set_proxy_menu_item() return the corresponding #GtkMenuItem.
58014 Custom subclasses of #GtkToolItem should use this function to
58015 update their menu item when the #GtkToolItem changes. That the
58016 will not inadvertently change a menu item that they did not create.
58017 gtk_tool_item_set_proxy_menu_item(), if the @menu_item_id&lt;!-- --&gt;s
58018 match.</doc>
58019         <return-value transfer-ownership="none">
58020           <doc xml:whitespace="preserve">The #GtkMenuItem passed to</doc>
58021           <type name="Widget" c:type="GtkWidget*"/>
58022         </return-value>
58023         <parameters>
58024           <parameter name="menu_item_id" transfer-ownership="none">
58025             <doc xml:whitespace="preserve">a string used to identify the menu item</doc>
58026             <type name="utf8" c:type="gchar*"/>
58027           </parameter>
58028         </parameters>
58029       </method>
58030       <method name="get_relief_style"
58031               c:identifier="gtk_tool_item_get_relief_style"
58032               version="2.4">
58033         <doc xml:whitespace="preserve">Returns the relief style of @tool_item. See gtk_button_set_relief_style().
58034 Custom subclasses of #GtkToolItem should call this function in the handler
58035 of the #GtkToolItem::toolbar_reconfigured signal to find out the
58036 relief style of buttons.
58037 for @tool_item.</doc>
58038         <return-value transfer-ownership="none">
58039           <doc xml:whitespace="preserve">a #GtkReliefStyle indicating the relief style used</doc>
58040           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
58041         </return-value>
58042       </method>
58043       <method name="get_text_alignment"
58044               c:identifier="gtk_tool_item_get_text_alignment"
58045               version="2.20">
58046         <doc xml:whitespace="preserve">Returns the text alignment used for @tool_item. Custom subclasses of
58047 #GtkToolItem should call this function to find out how text should
58048 be aligned.
58049 used for @tool_item</doc>
58050         <return-value transfer-ownership="none">
58051           <doc xml:whitespace="preserve">a #gfloat indicating the horizontal text alignment</doc>
58052           <type name="gfloat" c:type="gfloat"/>
58053         </return-value>
58054       </method>
58055       <method name="get_text_orientation"
58056               c:identifier="gtk_tool_item_get_text_orientation"
58057               version="2.20">
58058         <doc xml:whitespace="preserve">Returns the text orientation used for @tool_item. Custom subclasses of
58059 #GtkToolItem should call this function to find out how text should
58060 be orientated.
58061 used for @tool_item</doc>
58062         <return-value transfer-ownership="none">
58063           <doc xml:whitespace="preserve">a #GtkOrientation indicating the text orientation</doc>
58064           <type name="Orientation" c:type="GtkOrientation"/>
58065         </return-value>
58066       </method>
58067       <method name="get_text_size_group"
58068               c:identifier="gtk_tool_item_get_text_size_group"
58069               version="2.20">
58070         <doc xml:whitespace="preserve">Returns the size group used for labels in @tool_item.
58071 Custom subclasses of #GtkToolItem should call this function
58072 and use the size group for labels.</doc>
58073         <return-value transfer-ownership="none">
58074           <doc xml:whitespace="preserve">a #GtkSizeGroup</doc>
58075           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
58076         </return-value>
58077       </method>
58078       <method name="get_toolbar_style"
58079               c:identifier="gtk_tool_item_get_toolbar_style"
58080               version="2.4">
58081         <doc xml:whitespace="preserve">Returns the toolbar style used for @tool_item. Custom subclasses of
58082 #GtkToolItem should call this function in the handler of the
58083 GtkToolItem::toolbar_reconfigured signal to find out in what style
58084 the toolbar is displayed and change themselves accordingly 
58085 Possibilities are:
58086 &lt;itemizedlist&gt;
58087 &lt;listitem&gt; GTK_TOOLBAR_BOTH, meaning the tool item should show
58088 both an icon and a label, stacked vertically &lt;/listitem&gt;
58089 &lt;listitem&gt; GTK_TOOLBAR_ICONS, meaning the toolbar shows
58090 only icons &lt;/listitem&gt;
58091 &lt;listitem&gt; GTK_TOOLBAR_TEXT, meaning the tool item should only
58092 show text&lt;/listitem&gt;
58093 &lt;listitem&gt; GTK_TOOLBAR_BOTH_HORIZ, meaning the tool item should show
58094 both an icon and a label, arranged horizontally (however, note the 
58095 #GtkToolButton::has_text_horizontally that makes tool buttons not
58096 show labels when the toolbar style is GTK_TOOLBAR_BOTH_HORIZ.
58097 &lt;/listitem&gt;
58098 &lt;/itemizedlist&gt;
58099 for @tool_item.</doc>
58100         <return-value transfer-ownership="none">
58101           <doc xml:whitespace="preserve">A #GtkToolbarStyle indicating the toolbar style used</doc>
58102           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
58103         </return-value>
58104       </method>
58105       <method name="get_use_drag_window"
58106               c:identifier="gtk_tool_item_get_use_drag_window"
58107               version="2.4">
58108         <doc xml:whitespace="preserve">Returns whether @tool_item has a drag window. See
58109 gtk_tool_item_set_use_drag_window().</doc>
58110         <return-value transfer-ownership="none">
58111           <doc xml:whitespace="preserve">%TRUE if @tool_item uses a drag window.</doc>
58112           <type name="gboolean" c:type="gboolean"/>
58113         </return-value>
58114       </method>
58115       <method name="get_visible_horizontal"
58116               c:identifier="gtk_tool_item_get_visible_horizontal"
58117               version="2.4">
58118         <doc xml:whitespace="preserve">Returns whether the @tool_item is visible on toolbars that are
58119 docked horizontally.
58120 docked horizontally.</doc>
58121         <return-value transfer-ownership="none">
58122           <doc xml:whitespace="preserve">%TRUE if @tool_item is visible on toolbars that are</doc>
58123           <type name="gboolean" c:type="gboolean"/>
58124         </return-value>
58125       </method>
58126       <method name="get_visible_vertical"
58127               c:identifier="gtk_tool_item_get_visible_vertical"
58128               version="2.4">
58129         <doc xml:whitespace="preserve">Returns whether @tool_item is visible when the toolbar is docked vertically.
58130 See gtk_tool_item_set_visible_vertical().</doc>
58131         <return-value transfer-ownership="none">
58132           <doc xml:whitespace="preserve">Whether @tool_item is visible when the toolbar is docked vertically</doc>
58133           <type name="gboolean" c:type="gboolean"/>
58134         </return-value>
58135       </method>
58136       <method name="rebuild_menu"
58137               c:identifier="gtk_tool_item_rebuild_menu"
58138               version="2.6">
58139         <doc xml:whitespace="preserve">Calling this function signals to the toolbar that the
58140 overflow menu item for @tool_item has changed. If the
58141 overflow menu is visible when this function it called,
58142 the menu will be rebuilt.
58143 The function must be called when the tool item changes what it
58144 will do in response to the #GtkToolItem::create-menu-proxy signal.</doc>
58145         <return-value transfer-ownership="none">
58146           <type name="none" c:type="void"/>
58147         </return-value>
58148       </method>
58149       <method name="retrieve_proxy_menu_item"
58150               c:identifier="gtk_tool_item_retrieve_proxy_menu_item"
58151               version="2.4">
58152         <doc xml:whitespace="preserve">Returns the #GtkMenuItem that was last set by
58153 gtk_tool_item_set_proxy_menu_item(), ie. the #GtkMenuItem
58154 that is going to appear in the overflow menu.
58155 overflow menu for @tool_item.</doc>
58156         <return-value transfer-ownership="none">
58157           <doc xml:whitespace="preserve">The #GtkMenuItem that is going to appear in the</doc>
58158           <type name="Widget" c:type="GtkWidget*"/>
58159         </return-value>
58160       </method>
58161       <method name="set_expand"
58162               c:identifier="gtk_tool_item_set_expand"
58163               version="2.4">
58164         <doc xml:whitespace="preserve">Sets whether @tool_item is allocated extra space when there
58165 is more room on the toolbar then needed for the items. The
58166 effect is that the item gets bigger when the toolbar gets bigger
58167 and smaller when the toolbar gets smaller.</doc>
58168         <return-value transfer-ownership="none">
58169           <type name="none" c:type="void"/>
58170         </return-value>
58171         <parameters>
58172           <parameter name="expand" transfer-ownership="none">
58173             <doc xml:whitespace="preserve">Whether @tool_item is allocated extra space</doc>
58174             <type name="gboolean" c:type="gboolean"/>
58175           </parameter>
58176         </parameters>
58177       </method>
58178       <method name="set_homogeneous"
58179               c:identifier="gtk_tool_item_set_homogeneous"
58180               version="2.4">
58181         <doc xml:whitespace="preserve">Sets whether @tool_item is to be allocated the same size as other
58182 homogeneous items. The effect is that all homogeneous items will have
58183 the same width as the widest of the items.</doc>
58184         <return-value transfer-ownership="none">
58185           <type name="none" c:type="void"/>
58186         </return-value>
58187         <parameters>
58188           <parameter name="homogeneous" transfer-ownership="none">
58189             <doc xml:whitespace="preserve">whether @tool_item is the same size as other homogeneous items</doc>
58190             <type name="gboolean" c:type="gboolean"/>
58191           </parameter>
58192         </parameters>
58193       </method>
58194       <method name="set_is_important"
58195               c:identifier="gtk_tool_item_set_is_important"
58196               version="2.4">
58197         <doc xml:whitespace="preserve">Sets whether @tool_item should be considered important. The #GtkToolButton
58198 class uses this property to determine whether to show or hide its label
58199 when the toolbar style is %GTK_TOOLBAR_BOTH_HORIZ. The result is that
58200 only tool buttons with the "is_important" property set have labels, an
58201 effect known as "priority text"</doc>
58202         <return-value transfer-ownership="none">
58203           <type name="none" c:type="void"/>
58204         </return-value>
58205         <parameters>
58206           <parameter name="is_important" transfer-ownership="none">
58207             <doc xml:whitespace="preserve">whether the tool item should be considered important</doc>
58208             <type name="gboolean" c:type="gboolean"/>
58209           </parameter>
58210         </parameters>
58211       </method>
58212       <method name="set_proxy_menu_item"
58213               c:identifier="gtk_tool_item_set_proxy_menu_item"
58214               version="2.4">
58215         <doc xml:whitespace="preserve">Sets the #GtkMenuItem used in the toolbar overflow menu. The
58216 should also be used with gtk_tool_item_get_proxy_menu_item().</doc>
58217         <return-value transfer-ownership="none">
58218           <type name="none" c:type="void"/>
58219         </return-value>
58220         <parameters>
58221           <parameter name="menu_item_id" transfer-ownership="none">
58222             <doc xml:whitespace="preserve">a string used to identify @menu_item</doc>
58223             <type name="utf8" c:type="gchar*"/>
58224           </parameter>
58225           <parameter name="menu_item" transfer-ownership="none">
58226             <doc xml:whitespace="preserve">a #GtkMenuItem to be used in the overflow menu</doc>
58227             <type name="Widget" c:type="GtkWidget*"/>
58228           </parameter>
58229         </parameters>
58230       </method>
58231       <method name="set_tooltip_markup"
58232               c:identifier="gtk_tool_item_set_tooltip_markup"
58233               version="2.12">
58234         <doc xml:whitespace="preserve">Sets the markup text to be displayed as tooltip on the item.
58235 See gtk_widget_set_tooltip_markup().</doc>
58236         <return-value transfer-ownership="none">
58237           <type name="none" c:type="void"/>
58238         </return-value>
58239         <parameters>
58240           <parameter name="markup" transfer-ownership="none">
58241             <doc xml:whitespace="preserve">markup text to be used as tooltip for @tool_item</doc>
58242             <type name="utf8" c:type="gchar*"/>
58243           </parameter>
58244         </parameters>
58245       </method>
58246       <method name="set_tooltip_text"
58247               c:identifier="gtk_tool_item_set_tooltip_text"
58248               version="2.12">
58249         <doc xml:whitespace="preserve">Sets the text to be displayed as tooltip on the item.
58250 See gtk_widget_set_tooltip_text().</doc>
58251         <return-value transfer-ownership="none">
58252           <type name="none" c:type="void"/>
58253         </return-value>
58254         <parameters>
58255           <parameter name="text" transfer-ownership="none">
58256             <doc xml:whitespace="preserve">text to be used as tooltip for @tool_item</doc>
58257             <type name="utf8" c:type="gchar*"/>
58258           </parameter>
58259         </parameters>
58260       </method>
58261       <method name="set_use_drag_window"
58262               c:identifier="gtk_tool_item_set_use_drag_window"
58263               version="2.4">
58264         <doc xml:whitespace="preserve">Sets whether @tool_item has a drag window. When %TRUE the
58265 toolitem can be used as a drag source through gtk_drag_source_set().
58266 When @tool_item has a drag window it will intercept all events,
58267 even those that would otherwise be sent to a child of @tool_item.</doc>
58268         <return-value transfer-ownership="none">
58269           <type name="none" c:type="void"/>
58270         </return-value>
58271         <parameters>
58272           <parameter name="use_drag_window" transfer-ownership="none">
58273             <doc xml:whitespace="preserve">Whether @tool_item has a drag window.</doc>
58274             <type name="gboolean" c:type="gboolean"/>
58275           </parameter>
58276         </parameters>
58277       </method>
58278       <method name="set_visible_horizontal"
58279               c:identifier="gtk_tool_item_set_visible_horizontal"
58280               version="2.4">
58281         <doc xml:whitespace="preserve">Sets whether @tool_item is visible when the toolbar is docked horizontally.</doc>
58282         <return-value transfer-ownership="none">
58283           <type name="none" c:type="void"/>
58284         </return-value>
58285         <parameters>
58286           <parameter name="visible_horizontal" transfer-ownership="none">
58287             <doc xml:whitespace="preserve">Whether @tool_item is visible when in horizontal mode</doc>
58288             <type name="gboolean" c:type="gboolean"/>
58289           </parameter>
58290         </parameters>
58291       </method>
58292       <method name="set_visible_vertical"
58293               c:identifier="gtk_tool_item_set_visible_vertical"
58294               version="2.4">
58295         <doc xml:whitespace="preserve">Sets whether @tool_item is visible when the toolbar is docked
58296 vertically. Some tool items, such as text entries, are too wide to be
58297 useful on a vertically docked toolbar. If @visible_vertical is %FALSE</doc>
58298         <return-value transfer-ownership="none">
58299           <type name="none" c:type="void"/>
58300         </return-value>
58301         <parameters>
58302           <parameter name="visible_vertical" transfer-ownership="none">
58303             <doc xml:whitespace="preserve">whether @tool_item is visible when the toolbar is in vertical mode</doc>
58304             <type name="gboolean" c:type="gboolean"/>
58305           </parameter>
58306         </parameters>
58307       </method>
58308       <method name="toolbar_reconfigured"
58309               c:identifier="gtk_tool_item_toolbar_reconfigured"
58310               version="2.14">
58311         <doc xml:whitespace="preserve">Emits the signal #GtkToolItem::toolbar_reconfigured on @tool_item.
58312 #GtkToolbar and other #GtkToolShell implementations use this function
58313 to notify children, when some aspect of their configuration changes.</doc>
58314         <return-value transfer-ownership="none">
58315           <type name="none" c:type="void"/>
58316         </return-value>
58317       </method>
58318       <property name="is-important" writable="1" transfer-ownership="none">
58319         <type name="gboolean"/>
58320       </property>
58321       <property name="visible-horizontal"
58322                 writable="1"
58323                 transfer-ownership="none">
58324         <type name="gboolean"/>
58325       </property>
58326       <property name="visible-vertical" writable="1" transfer-ownership="none">
58327         <type name="gboolean"/>
58328       </property>
58329       <field name="parent">
58330         <type name="Bin" c:type="GtkBin"/>
58331       </field>
58332       <field name="priv">
58333         <type name="ToolItemPrivate" c:type="GtkToolItemPrivate*"/>
58334       </field>
58335       <glib:signal name="create-menu-proxy">
58336         <doc xml:whitespace="preserve">This signal is emitted when the toolbar needs information from @tool_item
58337 about whether the item should appear in the toolbar overflow menu. In
58338 response the tool item should either
58339 &lt;itemizedlist&gt;
58340 &lt;listitem&gt;call gtk_tool_item_set_proxy_menu_item() with a %NULL
58341 pointer and return %TRUE to indicate that the item should not appear
58342 in the overflow menu
58343 &lt;/listitem&gt;
58344 &lt;listitem&gt; call gtk_tool_item_set_proxy_menu_item() with a new menu
58345 item and return %TRUE, or 
58346 &lt;/listitem&gt;
58347 &lt;listitem&gt; return %FALSE to indicate that the signal was not
58348 handled by the item. This means that
58349 the item will not appear in the overflow menu unless a later handler
58350 installs a menu item.
58351 &lt;/listitem&gt;
58352 &lt;/itemizedlist&gt;
58353 The toolbar may cache the result of this signal. When the tool item changes
58354 how it will respond to this signal it must call gtk_tool_item_rebuild_menu()
58355 to invalidate the cache and ensure that the toolbar rebuilds its overflow
58356 menu.</doc>
58357         <return-value transfer-ownership="none">
58358           <doc xml:whitespace="preserve">%TRUE if the signal was handled, %FALSE if not</doc>
58359           <type name="gboolean"/>
58360         </return-value>
58361       </glib:signal>
58362       <glib:signal name="toolbar-reconfigured">
58363         <doc xml:whitespace="preserve">This signal is emitted when some property of the toolbar that the
58364 item is a child of changes. For custom subclasses of #GtkToolItem,
58365 the default handler of this signal use the functions
58366 &lt;itemizedlist&gt;
58367 &lt;listitem&gt;gtk_tool_shell_get_orientation()&lt;/listitem&gt;
58368 &lt;listitem&gt;gtk_tool_shell_get_style()&lt;/listitem&gt;
58369 &lt;listitem&gt;gtk_tool_shell_get_icon_size()&lt;/listitem&gt;
58370 &lt;listitem&gt;gtk_tool_shell_get_relief_style()&lt;/listitem&gt;
58371 &lt;/itemizedlist&gt;
58372 to find out what the toolbar should look like and change
58373 themselves accordingly.</doc>
58374         <return-value transfer-ownership="none">
58375           <type name="none"/>
58376         </return-value>
58377       </glib:signal>
58378     </class>
58379     <record name="ToolItemClass"
58380             c:type="GtkToolItemClass"
58381             glib:is-gtype-struct-for="ToolItem">
58382       <field name="parent_class">
58383         <type name="BinClass" c:type="GtkBinClass"/>
58384       </field>
58385       <field name="create_menu_proxy">
58386         <callback name="create_menu_proxy">
58387           <return-value transfer-ownership="none">
58388             <type name="gboolean" c:type="gboolean"/>
58389           </return-value>
58390           <parameters>
58391             <parameter name="tool_item" transfer-ownership="none">
58392               <type name="ToolItem" c:type="GtkToolItem*"/>
58393             </parameter>
58394           </parameters>
58395         </callback>
58396       </field>
58397       <field name="toolbar_reconfigured">
58398         <callback name="toolbar_reconfigured">
58399           <return-value transfer-ownership="none">
58400             <type name="none" c:type="void"/>
58401           </return-value>
58402           <parameters>
58403             <parameter name="tool_item" transfer-ownership="none">
58404               <type name="ToolItem" c:type="GtkToolItem*"/>
58405             </parameter>
58406           </parameters>
58407         </callback>
58408       </field>
58409       <field name="_gtk_reserved1" introspectable="0">
58410         <callback name="_gtk_reserved1">
58411           <return-value transfer-ownership="none">
58412             <type name="none" c:type="void"/>
58413           </return-value>
58414         </callback>
58415       </field>
58416       <field name="_gtk_reserved2" introspectable="0">
58417         <callback name="_gtk_reserved2">
58418           <return-value transfer-ownership="none">
58419             <type name="none" c:type="void"/>
58420           </return-value>
58421         </callback>
58422       </field>
58423       <field name="_gtk_reserved3" introspectable="0">
58424         <callback name="_gtk_reserved3">
58425           <return-value transfer-ownership="none">
58426             <type name="none" c:type="void"/>
58427           </return-value>
58428         </callback>
58429       </field>
58430       <field name="_gtk_reserved4" introspectable="0">
58431         <callback name="_gtk_reserved4">
58432           <return-value transfer-ownership="none">
58433             <type name="none" c:type="void"/>
58434           </return-value>
58435         </callback>
58436       </field>
58437     </record>
58438     <class name="ToolItemGroup"
58439            c:symbol-prefix="tool_item_group"
58440            c:type="GtkToolItemGroup"
58441            parent="Container"
58442            glib:type-name="GtkToolItemGroup"
58443            glib:get-type="gtk_tool_item_group_get_type"
58444            glib:type-struct="ToolItemGroupClass">
58445       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
58446       <implements name="Atk.ImplementorIface"/>
58447       <implements name="Buildable"/>
58448       <implements name="SizeRequest"/>
58449       <implements name="ToolShell"/>
58450       <constructor name="new"
58451                    c:identifier="gtk_tool_item_group_new"
58452                    version="2.20">
58453         <doc xml:whitespace="preserve">Creates a new tool item group with label @label.</doc>
58454         <return-value transfer-ownership="none">
58455           <doc xml:whitespace="preserve">a new #GtkToolItemGroup.</doc>
58456           <type name="Widget" c:type="GtkWidget*"/>
58457         </return-value>
58458         <parameters>
58459           <parameter name="label" transfer-ownership="none">
58460             <doc xml:whitespace="preserve">the label of the new group</doc>
58461             <type name="utf8" c:type="gchar*"/>
58462           </parameter>
58463         </parameters>
58464       </constructor>
58465       <method name="get_collapsed"
58466               c:identifier="gtk_tool_item_group_get_collapsed"
58467               version="2.20">
58468         <doc xml:whitespace="preserve">Gets whether @group is collapsed or expanded.</doc>
58469         <return-value transfer-ownership="none">
58470           <doc xml:whitespace="preserve">%TRUE if @group is collapsed, %FALSE if it is expanded</doc>
58471           <type name="gboolean" c:type="gboolean"/>
58472         </return-value>
58473       </method>
58474       <method name="get_drop_item"
58475               c:identifier="gtk_tool_item_group_get_drop_item"
58476               version="2.20">
58477         <doc xml:whitespace="preserve">Gets the tool item at position (x, y).</doc>
58478         <return-value transfer-ownership="none">
58479           <doc xml:whitespace="preserve">the #GtkToolItem at position (x, y)</doc>
58480           <type name="ToolItem" c:type="GtkToolItem*"/>
58481         </return-value>
58482         <parameters>
58483           <parameter name="x" transfer-ownership="none">
58484             <doc xml:whitespace="preserve">the x position</doc>
58485             <type name="gint" c:type="gint"/>
58486           </parameter>
58487           <parameter name="y" transfer-ownership="none">
58488             <doc xml:whitespace="preserve">the y position</doc>
58489             <type name="gint" c:type="gint"/>
58490           </parameter>
58491         </parameters>
58492       </method>
58493       <method name="get_ellipsize"
58494               c:identifier="gtk_tool_item_group_get_ellipsize"
58495               version="2.20">
58496         <doc xml:whitespace="preserve">Gets the ellipsization mode of @group.</doc>
58497         <return-value transfer-ownership="none">
58498           <doc xml:whitespace="preserve">the #PangoEllipsizeMode of @group</doc>
58499           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
58500         </return-value>
58501       </method>
58502       <method name="get_header_relief"
58503               c:identifier="gtk_tool_item_group_get_header_relief"
58504               version="2.20">
58505         <doc xml:whitespace="preserve">Gets the relief mode of the header button of @group.</doc>
58506         <return-value transfer-ownership="none">
58507           <doc xml:whitespace="preserve">the #GtkReliefStyle</doc>
58508           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
58509         </return-value>
58510       </method>
58511       <method name="get_item_position"
58512               c:identifier="gtk_tool_item_group_get_item_position"
58513               version="2.20">
58514         <doc xml:whitespace="preserve">Gets the position of @item in @group as index.</doc>
58515         <return-value transfer-ownership="none">
58516           <doc xml:whitespace="preserve">the index of @item in @group or -1 if @item is no child of @group</doc>
58517           <type name="gint" c:type="gint"/>
58518         </return-value>
58519         <parameters>
58520           <parameter name="item" transfer-ownership="none">
58521             <doc xml:whitespace="preserve">a #GtkToolItem</doc>
58522             <type name="ToolItem" c:type="GtkToolItem*"/>
58523           </parameter>
58524         </parameters>
58525       </method>
58526       <method name="get_label"
58527               c:identifier="gtk_tool_item_group_get_label"
58528               version="2.20">
58529         <doc xml:whitespace="preserve">Gets the label of @group.
58530 and must not be modified. Note that %NULL is returned if a custom
58531 label has been set with gtk_tool_item_group_set_label_widget()</doc>
58532         <return-value transfer-ownership="none">
58533           <doc xml:whitespace="preserve">the label of @group. The label is an internal string of @group</doc>
58534           <type name="utf8" c:type="gchar*"/>
58535         </return-value>
58536       </method>
58537       <method name="get_label_widget"
58538               c:identifier="gtk_tool_item_group_get_label_widget"
58539               version="2.20">
58540         <doc xml:whitespace="preserve">Gets the label widget of @group.
58541 See gtk_tool_item_group_set_label_widget().</doc>
58542         <return-value transfer-ownership="none">
58543           <doc xml:whitespace="preserve">the label widget of @group</doc>
58544           <type name="Widget" c:type="GtkWidget*"/>
58545         </return-value>
58546       </method>
58547       <method name="get_n_items"
58548               c:identifier="gtk_tool_item_group_get_n_items"
58549               version="2.20">
58550         <doc xml:whitespace="preserve">Gets the number of tool items in @group.</doc>
58551         <return-value transfer-ownership="none">
58552           <doc xml:whitespace="preserve">the number of tool items in @group</doc>
58553           <type name="guint" c:type="guint"/>
58554         </return-value>
58555       </method>
58556       <method name="get_nth_item"
58557               c:identifier="gtk_tool_item_group_get_nth_item"
58558               version="2.20">
58559         <doc xml:whitespace="preserve">Gets the tool item at @index in group.</doc>
58560         <return-value transfer-ownership="none">
58561           <doc xml:whitespace="preserve">the #GtkToolItem at index</doc>
58562           <type name="ToolItem" c:type="GtkToolItem*"/>
58563         </return-value>
58564         <parameters>
58565           <parameter name="index" transfer-ownership="none">
58566             <doc xml:whitespace="preserve">the index</doc>
58567             <type name="guint" c:type="guint"/>
58568           </parameter>
58569         </parameters>
58570       </method>
58571       <method name="insert"
58572               c:identifier="gtk_tool_item_group_insert"
58573               version="2.20">
58574         <doc xml:whitespace="preserve">Inserts @item at @position in the list of children of @group.</doc>
58575         <return-value transfer-ownership="none">
58576           <type name="none" c:type="void"/>
58577         </return-value>
58578         <parameters>
58579           <parameter name="item" transfer-ownership="none">
58580             <doc xml:whitespace="preserve">the #GtkToolItem to insert into @group</doc>
58581             <type name="ToolItem" c:type="GtkToolItem*"/>
58582           </parameter>
58583           <parameter name="position" transfer-ownership="none">
58584             <doc xml:whitespace="preserve">the position of @item in @group, starting with 0. The position -1 means end of list.</doc>
58585             <type name="gint" c:type="gint"/>
58586           </parameter>
58587         </parameters>
58588       </method>
58589       <method name="set_collapsed"
58590               c:identifier="gtk_tool_item_group_set_collapsed"
58591               version="2.20">
58592         <doc xml:whitespace="preserve">Sets whether the @group should be collapsed or expanded.</doc>
58593         <return-value transfer-ownership="none">
58594           <type name="none" c:type="void"/>
58595         </return-value>
58596         <parameters>
58597           <parameter name="collapsed" transfer-ownership="none">
58598             <doc xml:whitespace="preserve">whether the @group should be collapsed or expanded</doc>
58599             <type name="gboolean" c:type="gboolean"/>
58600           </parameter>
58601         </parameters>
58602       </method>
58603       <method name="set_ellipsize"
58604               c:identifier="gtk_tool_item_group_set_ellipsize"
58605               version="2.20">
58606         <doc xml:whitespace="preserve">Sets the ellipsization mode which should be used by labels in @group.</doc>
58607         <return-value transfer-ownership="none">
58608           <type name="none" c:type="void"/>
58609         </return-value>
58610         <parameters>
58611           <parameter name="ellipsize" transfer-ownership="none">
58612             <doc xml:whitespace="preserve">the #PangoEllipsizeMode labels in @group should use</doc>
58613             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
58614           </parameter>
58615         </parameters>
58616       </method>
58617       <method name="set_header_relief"
58618               c:identifier="gtk_tool_item_group_set_header_relief"
58619               version="2.20">
58620         <doc xml:whitespace="preserve">Set the button relief of the group header.
58621 See gtk_button_set_relief() for details.</doc>
58622         <return-value transfer-ownership="none">
58623           <type name="none" c:type="void"/>
58624         </return-value>
58625         <parameters>
58626           <parameter name="style" transfer-ownership="none">
58627             <doc xml:whitespace="preserve">the #GtkReliefStyle</doc>
58628             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
58629           </parameter>
58630         </parameters>
58631       </method>
58632       <method name="set_item_position"
58633               c:identifier="gtk_tool_item_group_set_item_position"
58634               version="2.20">
58635         <doc xml:whitespace="preserve">Sets the position of @item in the list of children of @group.</doc>
58636         <return-value transfer-ownership="none">
58637           <type name="none" c:type="void"/>
58638         </return-value>
58639         <parameters>
58640           <parameter name="item" transfer-ownership="none">
58641             <doc xml:whitespace="preserve">the #GtkToolItem to move to a new position, should be a child of @group.</doc>
58642             <type name="ToolItem" c:type="GtkToolItem*"/>
58643           </parameter>
58644           <parameter name="position" transfer-ownership="none">
58645             <doc xml:whitespace="preserve">the new position of @item in @group, starting with 0. The position -1 means end of list.</doc>
58646             <type name="gint" c:type="gint"/>
58647           </parameter>
58648         </parameters>
58649       </method>
58650       <method name="set_label"
58651               c:identifier="gtk_tool_item_group_set_label"
58652               version="2.20">
58653         <doc xml:whitespace="preserve">Sets the label of the tool item group. The label is displayed in the header
58654 of the group.</doc>
58655         <return-value transfer-ownership="none">
58656           <type name="none" c:type="void"/>
58657         </return-value>
58658         <parameters>
58659           <parameter name="label" transfer-ownership="none">
58660             <doc xml:whitespace="preserve">the new human-readable label of of the group</doc>
58661             <type name="utf8" c:type="gchar*"/>
58662           </parameter>
58663         </parameters>
58664       </method>
58665       <method name="set_label_widget"
58666               c:identifier="gtk_tool_item_group_set_label_widget"
58667               version="2.20">
58668         <doc xml:whitespace="preserve">Sets the label of the tool item group.
58669 The label widget is displayed in the header of the group, in place
58670 of the usual label.</doc>
58671         <return-value transfer-ownership="none">
58672           <type name="none" c:type="void"/>
58673         </return-value>
58674         <parameters>
58675           <parameter name="label_widget" transfer-ownership="none">
58676             <doc xml:whitespace="preserve">the widget to be displayed in place of the usual label</doc>
58677             <type name="Widget" c:type="GtkWidget*"/>
58678           </parameter>
58679         </parameters>
58680       </method>
58681       <property name="collapsed" writable="1" transfer-ownership="none">
58682         <type name="gboolean"/>
58683       </property>
58684       <property name="ellipsize" writable="1" transfer-ownership="none">
58685         <type name="Pango.EllipsizeMode"/>
58686       </property>
58687       <property name="header-relief" writable="1" transfer-ownership="none">
58688         <type name="ReliefStyle"/>
58689       </property>
58690       <property name="label" writable="1" transfer-ownership="none">
58691         <type name="utf8"/>
58692       </property>
58693       <property name="label-widget" writable="1" transfer-ownership="none">
58694         <type name="Widget"/>
58695       </property>
58696       <field name="parent_instance">
58697         <type name="Container" c:type="GtkContainer"/>
58698       </field>
58699       <field name="priv">
58700         <type name="ToolItemGroupPrivate" c:type="GtkToolItemGroupPrivate*"/>
58701       </field>
58702     </class>
58703     <record name="ToolItemGroupClass"
58704             c:type="GtkToolItemGroupClass"
58705             glib:is-gtype-struct-for="ToolItemGroup">
58706       <field name="parent_class">
58707         <type name="ContainerClass" c:type="GtkContainerClass"/>
58708       </field>
58709     </record>
58710     <record name="ToolItemGroupPrivate"
58711             c:type="GtkToolItemGroupPrivate"
58712             disguised="1">
58713     </record>
58714     <record name="ToolItemPrivate" c:type="GtkToolItemPrivate" disguised="1">
58715     </record>
58716     <class name="ToolPalette"
58717            c:symbol-prefix="tool_palette"
58718            c:type="GtkToolPalette"
58719            parent="Container"
58720            glib:type-name="GtkToolPalette"
58721            glib:get-type="gtk_tool_palette_get_type"
58722            glib:type-struct="ToolPaletteClass">
58723       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
58724       <implements name="Atk.ImplementorIface"/>
58725       <implements name="Buildable"/>
58726       <implements name="Orientable"/>
58727       <implements name="SizeRequest"/>
58728       <constructor name="new"
58729                    c:identifier="gtk_tool_palette_new"
58730                    version="2.20">
58731         <doc xml:whitespace="preserve">Creates a new tool palette.</doc>
58732         <return-value transfer-ownership="none">
58733           <doc xml:whitespace="preserve">a new #GtkToolPalette</doc>
58734           <type name="Widget" c:type="GtkWidget*"/>
58735         </return-value>
58736       </constructor>
58737       <function name="get_drag_target_group"
58738                 c:identifier="gtk_tool_palette_get_drag_target_group"
58739                 version="2.20">
58740         <doc xml:whitespace="preserve">Get the target entry for a dragged #GtkToolItemGroup.</doc>
58741         <return-value transfer-ownership="none">
58742           <doc xml:whitespace="preserve">the #GtkTargetEntry for a dragged group</doc>
58743           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
58744         </return-value>
58745       </function>
58746       <function name="get_drag_target_item"
58747                 c:identifier="gtk_tool_palette_get_drag_target_item"
58748                 version="2.20">
58749         <doc xml:whitespace="preserve">Gets the target entry for a dragged #GtkToolItem.</doc>
58750         <return-value transfer-ownership="none">
58751           <doc xml:whitespace="preserve">the #GtkTargetEntry for a dragged item.</doc>
58752           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
58753         </return-value>
58754       </function>
58755       <method name="add_drag_dest"
58756               c:identifier="gtk_tool_palette_add_drag_dest"
58757               version="2.20">
58758         <doc xml:whitespace="preserve">Sets @palette as drag source (see gtk_tool_palette_set_drag_source())
58759 and sets @widget as a drag destination for drags from @palette.
58760 See gtk_drag_dest_set().</doc>
58761         <return-value transfer-ownership="none">
58762           <type name="none" c:type="void"/>
58763         </return-value>
58764         <parameters>
58765           <parameter name="widget" transfer-ownership="none">
58766             <doc xml:whitespace="preserve">a #GtkWidget which should be a drag destination for @palette</doc>
58767             <type name="Widget" c:type="GtkWidget*"/>
58768           </parameter>
58769           <parameter name="flags" transfer-ownership="none">
58770             <doc xml:whitespace="preserve">the flags that specify what actions GTK+ should take for drops on that widget</doc>
58771             <type name="DestDefaults" c:type="GtkDestDefaults"/>
58772           </parameter>
58773           <parameter name="targets" transfer-ownership="none">
58774             <doc xml:whitespace="preserve">the #GtkToolPaletteDragTarget&lt;!-- --&gt;s which the widget should support</doc>
58775             <type name="ToolPaletteDragTargets"
58776                   c:type="GtkToolPaletteDragTargets"/>
58777           </parameter>
58778           <parameter name="actions" transfer-ownership="none">
58779             <doc xml:whitespace="preserve">the #GdkDragAction&lt;!-- --&gt;s which the widget should suppport</doc>
58780             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
58781           </parameter>
58782         </parameters>
58783       </method>
58784       <method name="get_drag_item"
58785               c:identifier="gtk_tool_palette_get_drag_item"
58786               version="2.20">
58787         <doc xml:whitespace="preserve">Get the dragged item from the selection.
58788 This could be a #GtkToolItem or a #GtkToolItemGroup.</doc>
58789         <return-value transfer-ownership="none">
58790           <doc xml:whitespace="preserve">the dragged item in selection</doc>
58791           <type name="Widget" c:type="GtkWidget*"/>
58792         </return-value>
58793         <parameters>
58794           <parameter name="selection" transfer-ownership="none">
58795             <doc xml:whitespace="preserve">a #GtkSelectionData</doc>
58796             <type name="SelectionData" c:type="GtkSelectionData*"/>
58797           </parameter>
58798         </parameters>
58799       </method>
58800       <method name="get_drop_group"
58801               c:identifier="gtk_tool_palette_get_drop_group"
58802               version="2.20">
58803         <doc xml:whitespace="preserve">Gets the group at position (x, y).
58804 if there is no such group</doc>
58805         <return-value transfer-ownership="none">
58806           <doc xml:whitespace="preserve">the #GtkToolItemGroup at position or %NULL</doc>
58807           <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58808         </return-value>
58809         <parameters>
58810           <parameter name="x" transfer-ownership="none">
58811             <doc xml:whitespace="preserve">the x position</doc>
58812             <type name="gint" c:type="gint"/>
58813           </parameter>
58814           <parameter name="y" transfer-ownership="none">
58815             <doc xml:whitespace="preserve">the y position</doc>
58816             <type name="gint" c:type="gint"/>
58817           </parameter>
58818         </parameters>
58819       </method>
58820       <method name="get_drop_item"
58821               c:identifier="gtk_tool_palette_get_drop_item"
58822               version="2.20">
58823         <doc xml:whitespace="preserve">Gets the item at position (x, y).
58824 See gtk_tool_palette_get_drop_group().</doc>
58825         <return-value transfer-ownership="none">
58826           <doc xml:whitespace="preserve">the #GtkToolItem at position or %NULL if there is no such item</doc>
58827           <type name="ToolItem" c:type="GtkToolItem*"/>
58828         </return-value>
58829         <parameters>
58830           <parameter name="x" transfer-ownership="none">
58831             <doc xml:whitespace="preserve">the x position</doc>
58832             <type name="gint" c:type="gint"/>
58833           </parameter>
58834           <parameter name="y" transfer-ownership="none">
58835             <doc xml:whitespace="preserve">the y position</doc>
58836             <type name="gint" c:type="gint"/>
58837           </parameter>
58838         </parameters>
58839       </method>
58840       <method name="get_exclusive"
58841               c:identifier="gtk_tool_palette_get_exclusive"
58842               version="2.20">
58843         <doc xml:whitespace="preserve">Gets whether @group is exclusive or not.
58844 See gtk_tool_palette_set_exclusive().</doc>
58845         <return-value transfer-ownership="none">
58846           <doc xml:whitespace="preserve">%TRUE if @group is exclusive</doc>
58847           <type name="gboolean" c:type="gboolean"/>
58848         </return-value>
58849         <parameters>
58850           <parameter name="group" transfer-ownership="none">
58851             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
58852             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58853           </parameter>
58854         </parameters>
58855       </method>
58856       <method name="get_expand"
58857               c:identifier="gtk_tool_palette_get_expand"
58858               version="2.20">
58859         <doc xml:whitespace="preserve">Gets whether group should be given extra space.
58860 See gtk_tool_palette_set_expand().</doc>
58861         <return-value transfer-ownership="none">
58862           <doc xml:whitespace="preserve">%TRUE if group should be given extra space, %FALSE otherwise</doc>
58863           <type name="gboolean" c:type="gboolean"/>
58864         </return-value>
58865         <parameters>
58866           <parameter name="group" transfer-ownership="none">
58867             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
58868             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58869           </parameter>
58870         </parameters>
58871       </method>
58872       <method name="get_group_position"
58873               c:identifier="gtk_tool_palette_get_group_position"
58874               version="2.20">
58875         <doc xml:whitespace="preserve">Gets the position of @group in @palette as index.
58876 See gtk_tool_palette_set_group_position().</doc>
58877         <return-value transfer-ownership="none">
58878           <doc xml:whitespace="preserve">the index of group or -1 if @group is not a child of @palette</doc>
58879           <type name="gint" c:type="gint"/>
58880         </return-value>
58881         <parameters>
58882           <parameter name="group" transfer-ownership="none">
58883             <doc xml:whitespace="preserve">a #GtkToolItemGroup</doc>
58884             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58885           </parameter>
58886         </parameters>
58887       </method>
58888       <method name="get_hadjustment"
58889               c:identifier="gtk_tool_palette_get_hadjustment"
58890               version="2.20">
58891         <doc xml:whitespace="preserve">Gets the horizontal adjustment of the tool palette.</doc>
58892         <return-value transfer-ownership="none">
58893           <doc xml:whitespace="preserve">the horizontal adjustment of @palette</doc>
58894           <type name="Adjustment" c:type="GtkAdjustment*"/>
58895         </return-value>
58896       </method>
58897       <method name="get_icon_size"
58898               c:identifier="gtk_tool_palette_get_icon_size"
58899               version="2.20">
58900         <doc xml:whitespace="preserve">Gets the size of icons in the tool palette.
58901 See gtk_tool_palette_set_icon_size().</doc>
58902         <return-value transfer-ownership="none">
58903           <doc xml:whitespace="preserve">the #GtkIconSize of icons in the tool palette</doc>
58904           <type name="gint"/>
58905         </return-value>
58906       </method>
58907       <method name="get_style"
58908               c:identifier="gtk_tool_palette_get_style"
58909               version="2.20">
58910         <doc xml:whitespace="preserve">Gets the style (icons, text or both) of items in the tool palette.</doc>
58911         <return-value transfer-ownership="none">
58912           <doc xml:whitespace="preserve">the #GtkToolbarStyle of items in the tool palette.</doc>
58913           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
58914         </return-value>
58915       </method>
58916       <method name="get_vadjustment"
58917               c:identifier="gtk_tool_palette_get_vadjustment"
58918               version="2.20">
58919         <doc xml:whitespace="preserve">Gets the vertical adjustment of the tool palette.</doc>
58920         <return-value transfer-ownership="none">
58921           <doc xml:whitespace="preserve">the vertical adjustment of @palette</doc>
58922           <type name="Adjustment" c:type="GtkAdjustment*"/>
58923         </return-value>
58924       </method>
58925       <method name="set_drag_source"
58926               c:identifier="gtk_tool_palette_set_drag_source"
58927               version="2.20">
58928         <doc xml:whitespace="preserve">Sets the tool palette as a drag source.
58929 Enables all groups and items in the tool palette as drag sources
58930 on button 1 and button 3 press with copy and move actions.
58931 See gtk_drag_source_set().</doc>
58932         <return-value transfer-ownership="none">
58933           <type name="none" c:type="void"/>
58934         </return-value>
58935         <parameters>
58936           <parameter name="targets" transfer-ownership="none">
58937             <doc xml:whitespace="preserve">the #GtkToolPaletteDragTarget&lt;!-- --&gt;s which the widget should support</doc>
58938             <type name="ToolPaletteDragTargets"
58939                   c:type="GtkToolPaletteDragTargets"/>
58940           </parameter>
58941         </parameters>
58942       </method>
58943       <method name="set_exclusive"
58944               c:identifier="gtk_tool_palette_set_exclusive"
58945               version="2.20">
58946         <doc xml:whitespace="preserve">Sets whether the group should be exclusive or not.
58947 If an exclusive group is expanded all other groups are collapsed.</doc>
58948         <return-value transfer-ownership="none">
58949           <type name="none" c:type="void"/>
58950         </return-value>
58951         <parameters>
58952           <parameter name="group" transfer-ownership="none">
58953             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
58954             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58955           </parameter>
58956           <parameter name="exclusive" transfer-ownership="none">
58957             <doc xml:whitespace="preserve">whether the group should be exclusive or not</doc>
58958             <type name="gboolean" c:type="gboolean"/>
58959           </parameter>
58960         </parameters>
58961       </method>
58962       <method name="set_expand"
58963               c:identifier="gtk_tool_palette_set_expand"
58964               version="2.20">
58965         <doc xml:whitespace="preserve">Sets whether the group should be given extra space.</doc>
58966         <return-value transfer-ownership="none">
58967           <type name="none" c:type="void"/>
58968         </return-value>
58969         <parameters>
58970           <parameter name="group" transfer-ownership="none">
58971             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
58972             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58973           </parameter>
58974           <parameter name="expand" transfer-ownership="none">
58975             <doc xml:whitespace="preserve">whether the group should be given extra space</doc>
58976             <type name="gboolean" c:type="gboolean"/>
58977           </parameter>
58978         </parameters>
58979       </method>
58980       <method name="set_group_position"
58981               c:identifier="gtk_tool_palette_set_group_position"
58982               version="2.20">
58983         <doc xml:whitespace="preserve">Sets the position of the group as an index of the tool palette.
58984 If position is 0 the group will become the first child, if position is
58985 -1 it will become the last child.</doc>
58986         <return-value transfer-ownership="none">
58987           <type name="none" c:type="void"/>
58988         </return-value>
58989         <parameters>
58990           <parameter name="group" transfer-ownership="none">
58991             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
58992             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
58993           </parameter>
58994           <parameter name="position" transfer-ownership="none">
58995             <doc xml:whitespace="preserve">a new index for group</doc>
58996             <type name="gint" c:type="gint"/>
58997           </parameter>
58998         </parameters>
58999       </method>
59000       <method name="set_icon_size"
59001               c:identifier="gtk_tool_palette_set_icon_size"
59002               version="2.20">
59003         <doc xml:whitespace="preserve">Sets the size of icons in the tool palette.</doc>
59004         <return-value transfer-ownership="none">
59005           <type name="none" c:type="void"/>
59006         </return-value>
59007         <parameters>
59008           <parameter name="icon_size" transfer-ownership="none">
59009             <doc xml:whitespace="preserve">the #GtkIconSize that icons in the tool palette shall have</doc>
59010             <type name="gint"/>
59011           </parameter>
59012         </parameters>
59013       </method>
59014       <method name="set_style"
59015               c:identifier="gtk_tool_palette_set_style"
59016               version="2.20">
59017         <doc xml:whitespace="preserve">Sets the style (text, icons or both) of items in the tool palette.</doc>
59018         <return-value transfer-ownership="none">
59019           <type name="none" c:type="void"/>
59020         </return-value>
59021         <parameters>
59022           <parameter name="style" transfer-ownership="none">
59023             <doc xml:whitespace="preserve">the #GtkToolbarStyle that items in the tool palette shall have</doc>
59024             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59025           </parameter>
59026         </parameters>
59027       </method>
59028       <method name="unset_icon_size"
59029               c:identifier="gtk_tool_palette_unset_icon_size"
59030               version="2.20">
59031         <doc xml:whitespace="preserve">Unsets the tool palette icon size set with gtk_tool_palette_set_icon_size(),
59032 so that user preferences will be used to determine the icon size.</doc>
59033         <return-value transfer-ownership="none">
59034           <type name="none" c:type="void"/>
59035         </return-value>
59036       </method>
59037       <method name="unset_style"
59038               c:identifier="gtk_tool_palette_unset_style"
59039               version="2.20">
59040         <doc xml:whitespace="preserve">Unsets a toolbar style set with gtk_tool_palette_set_style(),
59041 so that user preferences will be used to determine the toolbar style.</doc>
59042         <return-value transfer-ownership="none">
59043           <type name="none" c:type="void"/>
59044         </return-value>
59045       </method>
59046       <property name="icon-size"
59047                 version="2.20"
59048                 writable="1"
59049                 transfer-ownership="none">
59050         <doc xml:whitespace="preserve">The size of the icons in a tool palette is normally determined by
59051 the #GtkSettings:toolbar-icon-size setting. When this property is set,
59052 it overrides the setting.
59053 This should only be used for special-purpose tool palettes, normal
59054 application tool palettes should respect the user preferences for the
59055 size of icons.</doc>
59056         <type name="IconSize"/>
59057       </property>
59058       <property name="icon-size-set"
59059                 version="2.20"
59060                 writable="1"
59061                 transfer-ownership="none">
59062         <doc xml:whitespace="preserve">Is %TRUE if the #GtkToolPalette:icon-size property has been set.</doc>
59063         <type name="gboolean"/>
59064       </property>
59065       <property name="toolbar-style"
59066                 version="2.20"
59067                 writable="1"
59068                 transfer-ownership="none">
59069         <doc xml:whitespace="preserve">The style of items in the tool palette.</doc>
59070         <type name="ToolbarStyle"/>
59071       </property>
59072       <field name="parent_instance">
59073         <type name="Container" c:type="GtkContainer"/>
59074       </field>
59075       <field name="priv">
59076         <type name="ToolPalettePrivate" c:type="GtkToolPalettePrivate*"/>
59077       </field>
59078       <glib:signal name="set-scroll-adjustments" version="2.20">
59079         <doc xml:whitespace="preserve">Set the scroll adjustments for the viewport.
59080 Usually scrolled containers like GtkScrolledWindow will emit this
59081 signal to connect two instances of GtkScrollbar to the scroll
59082 directions of the GtkToolpalette.</doc>
59083         <return-value transfer-ownership="none">
59084           <type name="none"/>
59085         </return-value>
59086         <parameters>
59087           <parameter name="object" transfer-ownership="none">
59088             <doc xml:whitespace="preserve">The horizontal adjustment</doc>
59089             <type name="Adjustment"/>
59090           </parameter>
59091           <parameter name="p0" transfer-ownership="none">
59092             <doc xml:whitespace="preserve">The vertical adjustment</doc>
59093             <type name="Adjustment"/>
59094           </parameter>
59095         </parameters>
59096       </glib:signal>
59097     </class>
59098     <record name="ToolPaletteClass"
59099             c:type="GtkToolPaletteClass"
59100             glib:is-gtype-struct-for="ToolPalette">
59101       <field name="parent_class">
59102         <type name="ContainerClass" c:type="GtkContainerClass"/>
59103       </field>
59104       <field name="set_scroll_adjustments">
59105         <callback name="set_scroll_adjustments">
59106           <return-value transfer-ownership="none">
59107             <type name="none" c:type="void"/>
59108           </return-value>
59109           <parameters>
59110             <parameter name="widget" transfer-ownership="none">
59111               <type name="Widget" c:type="GtkWidget*"/>
59112             </parameter>
59113             <parameter name="hadjustment" transfer-ownership="none">
59114               <type name="Adjustment" c:type="GtkAdjustment*"/>
59115             </parameter>
59116             <parameter name="vadjustment" transfer-ownership="none">
59117               <type name="Adjustment" c:type="GtkAdjustment*"/>
59118             </parameter>
59119           </parameters>
59120         </callback>
59121       </field>
59122       <field name="_gtk_reserved1" introspectable="0">
59123         <callback name="_gtk_reserved1">
59124           <return-value transfer-ownership="none">
59125             <type name="none" c:type="void"/>
59126           </return-value>
59127         </callback>
59128       </field>
59129       <field name="_gtk_reserved2" introspectable="0">
59130         <callback name="_gtk_reserved2">
59131           <return-value transfer-ownership="none">
59132             <type name="none" c:type="void"/>
59133           </return-value>
59134         </callback>
59135       </field>
59136       <field name="_gtk_reserved3" introspectable="0">
59137         <callback name="_gtk_reserved3">
59138           <return-value transfer-ownership="none">
59139             <type name="none" c:type="void"/>
59140           </return-value>
59141         </callback>
59142       </field>
59143       <field name="_gtk_reserved4" introspectable="0">
59144         <callback name="_gtk_reserved4">
59145           <return-value transfer-ownership="none">
59146             <type name="none" c:type="void"/>
59147           </return-value>
59148         </callback>
59149       </field>
59150       <field name="_gtk_reserved5" introspectable="0">
59151         <callback name="_gtk_reserved5">
59152           <return-value transfer-ownership="none">
59153             <type name="none" c:type="void"/>
59154           </return-value>
59155         </callback>
59156       </field>
59157       <field name="_gtk_reserved6" introspectable="0">
59158         <callback name="_gtk_reserved6">
59159           <return-value transfer-ownership="none">
59160             <type name="none" c:type="void"/>
59161           </return-value>
59162         </callback>
59163       </field>
59164     </record>
59165     <bitfield name="ToolPaletteDragTargets"
59166               glib:type-name="GtkToolPaletteDragTargets"
59167               glib:get-type="gtk_tool_palette_drag_targets_get_type"
59168               c:type="GtkToolPaletteDragTargets">
59169       <doc xml:whitespace="preserve">Flags used to specify the supported drag targets.</doc>
59170       <member name="items"
59171               value="1"
59172               c:identifier="GTK_TOOL_PALETTE_DRAG_ITEMS"
59173               glib:nick="items"/>
59174       <member name="groups"
59175               value="2"
59176               c:identifier="GTK_TOOL_PALETTE_DRAG_GROUPS"
59177               glib:nick="groups"/>
59178     </bitfield>
59179     <record name="ToolPalettePrivate"
59180             c:type="GtkToolPalettePrivate"
59181             disguised="1">
59182     </record>
59183     <interface name="ToolShell"
59184                c:symbol-prefix="tool_shell"
59185                c:type="GtkToolShell"
59186                glib:type-name="GtkToolShell"
59187                glib:get-type="gtk_tool_shell_get_type"
59188                glib:type-struct="ToolShellIface">
59189       <doc xml:whitespace="preserve">Dummy structure for accessing instances of #GtkToolShellIface.</doc>
59190       <prerequisite name="Widget"/>
59191       <virtual-method name="get_ellipsize_mode" invoker="get_ellipsize_mode">
59192         <return-value transfer-ownership="none">
59193           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
59194         </return-value>
59195       </virtual-method>
59196       <virtual-method name="get_icon_size">
59197         <return-value transfer-ownership="none">
59198           <type name="IconSize" c:type="GtkIconSize"/>
59199         </return-value>
59200       </virtual-method>
59201       <virtual-method name="get_orientation"
59202                       invoker="get_orientation"
59203                       version="2.14">
59204         <doc xml:whitespace="preserve">Retrieves the current orientation for the tool shell. Tool items must not
59205 call this function directly, but rely on gtk_tool_item_get_orientation()
59206 instead.</doc>
59207         <return-value transfer-ownership="none">
59208           <doc xml:whitespace="preserve">the current orientation of @shell</doc>
59209           <type name="Orientation" c:type="GtkOrientation"/>
59210         </return-value>
59211       </virtual-method>
59212       <virtual-method name="get_relief_style"
59213                       invoker="get_relief_style"
59214                       version="2.14">
59215         <doc xml:whitespace="preserve">Returns the relief style of buttons on @shell. Tool items must not call this
59216 function directly, but rely on gtk_tool_item_get_relief_style() instead.</doc>
59217         <return-value transfer-ownership="none">
59218           <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
59219           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
59220         </return-value>
59221       </virtual-method>
59222       <virtual-method name="get_style" invoker="get_style" version="2.14">
59223         <doc xml:whitespace="preserve">Retrieves whether the tool shell has text, icons, or both. Tool items must
59224 not call this function directly, but rely on gtk_tool_item_get_style()
59225 instead.</doc>
59226         <return-value transfer-ownership="none">
59227           <doc xml:whitespace="preserve">the current style of @shell</doc>
59228           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59229         </return-value>
59230       </virtual-method>
59231       <virtual-method name="get_text_alignment"
59232                       invoker="get_text_alignment"
59233                       version="2.20">
59234         <doc xml:whitespace="preserve">Retrieves the current text alignment for the tool shell. Tool items must not
59235 call this function directly, but rely on gtk_tool_item_get_text_alignment()
59236 instead.</doc>
59237         <return-value transfer-ownership="none">
59238           <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
59239           <type name="gfloat" c:type="gfloat"/>
59240         </return-value>
59241       </virtual-method>
59242       <virtual-method name="get_text_orientation"
59243                       invoker="get_text_orientation"
59244                       version="2.20">
59245         <doc xml:whitespace="preserve">Retrieves the current text orientation for the tool shell. Tool items must not
59246 call this function directly, but rely on gtk_tool_item_get_text_orientation()
59247 instead.</doc>
59248         <return-value transfer-ownership="none">
59249           <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
59250           <type name="Orientation" c:type="GtkOrientation"/>
59251         </return-value>
59252       </virtual-method>
59253       <virtual-method name="get_text_size_group"
59254                       invoker="get_text_size_group"
59255                       version="2.20">
59256         <doc xml:whitespace="preserve">Retrieves the current text size group for the tool shell. Tool items must not
59257 call this function directly, but rely on gtk_tool_item_get_text_size_group()
59258 instead.</doc>
59259         <return-value transfer-ownership="none">
59260           <doc xml:whitespace="preserve">the current text size group of @shell</doc>
59261           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
59262         </return-value>
59263       </virtual-method>
59264       <virtual-method name="rebuild_menu"
59265                       invoker="rebuild_menu"
59266                       version="2.14">
59267         <doc xml:whitespace="preserve">Calling this function signals the tool shell that the overflow menu item for
59268 tool items have changed. If there is an overflow menu and if it is visible
59269 when this function it called, the menu will be rebuilt.
59270 Tool items must not call this function directly, but rely on
59271 gtk_tool_item_rebuild_menu() instead.</doc>
59272         <return-value transfer-ownership="none">
59273           <type name="none" c:type="void"/>
59274         </return-value>
59275       </virtual-method>
59276       <method name="get_ellipsize_mode"
59277               c:identifier="gtk_tool_shell_get_ellipsize_mode">
59278         <return-value transfer-ownership="none">
59279           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
59280         </return-value>
59281       </method>
59282       <method name="get_icon_size"
59283               c:identifier="gtk_tool_shell_get_icon_size"
59284               version="2.14">
59285         <doc xml:whitespace="preserve">Retrieves the icon size for the tool shell. Tool items must not call this
59286 function directly, but rely on gtk_tool_item_get_icon_size() instead.</doc>
59287         <return-value transfer-ownership="none">
59288           <doc xml:whitespace="preserve">the current size for icons of @shell</doc>
59289           <type name="gint"/>
59290         </return-value>
59291       </method>
59292       <method name="get_orientation"
59293               c:identifier="gtk_tool_shell_get_orientation"
59294               version="2.14">
59295         <doc xml:whitespace="preserve">Retrieves the current orientation for the tool shell. Tool items must not
59296 call this function directly, but rely on gtk_tool_item_get_orientation()
59297 instead.</doc>
59298         <return-value transfer-ownership="none">
59299           <doc xml:whitespace="preserve">the current orientation of @shell</doc>
59300           <type name="Orientation" c:type="GtkOrientation"/>
59301         </return-value>
59302       </method>
59303       <method name="get_relief_style"
59304               c:identifier="gtk_tool_shell_get_relief_style"
59305               version="2.14">
59306         <doc xml:whitespace="preserve">Returns the relief style of buttons on @shell. Tool items must not call this
59307 function directly, but rely on gtk_tool_item_get_relief_style() instead.</doc>
59308         <return-value transfer-ownership="none">
59309           <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
59310           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
59311         </return-value>
59312       </method>
59313       <method name="get_style"
59314               c:identifier="gtk_tool_shell_get_style"
59315               version="2.14">
59316         <doc xml:whitespace="preserve">Retrieves whether the tool shell has text, icons, or both. Tool items must
59317 not call this function directly, but rely on gtk_tool_item_get_style()
59318 instead.</doc>
59319         <return-value transfer-ownership="none">
59320           <doc xml:whitespace="preserve">the current style of @shell</doc>
59321           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59322         </return-value>
59323       </method>
59324       <method name="get_text_alignment"
59325               c:identifier="gtk_tool_shell_get_text_alignment"
59326               version="2.20">
59327         <doc xml:whitespace="preserve">Retrieves the current text alignment for the tool shell. Tool items must not
59328 call this function directly, but rely on gtk_tool_item_get_text_alignment()
59329 instead.</doc>
59330         <return-value transfer-ownership="none">
59331           <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
59332           <type name="gfloat" c:type="gfloat"/>
59333         </return-value>
59334       </method>
59335       <method name="get_text_orientation"
59336               c:identifier="gtk_tool_shell_get_text_orientation"
59337               version="2.20">
59338         <doc xml:whitespace="preserve">Retrieves the current text orientation for the tool shell. Tool items must not
59339 call this function directly, but rely on gtk_tool_item_get_text_orientation()
59340 instead.</doc>
59341         <return-value transfer-ownership="none">
59342           <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
59343           <type name="Orientation" c:type="GtkOrientation"/>
59344         </return-value>
59345       </method>
59346       <method name="get_text_size_group"
59347               c:identifier="gtk_tool_shell_get_text_size_group"
59348               version="2.20">
59349         <doc xml:whitespace="preserve">Retrieves the current text size group for the tool shell. Tool items must not
59350 call this function directly, but rely on gtk_tool_item_get_text_size_group()
59351 instead.</doc>
59352         <return-value transfer-ownership="none">
59353           <doc xml:whitespace="preserve">the current text size group of @shell</doc>
59354           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
59355         </return-value>
59356       </method>
59357       <method name="rebuild_menu"
59358               c:identifier="gtk_tool_shell_rebuild_menu"
59359               version="2.14">
59360         <doc xml:whitespace="preserve">Calling this function signals the tool shell that the overflow menu item for
59361 tool items have changed. If there is an overflow menu and if it is visible
59362 when this function it called, the menu will be rebuilt.
59363 Tool items must not call this function directly, but rely on
59364 gtk_tool_item_rebuild_menu() instead.</doc>
59365         <return-value transfer-ownership="none">
59366           <type name="none" c:type="void"/>
59367         </return-value>
59368       </method>
59369     </interface>
59370     <record name="ToolShellIface"
59371             c:type="GtkToolShellIface"
59372             glib:is-gtype-struct-for="ToolShell">
59373       <doc xml:whitespace="preserve">Virtual function table for the #GtkToolShell interface.</doc>
59374       <field name="g_iface">
59375         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
59376       </field>
59377       <field name="get_icon_size">
59378         <callback name="get_icon_size">
59379           <return-value transfer-ownership="none">
59380             <type name="IconSize" c:type="GtkIconSize"/>
59381           </return-value>
59382           <parameters>
59383             <parameter name="shell" transfer-ownership="none">
59384               <type name="ToolShell" c:type="GtkToolShell*"/>
59385             </parameter>
59386           </parameters>
59387         </callback>
59388       </field>
59389       <field name="get_orientation">
59390         <callback name="get_orientation">
59391           <return-value transfer-ownership="none">
59392             <doc xml:whitespace="preserve">the current orientation of @shell</doc>
59393             <type name="Orientation" c:type="GtkOrientation"/>
59394           </return-value>
59395           <parameters>
59396             <parameter name="shell" transfer-ownership="none">
59397               <type name="ToolShell" c:type="GtkToolShell*"/>
59398             </parameter>
59399           </parameters>
59400         </callback>
59401       </field>
59402       <field name="get_style">
59403         <callback name="get_style">
59404           <return-value transfer-ownership="none">
59405             <doc xml:whitespace="preserve">the current style of @shell</doc>
59406             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59407           </return-value>
59408           <parameters>
59409             <parameter name="shell" transfer-ownership="none">
59410               <type name="ToolShell" c:type="GtkToolShell*"/>
59411             </parameter>
59412           </parameters>
59413         </callback>
59414       </field>
59415       <field name="get_relief_style">
59416         <callback name="get_relief_style">
59417           <return-value transfer-ownership="none">
59418             <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
59419             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
59420           </return-value>
59421           <parameters>
59422             <parameter name="shell" transfer-ownership="none">
59423               <type name="ToolShell" c:type="GtkToolShell*"/>
59424             </parameter>
59425           </parameters>
59426         </callback>
59427       </field>
59428       <field name="rebuild_menu">
59429         <callback name="rebuild_menu">
59430           <return-value transfer-ownership="none">
59431             <type name="none" c:type="void"/>
59432           </return-value>
59433           <parameters>
59434             <parameter name="shell" transfer-ownership="none">
59435               <type name="ToolShell" c:type="GtkToolShell*"/>
59436             </parameter>
59437           </parameters>
59438         </callback>
59439       </field>
59440       <field name="get_text_orientation">
59441         <callback name="get_text_orientation">
59442           <return-value transfer-ownership="none">
59443             <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
59444             <type name="Orientation" c:type="GtkOrientation"/>
59445           </return-value>
59446           <parameters>
59447             <parameter name="shell" transfer-ownership="none">
59448               <type name="ToolShell" c:type="GtkToolShell*"/>
59449             </parameter>
59450           </parameters>
59451         </callback>
59452       </field>
59453       <field name="get_text_alignment">
59454         <callback name="get_text_alignment">
59455           <return-value transfer-ownership="none">
59456             <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
59457             <type name="gfloat" c:type="gfloat"/>
59458           </return-value>
59459           <parameters>
59460             <parameter name="shell" transfer-ownership="none">
59461               <type name="ToolShell" c:type="GtkToolShell*"/>
59462             </parameter>
59463           </parameters>
59464         </callback>
59465       </field>
59466       <field name="get_ellipsize_mode">
59467         <callback name="get_ellipsize_mode">
59468           <return-value transfer-ownership="none">
59469             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
59470           </return-value>
59471           <parameters>
59472             <parameter name="shell" transfer-ownership="none">
59473               <type name="ToolShell" c:type="GtkToolShell*"/>
59474             </parameter>
59475           </parameters>
59476         </callback>
59477       </field>
59478       <field name="get_text_size_group">
59479         <callback name="get_text_size_group">
59480           <return-value transfer-ownership="none">
59481             <doc xml:whitespace="preserve">the current text size group of @shell</doc>
59482             <type name="SizeGroup" c:type="GtkSizeGroup*"/>
59483           </return-value>
59484           <parameters>
59485             <parameter name="shell" transfer-ownership="none">
59486               <type name="ToolShell" c:type="GtkToolShell*"/>
59487             </parameter>
59488           </parameters>
59489         </callback>
59490       </field>
59491     </record>
59492     <class name="Toolbar"
59493            c:symbol-prefix="toolbar"
59494            c:type="GtkToolbar"
59495            parent="Container"
59496            glib:type-name="GtkToolbar"
59497            glib:get-type="gtk_toolbar_get_type"
59498            glib:type-struct="ToolbarClass">
59499       <implements name="Atk.ImplementorIface"/>
59500       <implements name="Buildable"/>
59501       <implements name="Orientable"/>
59502       <implements name="SizeRequest"/>
59503       <implements name="ToolShell"/>
59504       <constructor name="new" c:identifier="gtk_toolbar_new">
59505         <doc xml:whitespace="preserve">Creates a new toolbar.</doc>
59506         <return-value transfer-ownership="none">
59507           <doc xml:whitespace="preserve">the newly-created toolbar.</doc>
59508           <type name="Widget" c:type="GtkWidget*"/>
59509         </return-value>
59510       </constructor>
59511       <method name="get_drop_index"
59512               c:identifier="gtk_toolbar_get_drop_index"
59513               version="2.4">
59514         <doc xml:whitespace="preserve">Returns the position corresponding to the indicated point on
59515 this function returns the position a new item should be
59516 inserted.</doc>
59517         <return-value transfer-ownership="none">
59518           <doc xml:whitespace="preserve">The position corresponding to the point (@x, @y) on the toolbar.</doc>
59519           <type name="gint" c:type="gint"/>
59520         </return-value>
59521         <parameters>
59522           <parameter name="x" transfer-ownership="none">
59523             <doc xml:whitespace="preserve">x coordinate of a point on the toolbar</doc>
59524             <type name="gint" c:type="gint"/>
59525           </parameter>
59526           <parameter name="y" transfer-ownership="none">
59527             <doc xml:whitespace="preserve">y coordinate of a point on the toolbar</doc>
59528             <type name="gint" c:type="gint"/>
59529           </parameter>
59530         </parameters>
59531       </method>
59532       <method name="get_icon_size" c:identifier="gtk_toolbar_get_icon_size">
59533         <doc xml:whitespace="preserve">Retrieves the icon size for the toolbar. See gtk_toolbar_set_icon_size().
59534 the toolbar.</doc>
59535         <return-value transfer-ownership="none">
59536           <doc xml:whitespace="preserve">the current icon size for the icons on</doc>
59537           <type name="gint"/>
59538         </return-value>
59539       </method>
59540       <method name="get_item_index"
59541               c:identifier="gtk_toolbar_get_item_index"
59542               version="2.4">
59543         <doc xml:whitespace="preserve">Returns the position of @item on the toolbar, starting from 0.
59544 It is an error if @item is not a child of the toolbar.</doc>
59545         <return-value transfer-ownership="none">
59546           <doc xml:whitespace="preserve">the position of item on the toolbar.</doc>
59547           <type name="gint" c:type="gint"/>
59548         </return-value>
59549         <parameters>
59550           <parameter name="item" transfer-ownership="none">
59551             <doc xml:whitespace="preserve">a #GtkToolItem that is a child of @toolbar</doc>
59552             <type name="ToolItem" c:type="GtkToolItem*"/>
59553           </parameter>
59554         </parameters>
59555       </method>
59556       <method name="get_n_items"
59557               c:identifier="gtk_toolbar_get_n_items"
59558               version="2.4">
59559         <doc xml:whitespace="preserve">Returns the number of items on the toolbar.</doc>
59560         <return-value transfer-ownership="none">
59561           <doc xml:whitespace="preserve">the number of items on the toolbar</doc>
59562           <type name="gint" c:type="gint"/>
59563         </return-value>
59564       </method>
59565       <method name="get_nth_item"
59566               c:identifier="gtk_toolbar_get_nth_item"
59567               version="2.4">
59568         <doc xml:whitespace="preserve">Returns the @n&lt;!-- --&gt;'th item on @toolbar, or %NULL if the
59569 toolbar does not contain an @n&lt;!-- --&gt;'th item.
59570 or %NULL if there isn't an @n&lt;!-- --&gt;'th item.</doc>
59571         <return-value transfer-ownership="none">
59572           <doc xml:whitespace="preserve">The @n&lt;!-- --&gt;'th #GtkToolItem on @toolbar,</doc>
59573           <type name="ToolItem" c:type="GtkToolItem*"/>
59574         </return-value>
59575         <parameters>
59576           <parameter name="n" transfer-ownership="none">
59577             <doc xml:whitespace="preserve">A position on the toolbar</doc>
59578             <type name="gint" c:type="gint"/>
59579           </parameter>
59580         </parameters>
59581       </method>
59582       <method name="get_relief_style"
59583               c:identifier="gtk_toolbar_get_relief_style"
59584               version="2.4">
59585         <doc xml:whitespace="preserve">Returns the relief style of buttons on @toolbar. See
59586 gtk_button_set_relief().</doc>
59587         <return-value transfer-ownership="none">
59588           <doc xml:whitespace="preserve">The relief style of buttons on @toolbar.</doc>
59589           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
59590         </return-value>
59591       </method>
59592       <method name="get_show_arrow"
59593               c:identifier="gtk_toolbar_get_show_arrow"
59594               version="2.4">
59595         <doc xml:whitespace="preserve">Returns whether the toolbar has an overflow menu.
59596 See gtk_toolbar_set_show_arrow().</doc>
59597         <return-value transfer-ownership="none">
59598           <doc xml:whitespace="preserve">%TRUE if the toolbar has an overflow menu.</doc>
59599           <type name="gboolean" c:type="gboolean"/>
59600         </return-value>
59601       </method>
59602       <method name="get_style" c:identifier="gtk_toolbar_get_style">
59603         <doc xml:whitespace="preserve">Retrieves whether the toolbar has text, icons, or both . See
59604 gtk_toolbar_set_style().</doc>
59605         <return-value transfer-ownership="none">
59606           <doc xml:whitespace="preserve">the current style of @toolbar</doc>
59607           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59608         </return-value>
59609       </method>
59610       <method name="insert" c:identifier="gtk_toolbar_insert" version="2.4">
59611         <doc xml:whitespace="preserve">Insert a #GtkToolItem into the toolbar at position @pos. If @pos is
59612 0 the item is prepended to the start of the toolbar. If @pos is
59613 negative, the item is appended to the end of the toolbar.</doc>
59614         <return-value transfer-ownership="none">
59615           <type name="none" c:type="void"/>
59616         </return-value>
59617         <parameters>
59618           <parameter name="item" transfer-ownership="none">
59619             <doc xml:whitespace="preserve">a #GtkToolItem</doc>
59620             <type name="ToolItem" c:type="GtkToolItem*"/>
59621           </parameter>
59622           <parameter name="pos" transfer-ownership="none">
59623             <doc xml:whitespace="preserve">the position of the new item</doc>
59624             <type name="gint" c:type="gint"/>
59625           </parameter>
59626         </parameters>
59627       </method>
59628       <method name="set_drop_highlight_item"
59629               c:identifier="gtk_toolbar_set_drop_highlight_item"
59630               version="2.4">
59631         <doc xml:whitespace="preserve">Highlights @toolbar to give an idea of what it would look like
59632 if @item was added to @toolbar at the position indicated by @index_.
59633 If @item is %NULL, highlighting is turned off. In that case @index_ 
59634 is ignored.
59635 The @tool_item passed to this function must not be part of any widget
59636 hierarchy. When an item is set as drop highlight item it can not
59637 added to any widget hierarchy or used as highlight item for another
59638 toolbar.</doc>
59639         <return-value transfer-ownership="none">
59640           <type name="none" c:type="void"/>
59641         </return-value>
59642         <parameters>
59643           <parameter name="tool_item" transfer-ownership="none" allow-none="1">
59644             <doc xml:whitespace="preserve">a #GtkToolItem, or %NULL to turn of highlighting</doc>
59645             <type name="ToolItem" c:type="GtkToolItem*"/>
59646           </parameter>
59647           <parameter name="index_" transfer-ownership="none">
59648             <doc xml:whitespace="preserve">a position on @toolbar</doc>
59649             <type name="gint" c:type="gint"/>
59650           </parameter>
59651         </parameters>
59652       </method>
59653       <method name="set_icon_size" c:identifier="gtk_toolbar_set_icon_size">
59654         <doc xml:whitespace="preserve">This function sets the size of stock icons in the toolbar. You
59655 can call it both before you add the icons and after they've been
59656 added. The size you set will override user preferences for the default
59657 icon size.
59658 This should only be used for special-purpose toolbars, normal
59659 application toolbars should respect the user preferences for the
59660 size of icons.</doc>
59661         <return-value transfer-ownership="none">
59662           <type name="none" c:type="void"/>
59663         </return-value>
59664         <parameters>
59665           <parameter name="icon_size" transfer-ownership="none">
59666             <doc xml:whitespace="preserve">The #GtkIconSize that stock icons in the toolbar shall have.</doc>
59667             <type name="gint"/>
59668           </parameter>
59669         </parameters>
59670       </method>
59671       <method name="set_show_arrow"
59672               c:identifier="gtk_toolbar_set_show_arrow"
59673               version="2.4">
59674         <doc xml:whitespace="preserve">Sets whether to show an overflow menu when
59675 items that there are not room are available through an
59676 overflow menu.</doc>
59677         <return-value transfer-ownership="none">
59678           <type name="none" c:type="void"/>
59679         </return-value>
59680         <parameters>
59681           <parameter name="show_arrow" transfer-ownership="none">
59682             <doc xml:whitespace="preserve">Whether to show an overflow menu</doc>
59683             <type name="gboolean" c:type="gboolean"/>
59684           </parameter>
59685         </parameters>
59686       </method>
59687       <method name="set_style" c:identifier="gtk_toolbar_set_style">
59688         <doc xml:whitespace="preserve">Alters the view of @toolbar to display either icons only, text only, or both.</doc>
59689         <return-value transfer-ownership="none">
59690           <type name="none" c:type="void"/>
59691         </return-value>
59692         <parameters>
59693           <parameter name="style" transfer-ownership="none">
59694             <doc xml:whitespace="preserve">the new style for @toolbar.</doc>
59695             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59696           </parameter>
59697         </parameters>
59698       </method>
59699       <method name="unset_icon_size"
59700               c:identifier="gtk_toolbar_unset_icon_size">
59701         <doc xml:whitespace="preserve">Unsets toolbar icon size set with gtk_toolbar_set_icon_size(), so that
59702 user preferences will be used to determine the icon size.</doc>
59703         <return-value transfer-ownership="none">
59704           <type name="none" c:type="void"/>
59705         </return-value>
59706       </method>
59707       <method name="unset_style" c:identifier="gtk_toolbar_unset_style">
59708         <doc xml:whitespace="preserve">Unsets a toolbar style set with gtk_toolbar_set_style(), so that
59709 user preferences will be used to determine the toolbar style.</doc>
59710         <return-value transfer-ownership="none">
59711           <type name="none" c:type="void"/>
59712         </return-value>
59713       </method>
59714       <property name="icon-size"
59715                 version="2.10"
59716                 writable="1"
59717                 transfer-ownership="none">
59718         <doc xml:whitespace="preserve">The size of the icons in a toolbar is normally determined by
59719 the toolbar-icon-size setting. When this property is set, it 
59720 overrides the setting. 
59721 This should only be used for special-purpose toolbars, normal
59722 application toolbars should respect the user preferences for the
59723 size of icons.</doc>
59724         <type name="gint"/>
59725       </property>
59726       <property name="icon-size-set"
59727                 version="2.10"
59728                 writable="1"
59729                 transfer-ownership="none">
59730         <doc xml:whitespace="preserve">Is %TRUE if the icon-size property has been set.</doc>
59731         <type name="gboolean"/>
59732       </property>
59733       <property name="show-arrow" writable="1" transfer-ownership="none">
59734         <type name="gboolean"/>
59735       </property>
59736       <property name="toolbar-style" writable="1" transfer-ownership="none">
59737         <type name="ToolbarStyle"/>
59738       </property>
59739       <field name="container">
59740         <type name="Container" c:type="GtkContainer"/>
59741       </field>
59742       <field name="priv">
59743         <type name="ToolbarPrivate" c:type="GtkToolbarPrivate*"/>
59744       </field>
59745       <glib:signal name="focus-home-or-end">
59746         <doc xml:whitespace="preserve">A keybinding signal used internally by GTK+. This signal can't
59747 be used in application code</doc>
59748         <return-value transfer-ownership="none">
59749           <doc xml:whitespace="preserve">%TRUE if the signal was handled, %FALSE if not</doc>
59750           <type name="gboolean"/>
59751         </return-value>
59752         <parameters>
59753           <parameter name="object" transfer-ownership="none">
59754             <doc xml:whitespace="preserve">%TRUE if the first item should be focused</doc>
59755             <type name="gboolean"/>
59756           </parameter>
59757         </parameters>
59758       </glib:signal>
59759       <glib:signal name="orientation-changed">
59760         <doc xml:whitespace="preserve">Emitted when the orientation of the toolbar changes.</doc>
59761         <return-value transfer-ownership="none">
59762           <type name="none"/>
59763         </return-value>
59764         <parameters>
59765           <parameter name="object" transfer-ownership="none">
59766             <doc xml:whitespace="preserve">the new #GtkOrientation of the toolbar</doc>
59767             <type name="Orientation"/>
59768           </parameter>
59769         </parameters>
59770       </glib:signal>
59771       <glib:signal name="popup-context-menu">
59772         <doc xml:whitespace="preserve">Emitted when the user right-clicks the toolbar or uses the
59773 keybinding to display a popup menu.
59774 Application developers should handle this signal if they want
59775 to display a context menu on the toolbar. The context-menu should
59776 appear at the coordinates given by @x and @y. The mouse button
59777 number is given by the @button parameter. If the menu was popped
59778 up using the keybaord, @button is -1.</doc>
59779         <return-value transfer-ownership="none">
59780           <doc xml:whitespace="preserve">return %TRUE if the signal was handled, %FALSE if not</doc>
59781           <type name="gboolean"/>
59782         </return-value>
59783         <parameters>
59784           <parameter name="object" transfer-ownership="none">
59785             <doc xml:whitespace="preserve">the x coordinate of the point where the menu should appear</doc>
59786             <type name="gint"/>
59787           </parameter>
59788           <parameter name="p0" transfer-ownership="none">
59789             <doc xml:whitespace="preserve">the y coordinate of the point where the menu should appear</doc>
59790             <type name="gint"/>
59791           </parameter>
59792           <parameter name="p1" transfer-ownership="none">
59793             <doc xml:whitespace="preserve">the mouse button the user pressed, or -1</doc>
59794             <type name="gint"/>
59795           </parameter>
59796         </parameters>
59797       </glib:signal>
59798       <glib:signal name="style-changed">
59799         <doc xml:whitespace="preserve">Emitted when the style of the toolbar changes.</doc>
59800         <return-value transfer-ownership="none">
59801           <type name="none"/>
59802         </return-value>
59803         <parameters>
59804           <parameter name="object" transfer-ownership="none">
59805             <doc xml:whitespace="preserve">the new #GtkToolbarStyle of the toolbar</doc>
59806             <type name="ToolbarStyle"/>
59807           </parameter>
59808         </parameters>
59809       </glib:signal>
59810     </class>
59811     <record name="ToolbarClass"
59812             c:type="GtkToolbarClass"
59813             glib:is-gtype-struct-for="Toolbar">
59814       <field name="parent_class">
59815         <type name="ContainerClass" c:type="GtkContainerClass"/>
59816       </field>
59817       <field name="orientation_changed">
59818         <callback name="orientation_changed">
59819           <return-value transfer-ownership="none">
59820             <type name="none" c:type="void"/>
59821           </return-value>
59822           <parameters>
59823             <parameter name="toolbar" transfer-ownership="none">
59824               <type name="Toolbar" c:type="GtkToolbar*"/>
59825             </parameter>
59826             <parameter name="orientation" transfer-ownership="none">
59827               <type name="Orientation" c:type="GtkOrientation"/>
59828             </parameter>
59829           </parameters>
59830         </callback>
59831       </field>
59832       <field name="style_changed">
59833         <callback name="style_changed">
59834           <return-value transfer-ownership="none">
59835             <type name="none" c:type="void"/>
59836           </return-value>
59837           <parameters>
59838             <parameter name="toolbar" transfer-ownership="none">
59839               <type name="Toolbar" c:type="GtkToolbar*"/>
59840             </parameter>
59841             <parameter name="style" transfer-ownership="none">
59842               <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
59843             </parameter>
59844           </parameters>
59845         </callback>
59846       </field>
59847       <field name="popup_context_menu">
59848         <callback name="popup_context_menu">
59849           <return-value transfer-ownership="none">
59850             <type name="gboolean" c:type="gboolean"/>
59851           </return-value>
59852           <parameters>
59853             <parameter name="toolbar" transfer-ownership="none">
59854               <type name="Toolbar" c:type="GtkToolbar*"/>
59855             </parameter>
59856             <parameter name="x" transfer-ownership="none">
59857               <type name="gint" c:type="gint"/>
59858             </parameter>
59859             <parameter name="y" transfer-ownership="none">
59860               <type name="gint" c:type="gint"/>
59861             </parameter>
59862             <parameter name="button_number" transfer-ownership="none">
59863               <type name="gint" c:type="gint"/>
59864             </parameter>
59865           </parameters>
59866         </callback>
59867       </field>
59868       <field name="_gtk_reserved1" introspectable="0">
59869         <callback name="_gtk_reserved1">
59870           <return-value transfer-ownership="none">
59871             <type name="none" c:type="void"/>
59872           </return-value>
59873         </callback>
59874       </field>
59875       <field name="_gtk_reserved2" introspectable="0">
59876         <callback name="_gtk_reserved2">
59877           <return-value transfer-ownership="none">
59878             <type name="none" c:type="void"/>
59879           </return-value>
59880         </callback>
59881       </field>
59882       <field name="_gtk_reserved3" introspectable="0">
59883         <callback name="_gtk_reserved3">
59884           <return-value transfer-ownership="none">
59885             <type name="none" c:type="void"/>
59886           </return-value>
59887         </callback>
59888       </field>
59889     </record>
59890     <record name="ToolbarPrivate" c:type="GtkToolbarPrivate" disguised="1">
59891     </record>
59892     <enumeration name="ToolbarSpaceStyle"
59893                  glib:type-name="GtkToolbarSpaceStyle"
59894                  glib:get-type="gtk_toolbar_space_style_get_type"
59895                  c:type="GtkToolbarSpaceStyle">
59896       <member name="empty"
59897               value="0"
59898               c:identifier="GTK_TOOLBAR_SPACE_EMPTY"
59899               glib:nick="empty"/>
59900       <member name="line"
59901               value="1"
59902               c:identifier="GTK_TOOLBAR_SPACE_LINE"
59903               glib:nick="line"/>
59904     </enumeration>
59905     <enumeration name="ToolbarStyle"
59906                  glib:type-name="GtkToolbarStyle"
59907                  glib:get-type="gtk_toolbar_style_get_type"
59908                  c:type="GtkToolbarStyle">
59909       <member name="icons"
59910               value="0"
59911               c:identifier="GTK_TOOLBAR_ICONS"
59912               glib:nick="icons"/>
59913       <member name="text"
59914               value="1"
59915               c:identifier="GTK_TOOLBAR_TEXT"
59916               glib:nick="text"/>
59917       <member name="both"
59918               value="2"
59919               c:identifier="GTK_TOOLBAR_BOTH"
59920               glib:nick="both"/>
59921       <member name="both_horiz"
59922               value="3"
59923               c:identifier="GTK_TOOLBAR_BOTH_HORIZ"
59924               glib:nick="both-horiz"/>
59925     </enumeration>
59926     <class name="Tooltip"
59927            c:symbol-prefix="tooltip"
59928            c:type="GtkTooltip"
59929            parent="GObject.Object"
59930            glib:type-name="GtkTooltip"
59931            glib:get-type="gtk_tooltip_get_type">
59932       <function name="trigger_tooltip_query"
59933                 c:identifier="gtk_tooltip_trigger_tooltip_query"
59934                 version="2.12">
59935         <doc xml:whitespace="preserve">Triggers a new tooltip query on @display, in order to update the current
59936 visible tooltip, or to show/hide the current tooltip.  This function is
59937 useful to call when, for example, the state of the widget changed by a
59938 key press.</doc>
59939         <return-value transfer-ownership="none">
59940           <type name="none" c:type="void"/>
59941         </return-value>
59942         <parameters>
59943           <parameter name="display" transfer-ownership="none">
59944             <doc xml:whitespace="preserve">a #GdkDisplay</doc>
59945             <type name="Gdk.Display" c:type="GdkDisplay*"/>
59946           </parameter>
59947         </parameters>
59948       </function>
59949       <method name="set_custom"
59950               c:identifier="gtk_tooltip_set_custom"
59951               version="2.12">
59952         <doc xml:whitespace="preserve">Replaces the widget packed into the tooltip with
59953 away.
59954 By default a box with a #GtkImage and #GtkLabel is embedded in 
59955 the tooltip, which can be configured using gtk_tooltip_set_markup() 
59956 and gtk_tooltip_set_icon().</doc>
59957         <return-value transfer-ownership="none">
59958           <type name="none" c:type="void"/>
59959         </return-value>
59960         <parameters>
59961           <parameter name="custom_widget"
59962                      transfer-ownership="none"
59963                      allow-none="1">
59964             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL to unset the old custom widget.</doc>
59965             <type name="Widget" c:type="GtkWidget*"/>
59966           </parameter>
59967         </parameters>
59968       </method>
59969       <method name="set_icon"
59970               c:identifier="gtk_tooltip_set_icon"
59971               version="2.12">
59972         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be</doc>
59973         <return-value transfer-ownership="none">
59974           <type name="none" c:type="void"/>
59975         </return-value>
59976         <parameters>
59977           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
59978             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
59979             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
59980           </parameter>
59981         </parameters>
59982       </method>
59983       <method name="set_icon_from_gicon"
59984               c:identifier="gtk_tooltip_set_icon_from_gicon"
59985               version="2.20">
59986         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text)
59987 to be the icon indicated by @gicon with the size indicated
59988 by @size. If @gicon is %NULL, the image will be hidden.</doc>
59989         <return-value transfer-ownership="none">
59990           <type name="none" c:type="void"/>
59991         </return-value>
59992         <parameters>
59993           <parameter name="gicon" transfer-ownership="none" allow-none="1">
59994             <doc xml:whitespace="preserve">a #GIcon representing the icon, or %NULL</doc>
59995             <type name="Gio.Icon" c:type="GIcon*"/>
59996           </parameter>
59997           <parameter name="size" transfer-ownership="none">
59998             <doc xml:whitespace="preserve">a stock icon size</doc>
59999             <type name="gint"/>
60000           </parameter>
60001         </parameters>
60002       </method>
60003       <method name="set_icon_from_icon_name"
60004               c:identifier="gtk_tooltip_set_icon_from_icon_name"
60005               version="2.14">
60006         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be
60007 the icon indicated by @icon_name with the size indicated
60008 by @size.  If @icon_name is %NULL, the image will be hidden.</doc>
60009         <return-value transfer-ownership="none">
60010           <type name="none" c:type="void"/>
60011         </return-value>
60012         <parameters>
60013           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
60014             <doc xml:whitespace="preserve">an icon name, or %NULL</doc>
60015             <type name="utf8" c:type="gchar*"/>
60016           </parameter>
60017           <parameter name="size" transfer-ownership="none">
60018             <doc xml:whitespace="preserve">a stock icon size</doc>
60019             <type name="gint"/>
60020           </parameter>
60021         </parameters>
60022       </method>
60023       <method name="set_icon_from_stock"
60024               c:identifier="gtk_tooltip_set_icon_from_stock"
60025               version="2.12">
60026         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be
60027 the stock item indicated by @stock_id with the size indicated
60028 by @size.  If @stock_id is %NULL, the image will be hidden.</doc>
60029         <return-value transfer-ownership="none">
60030           <type name="none" c:type="void"/>
60031         </return-value>
60032         <parameters>
60033           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
60034             <doc xml:whitespace="preserve">a stock id, or %NULL</doc>
60035             <type name="utf8" c:type="gchar*"/>
60036           </parameter>
60037           <parameter name="size" transfer-ownership="none">
60038             <doc xml:whitespace="preserve">a stock icon size</doc>
60039             <type name="gint"/>
60040           </parameter>
60041         </parameters>
60042       </method>
60043       <method name="set_markup"
60044               c:identifier="gtk_tooltip_set_markup"
60045               version="2.12">
60046         <doc xml:whitespace="preserve">Sets the text of the tooltip to be @markup, which is marked up
60047 with the &lt;link
60048 linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
60049 If @markup is %NULL, the label will be hidden.</doc>
60050         <return-value transfer-ownership="none">
60051           <type name="none" c:type="void"/>
60052         </return-value>
60053         <parameters>
60054           <parameter name="markup" transfer-ownership="none" allow-none="1">
60055             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;) or %NULL</doc>
60056             <type name="utf8" c:type="gchar*"/>
60057           </parameter>
60058         </parameters>
60059       </method>
60060       <method name="set_text"
60061               c:identifier="gtk_tooltip_set_text"
60062               version="2.12">
60063         <doc xml:whitespace="preserve">Sets the text of the tooltip to be @text. If @text is %NULL, the label
60064 will be hidden. See also gtk_tooltip_set_markup().</doc>
60065         <return-value transfer-ownership="none">
60066           <type name="none" c:type="void"/>
60067         </return-value>
60068         <parameters>
60069           <parameter name="text" transfer-ownership="none" allow-none="1">
60070             <doc xml:whitespace="preserve">a text string or %NULL</doc>
60071             <type name="utf8" c:type="gchar*"/>
60072           </parameter>
60073         </parameters>
60074       </method>
60075       <method name="set_tip_area"
60076               c:identifier="gtk_tooltip_set_tip_area"
60077               version="2.12">
60078         <doc xml:whitespace="preserve">Sets the area of the widget, where the contents of this tooltip apply,
60079 to be @rect (in widget coordinates).  This is especially useful for
60080 properly setting tooltips on #GtkTreeView rows and cells, #GtkIconViews,
60081 etc.
60082 For setting tooltips on #GtkTreeView, please refer to the convenience
60083 gtk_tree_view_set_tooltip_cell().</doc>
60084         <return-value transfer-ownership="none">
60085           <type name="none" c:type="void"/>
60086         </return-value>
60087         <parameters>
60088           <parameter name="rect" transfer-ownership="none">
60089             <doc xml:whitespace="preserve">a #GdkRectangle</doc>
60090             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
60091           </parameter>
60092         </parameters>
60093       </method>
60094     </class>
60095     <callback name="TranslateFunc" c:type="GtkTranslateFunc">
60096       <return-value transfer-ownership="full">
60097         <type name="utf8" c:type="gchar*"/>
60098       </return-value>
60099       <parameters>
60100         <parameter name="path" transfer-ownership="none">
60101           <type name="utf8" c:type="gchar*"/>
60102         </parameter>
60103         <parameter name="func_data" transfer-ownership="none">
60104           <type name="gpointer" c:type="gpointer"/>
60105         </parameter>
60106       </parameters>
60107     </callback>
60108     <callback name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc">
60109       <return-value transfer-ownership="none">
60110         <type name="none" c:type="void"/>
60111       </return-value>
60112       <parameters>
60113         <parameter name="tree_column" transfer-ownership="none">
60114           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
60115         </parameter>
60116         <parameter name="cell" transfer-ownership="none">
60117           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
60118         </parameter>
60119         <parameter name="tree_model" transfer-ownership="none">
60120           <type name="TreeModel" c:type="GtkTreeModel*"/>
60121         </parameter>
60122         <parameter name="iter" transfer-ownership="none">
60123           <type name="TreeIter" c:type="GtkTreeIter*"/>
60124         </parameter>
60125         <parameter name="data" transfer-ownership="none">
60126           <type name="gpointer" c:type="gpointer"/>
60127         </parameter>
60128       </parameters>
60129     </callback>
60130     <callback name="TreeDestroyCountFunc" c:type="GtkTreeDestroyCountFunc">
60131       <return-value transfer-ownership="none">
60132         <type name="none" c:type="void"/>
60133       </return-value>
60134       <parameters>
60135         <parameter name="tree_view" transfer-ownership="none">
60136           <type name="TreeView" c:type="GtkTreeView*"/>
60137         </parameter>
60138         <parameter name="path" transfer-ownership="none">
60139           <type name="TreePath" c:type="GtkTreePath*"/>
60140         </parameter>
60141         <parameter name="children" transfer-ownership="none">
60142           <type name="gint" c:type="gint"/>
60143         </parameter>
60144         <parameter name="user_data" transfer-ownership="none" closure="3">
60145           <type name="gpointer" c:type="gpointer"/>
60146         </parameter>
60147       </parameters>
60148     </callback>
60149     <interface name="TreeDragDest"
60150                c:symbol-prefix="tree_drag_dest"
60151                c:type="GtkTreeDragDest"
60152                glib:type-name="GtkTreeDragDest"
60153                glib:get-type="gtk_tree_drag_dest_get_type"
60154                glib:type-struct="TreeDragDestIface">
60155       <virtual-method name="drag_data_received" invoker="drag_data_received">
60156         <doc xml:whitespace="preserve">Asks the #GtkTreeDragDest to insert a row before the path @dest,
60157 deriving the contents of the row from @selection_data. If @dest is
60158 outside the tree so that inserting before it is impossible, %FALSE
60159 will be returned. Also, %FALSE may be returned if the new row is
60160 not created for some model-specific reason.  Should robustly handle
60161 a @dest no longer found in the model!</doc>
60162         <return-value transfer-ownership="none">
60163           <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
60164           <type name="gboolean" c:type="gboolean"/>
60165         </return-value>
60166         <parameters>
60167           <parameter name="dest" transfer-ownership="none">
60168             <doc xml:whitespace="preserve">row to drop in front of</doc>
60169             <type name="TreePath" c:type="GtkTreePath*"/>
60170           </parameter>
60171           <parameter name="selection_data" transfer-ownership="none">
60172             <doc xml:whitespace="preserve">data to drop</doc>
60173             <type name="SelectionData" c:type="GtkSelectionData*"/>
60174           </parameter>
60175         </parameters>
60176       </virtual-method>
60177       <virtual-method name="row_drop_possible" invoker="row_drop_possible">
60178         <doc xml:whitespace="preserve">Determines whether a drop is possible before the given @dest_path,
60179 at the same depth as @dest_path. i.e., can we drop the data in
60180 exist; the return value will almost certainly be %FALSE if the
60181 parent of @dest_path doesn't exist, though.</doc>
60182         <return-value transfer-ownership="none">
60183           <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
60184           <type name="gboolean" c:type="gboolean"/>
60185         </return-value>
60186         <parameters>
60187           <parameter name="dest_path" transfer-ownership="none">
60188             <doc xml:whitespace="preserve">destination row</doc>
60189             <type name="TreePath" c:type="GtkTreePath*"/>
60190           </parameter>
60191           <parameter name="selection_data" transfer-ownership="none">
60192             <doc xml:whitespace="preserve">the data being dragged</doc>
60193             <type name="SelectionData" c:type="GtkSelectionData*"/>
60194           </parameter>
60195         </parameters>
60196       </virtual-method>
60197       <method name="drag_data_received"
60198               c:identifier="gtk_tree_drag_dest_drag_data_received">
60199         <doc xml:whitespace="preserve">Asks the #GtkTreeDragDest to insert a row before the path @dest,
60200 deriving the contents of the row from @selection_data. If @dest is
60201 outside the tree so that inserting before it is impossible, %FALSE
60202 will be returned. Also, %FALSE may be returned if the new row is
60203 not created for some model-specific reason.  Should robustly handle
60204 a @dest no longer found in the model!</doc>
60205         <return-value transfer-ownership="none">
60206           <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
60207           <type name="gboolean" c:type="gboolean"/>
60208         </return-value>
60209         <parameters>
60210           <parameter name="dest" transfer-ownership="none">
60211             <doc xml:whitespace="preserve">row to drop in front of</doc>
60212             <type name="TreePath" c:type="GtkTreePath*"/>
60213           </parameter>
60214           <parameter name="selection_data" transfer-ownership="none">
60215             <doc xml:whitespace="preserve">data to drop</doc>
60216             <type name="SelectionData" c:type="GtkSelectionData*"/>
60217           </parameter>
60218         </parameters>
60219       </method>
60220       <method name="row_drop_possible"
60221               c:identifier="gtk_tree_drag_dest_row_drop_possible">
60222         <doc xml:whitespace="preserve">Determines whether a drop is possible before the given @dest_path,
60223 at the same depth as @dest_path. i.e., can we drop the data in
60224 exist; the return value will almost certainly be %FALSE if the
60225 parent of @dest_path doesn't exist, though.</doc>
60226         <return-value transfer-ownership="none">
60227           <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
60228           <type name="gboolean" c:type="gboolean"/>
60229         </return-value>
60230         <parameters>
60231           <parameter name="dest_path" transfer-ownership="none">
60232             <doc xml:whitespace="preserve">destination row</doc>
60233             <type name="TreePath" c:type="GtkTreePath*"/>
60234           </parameter>
60235           <parameter name="selection_data" transfer-ownership="none">
60236             <doc xml:whitespace="preserve">the data being dragged</doc>
60237             <type name="SelectionData" c:type="GtkSelectionData*"/>
60238           </parameter>
60239         </parameters>
60240       </method>
60241     </interface>
60242     <record name="TreeDragDestIface"
60243             c:type="GtkTreeDragDestIface"
60244             glib:is-gtype-struct-for="TreeDragDest">
60245       <field name="g_iface">
60246         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
60247       </field>
60248       <field name="drag_data_received">
60249         <callback name="drag_data_received">
60250           <return-value transfer-ownership="none">
60251             <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
60252             <type name="gboolean" c:type="gboolean"/>
60253           </return-value>
60254           <parameters>
60255             <parameter name="drag_dest" transfer-ownership="none">
60256               <type name="TreeDragDest" c:type="GtkTreeDragDest*"/>
60257             </parameter>
60258             <parameter name="dest" transfer-ownership="none">
60259               <doc xml:whitespace="preserve">row to drop in front of</doc>
60260               <type name="TreePath" c:type="GtkTreePath*"/>
60261             </parameter>
60262             <parameter name="selection_data" transfer-ownership="none">
60263               <doc xml:whitespace="preserve">data to drop</doc>
60264               <type name="SelectionData" c:type="GtkSelectionData*"/>
60265             </parameter>
60266           </parameters>
60267         </callback>
60268       </field>
60269       <field name="row_drop_possible">
60270         <callback name="row_drop_possible">
60271           <return-value transfer-ownership="none">
60272             <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
60273             <type name="gboolean" c:type="gboolean"/>
60274           </return-value>
60275           <parameters>
60276             <parameter name="drag_dest" transfer-ownership="none">
60277               <type name="TreeDragDest" c:type="GtkTreeDragDest*"/>
60278             </parameter>
60279             <parameter name="dest_path" transfer-ownership="none">
60280               <doc xml:whitespace="preserve">destination row</doc>
60281               <type name="TreePath" c:type="GtkTreePath*"/>
60282             </parameter>
60283             <parameter name="selection_data" transfer-ownership="none">
60284               <doc xml:whitespace="preserve">the data being dragged</doc>
60285               <type name="SelectionData" c:type="GtkSelectionData*"/>
60286             </parameter>
60287           </parameters>
60288         </callback>
60289       </field>
60290     </record>
60291     <interface name="TreeDragSource"
60292                c:symbol-prefix="tree_drag_source"
60293                c:type="GtkTreeDragSource"
60294                glib:type-name="GtkTreeDragSource"
60295                glib:get-type="gtk_tree_drag_source_get_type"
60296                glib:type-struct="TreeDragSourceIface">
60297       <virtual-method name="drag_data_delete" invoker="drag_data_delete">
60298         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to delete the row at @path, because
60299 it was moved somewhere else via drag-and-drop. Returns %FALSE
60300 if the deletion fails because @path no longer exists, or for
60301 some model-specific reason. Should robustly handle a @path no
60302 longer found in the model!</doc>
60303         <return-value transfer-ownership="none">
60304           <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
60305           <type name="gboolean" c:type="gboolean"/>
60306         </return-value>
60307         <parameters>
60308           <parameter name="path" transfer-ownership="none">
60309             <doc xml:whitespace="preserve">row that was being dragged</doc>
60310             <type name="TreePath" c:type="GtkTreePath*"/>
60311           </parameter>
60312         </parameters>
60313       </virtual-method>
60314       <virtual-method name="drag_data_get" invoker="drag_data_get">
60315         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to fill in @selection_data with a
60316 representation of the row at @path. @selection_data-&gt;target gives
60317 the required type of the data.  Should robustly handle a @path no
60318 longer found in the model!</doc>
60319         <return-value transfer-ownership="none">
60320           <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
60321           <type name="gboolean" c:type="gboolean"/>
60322         </return-value>
60323         <parameters>
60324           <parameter name="path" transfer-ownership="none">
60325             <doc xml:whitespace="preserve">row that was dragged</doc>
60326             <type name="TreePath" c:type="GtkTreePath*"/>
60327           </parameter>
60328           <parameter name="selection_data" transfer-ownership="none">
60329             <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
60330             <type name="SelectionData" c:type="GtkSelectionData*"/>
60331           </parameter>
60332         </parameters>
60333       </virtual-method>
60334       <virtual-method name="row_draggable" invoker="row_draggable">
60335         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource whether a particular row can be used as
60336 the source of a DND operation. If the source doesn't implement
60337 this interface, the row is assumed draggable.</doc>
60338         <return-value transfer-ownership="none">
60339           <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
60340           <type name="gboolean" c:type="gboolean"/>
60341         </return-value>
60342         <parameters>
60343           <parameter name="path" transfer-ownership="none">
60344             <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
60345             <type name="TreePath" c:type="GtkTreePath*"/>
60346           </parameter>
60347         </parameters>
60348       </virtual-method>
60349       <method name="drag_data_delete"
60350               c:identifier="gtk_tree_drag_source_drag_data_delete">
60351         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to delete the row at @path, because
60352 it was moved somewhere else via drag-and-drop. Returns %FALSE
60353 if the deletion fails because @path no longer exists, or for
60354 some model-specific reason. Should robustly handle a @path no
60355 longer found in the model!</doc>
60356         <return-value transfer-ownership="none">
60357           <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
60358           <type name="gboolean" c:type="gboolean"/>
60359         </return-value>
60360         <parameters>
60361           <parameter name="path" transfer-ownership="none">
60362             <doc xml:whitespace="preserve">row that was being dragged</doc>
60363             <type name="TreePath" c:type="GtkTreePath*"/>
60364           </parameter>
60365         </parameters>
60366       </method>
60367       <method name="drag_data_get"
60368               c:identifier="gtk_tree_drag_source_drag_data_get">
60369         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to fill in @selection_data with a
60370 representation of the row at @path. @selection_data-&gt;target gives
60371 the required type of the data.  Should robustly handle a @path no
60372 longer found in the model!</doc>
60373         <return-value transfer-ownership="none">
60374           <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
60375           <type name="gboolean" c:type="gboolean"/>
60376         </return-value>
60377         <parameters>
60378           <parameter name="path" transfer-ownership="none">
60379             <doc xml:whitespace="preserve">row that was dragged</doc>
60380             <type name="TreePath" c:type="GtkTreePath*"/>
60381           </parameter>
60382           <parameter name="selection_data" transfer-ownership="none">
60383             <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
60384             <type name="SelectionData" c:type="GtkSelectionData*"/>
60385           </parameter>
60386         </parameters>
60387       </method>
60388       <method name="row_draggable"
60389               c:identifier="gtk_tree_drag_source_row_draggable">
60390         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource whether a particular row can be used as
60391 the source of a DND operation. If the source doesn't implement
60392 this interface, the row is assumed draggable.</doc>
60393         <return-value transfer-ownership="none">
60394           <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
60395           <type name="gboolean" c:type="gboolean"/>
60396         </return-value>
60397         <parameters>
60398           <parameter name="path" transfer-ownership="none">
60399             <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
60400             <type name="TreePath" c:type="GtkTreePath*"/>
60401           </parameter>
60402         </parameters>
60403       </method>
60404     </interface>
60405     <record name="TreeDragSourceIface"
60406             c:type="GtkTreeDragSourceIface"
60407             glib:is-gtype-struct-for="TreeDragSource">
60408       <field name="g_iface">
60409         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
60410       </field>
60411       <field name="row_draggable">
60412         <callback name="row_draggable">
60413           <return-value transfer-ownership="none">
60414             <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
60415             <type name="gboolean" c:type="gboolean"/>
60416           </return-value>
60417           <parameters>
60418             <parameter name="drag_source" transfer-ownership="none">
60419               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
60420             </parameter>
60421             <parameter name="path" transfer-ownership="none">
60422               <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
60423               <type name="TreePath" c:type="GtkTreePath*"/>
60424             </parameter>
60425           </parameters>
60426         </callback>
60427       </field>
60428       <field name="drag_data_get">
60429         <callback name="drag_data_get">
60430           <return-value transfer-ownership="none">
60431             <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
60432             <type name="gboolean" c:type="gboolean"/>
60433           </return-value>
60434           <parameters>
60435             <parameter name="drag_source" transfer-ownership="none">
60436               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
60437             </parameter>
60438             <parameter name="path" transfer-ownership="none">
60439               <doc xml:whitespace="preserve">row that was dragged</doc>
60440               <type name="TreePath" c:type="GtkTreePath*"/>
60441             </parameter>
60442             <parameter name="selection_data" transfer-ownership="none">
60443               <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
60444               <type name="SelectionData" c:type="GtkSelectionData*"/>
60445             </parameter>
60446           </parameters>
60447         </callback>
60448       </field>
60449       <field name="drag_data_delete">
60450         <callback name="drag_data_delete">
60451           <return-value transfer-ownership="none">
60452             <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
60453             <type name="gboolean" c:type="gboolean"/>
60454           </return-value>
60455           <parameters>
60456             <parameter name="drag_source" transfer-ownership="none">
60457               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
60458             </parameter>
60459             <parameter name="path" transfer-ownership="none">
60460               <doc xml:whitespace="preserve">row that was being dragged</doc>
60461               <type name="TreePath" c:type="GtkTreePath*"/>
60462             </parameter>
60463           </parameters>
60464         </callback>
60465       </field>
60466     </record>
60467     <record name="TreeIter"
60468             c:type="GtkTreeIter"
60469             glib:type-name="GtkTreeIter"
60470             glib:get-type="gtk_tree_iter_get_type"
60471             c:symbol-prefix="tree_iter">
60472       <field name="stamp" writable="1">
60473         <type name="gint" c:type="gint"/>
60474       </field>
60475       <field name="user_data" writable="1">
60476         <type name="gpointer" c:type="gpointer"/>
60477       </field>
60478       <field name="user_data2" writable="1">
60479         <type name="gpointer" c:type="gpointer"/>
60480       </field>
60481       <field name="user_data3" writable="1">
60482         <type name="gpointer" c:type="gpointer"/>
60483       </field>
60484       <method name="copy" c:identifier="gtk_tree_iter_copy">
60485         <doc xml:whitespace="preserve">Creates a dynamically allocated tree iterator as a copy of @iter.  
60486 This function is not intended for use in applications, because you 
60487 can just copy the structs by value 
60488 (&lt;literal&gt;GtkTreeIter new_iter = iter;&lt;/literal&gt;).
60489 You must free this iter with gtk_tree_iter_free().</doc>
60490         <return-value transfer-ownership="full">
60491           <doc xml:whitespace="preserve">a newly-allocated copy of @iter.</doc>
60492           <type name="TreeIter" c:type="GtkTreeIter*"/>
60493         </return-value>
60494       </method>
60495       <method name="free" c:identifier="gtk_tree_iter_free">
60496         <doc xml:whitespace="preserve">Frees an iterator that has been allocated by gtk_tree_iter_copy().
60497 This function is mainly used for language bindings.</doc>
60498         <return-value transfer-ownership="none">
60499           <type name="none" c:type="void"/>
60500         </return-value>
60501       </method>
60502     </record>
60503     <callback name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc">
60504       <return-value transfer-ownership="none">
60505         <type name="gint" c:type="gint"/>
60506       </return-value>
60507       <parameters>
60508         <parameter name="model" transfer-ownership="none">
60509           <type name="TreeModel" c:type="GtkTreeModel*"/>
60510         </parameter>
60511         <parameter name="a" transfer-ownership="none">
60512           <type name="TreeIter" c:type="GtkTreeIter*"/>
60513         </parameter>
60514         <parameter name="b" transfer-ownership="none">
60515           <type name="TreeIter" c:type="GtkTreeIter*"/>
60516         </parameter>
60517         <parameter name="user_data" transfer-ownership="none" closure="3">
60518           <type name="gpointer" c:type="gpointer"/>
60519         </parameter>
60520       </parameters>
60521     </callback>
60522     <interface name="TreeModel"
60523                c:symbol-prefix="tree_model"
60524                c:type="GtkTreeModel"
60525                glib:type-name="GtkTreeModel"
60526                glib:get-type="gtk_tree_model_get_type"
60527                glib:type-struct="TreeModelIface">
60528       <virtual-method name="get_column_type" invoker="get_column_type">
60529         <doc xml:whitespace="preserve">Returns the type of the column.</doc>
60530         <return-value transfer-ownership="none">
60531           <doc xml:whitespace="preserve">The type of the column.</doc>
60532           <type name="GType" c:type="GType"/>
60533         </return-value>
60534         <parameters>
60535           <parameter name="index_" transfer-ownership="none">
60536             <doc xml:whitespace="preserve">The column index.</doc>
60537             <type name="gint" c:type="gint"/>
60538           </parameter>
60539         </parameters>
60540       </virtual-method>
60541       <virtual-method name="get_flags" invoker="get_flags">
60542         <doc xml:whitespace="preserve">Returns a set of flags supported by this interface.  The flags are a bitwise
60543 combination of #GtkTreeModelFlags.  The flags supported should not change
60544 during the lifecycle of the @tree_model.</doc>
60545         <return-value transfer-ownership="none">
60546           <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
60547           <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
60548         </return-value>
60549       </virtual-method>
60550       <virtual-method name="get_iter" invoker="get_iter">
60551         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path.</doc>
60552         <return-value transfer-ownership="none">
60553           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
60554           <type name="gboolean" c:type="gboolean"/>
60555         </return-value>
60556         <parameters>
60557           <parameter name="iter"
60558                      direction="out"
60559                      caller-allocates="1"
60560                      transfer-ownership="none">
60561             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
60562             <type name="TreeIter" c:type="GtkTreeIter*"/>
60563           </parameter>
60564           <parameter name="path" transfer-ownership="none">
60565             <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
60566             <type name="TreePath" c:type="GtkTreePath*"/>
60567           </parameter>
60568         </parameters>
60569       </virtual-method>
60570       <virtual-method name="get_n_columns" invoker="get_n_columns">
60571         <doc xml:whitespace="preserve">Returns the number of columns supported by @tree_model.</doc>
60572         <return-value transfer-ownership="none">
60573           <doc xml:whitespace="preserve">The number of columns.</doc>
60574           <type name="gint" c:type="gint"/>
60575         </return-value>
60576       </virtual-method>
60577       <virtual-method name="get_path" invoker="get_path">
60578         <doc xml:whitespace="preserve">Returns a newly-created #GtkTreePath referenced by @iter.  This path should
60579 be freed with gtk_tree_path_free().</doc>
60580         <return-value transfer-ownership="full">
60581           <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
60582           <type name="TreePath" c:type="GtkTreePath*"/>
60583         </return-value>
60584         <parameters>
60585           <parameter name="iter" transfer-ownership="none">
60586             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60587             <type name="TreeIter" c:type="GtkTreeIter*"/>
60588           </parameter>
60589         </parameters>
60590       </virtual-method>
60591       <virtual-method name="get_value" invoker="get_value">
60592         <doc xml:whitespace="preserve">Initializes and sets @value to that at @column.
60593 When done with @value, g_value_unset() needs to be called 
60594 to free any allocated memory.</doc>
60595         <return-value transfer-ownership="none">
60596           <type name="none" c:type="void"/>
60597         </return-value>
60598         <parameters>
60599           <parameter name="iter" transfer-ownership="none">
60600             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60601             <type name="TreeIter" c:type="GtkTreeIter*"/>
60602           </parameter>
60603           <parameter name="column" transfer-ownership="none">
60604             <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
60605             <type name="gint" c:type="gint"/>
60606           </parameter>
60607           <parameter name="value"
60608                      direction="out"
60609                      caller-allocates="1"
60610                      transfer-ownership="none">
60611             <doc xml:whitespace="preserve">An empty #GValue to set.</doc>
60612             <type name="GObject.Value" c:type="GValue*"/>
60613           </parameter>
60614         </parameters>
60615       </virtual-method>
60616       <virtual-method name="iter_children" invoker="iter_children">
60617         <doc xml:whitespace="preserve">Sets @iter to point to the first child of @parent.  If @parent has no
60618 children, %FALSE is returned and @iter is set to be invalid.  @parent
60619 will remain a valid node after this function has been called.
60620 If @parent is %NULL returns the first node, equivalent to
60621 &lt;literal&gt;gtk_tree_model_get_iter_first (tree_model, iter);&lt;/literal&gt;</doc>
60622         <return-value transfer-ownership="none">
60623           <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
60624           <type name="gboolean" c:type="gboolean"/>
60625         </return-value>
60626         <parameters>
60627           <parameter name="iter"
60628                      direction="out"
60629                      caller-allocates="1"
60630                      transfer-ownership="none">
60631             <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
60632             <type name="TreeIter" c:type="GtkTreeIter*"/>
60633           </parameter>
60634           <parameter name="parent" transfer-ownership="none" allow-none="1">
60635             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
60636             <type name="TreeIter" c:type="GtkTreeIter*"/>
60637           </parameter>
60638         </parameters>
60639       </virtual-method>
60640       <virtual-method name="iter_has_child" invoker="iter_has_child">
60641         <doc xml:whitespace="preserve">Returns %TRUE if @iter has children, %FALSE otherwise.</doc>
60642         <return-value transfer-ownership="none">
60643           <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
60644           <type name="gboolean" c:type="gboolean"/>
60645         </return-value>
60646         <parameters>
60647           <parameter name="iter" transfer-ownership="none">
60648             <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
60649             <type name="TreeIter" c:type="GtkTreeIter*"/>
60650           </parameter>
60651         </parameters>
60652       </virtual-method>
60653       <virtual-method name="iter_n_children" invoker="iter_n_children">
60654         <doc xml:whitespace="preserve">Returns the number of children that @iter has.  As a special case, if @iter
60655 is %NULL, then the number of toplevel nodes is returned.</doc>
60656         <return-value transfer-ownership="none">
60657           <doc xml:whitespace="preserve">The number of children of @iter.</doc>
60658           <type name="gint" c:type="gint"/>
60659         </return-value>
60660         <parameters>
60661           <parameter name="iter" transfer-ownership="none" allow-none="1">
60662             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
60663             <type name="TreeIter" c:type="GtkTreeIter*"/>
60664           </parameter>
60665         </parameters>
60666       </virtual-method>
60667       <virtual-method name="iter_next" invoker="iter_next">
60668         <doc xml:whitespace="preserve">Sets @iter to point to the node following it at the current level.  If there
60669 is no next @iter, %FALSE is returned and @iter is set to be invalid.</doc>
60670         <return-value transfer-ownership="none">
60671           <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
60672           <type name="gboolean" c:type="gboolean"/>
60673         </return-value>
60674         <parameters>
60675           <parameter name="iter" transfer-ownership="none">
60676             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60677             <type name="TreeIter" c:type="GtkTreeIter*"/>
60678           </parameter>
60679         </parameters>
60680       </virtual-method>
60681       <virtual-method name="iter_nth_child" invoker="iter_nth_child">
60682         <doc xml:whitespace="preserve">Sets @iter to be the child of @parent, using the given index.  The first
60683 index is 0.  If @n is too big, or @parent has no children, @iter is set
60684 to an invalid iterator and %FALSE is returned.  @parent will remain a valid
60685 node after this function has been called.  As a special case, if @parent is
60686 %NULL, then the @n&lt;!-- --&gt;th root node is set.</doc>
60687         <return-value transfer-ownership="none">
60688           <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
60689           <type name="gboolean" c:type="gboolean"/>
60690         </return-value>
60691         <parameters>
60692           <parameter name="iter"
60693                      direction="out"
60694                      caller-allocates="1"
60695                      transfer-ownership="none">
60696             <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
60697             <type name="TreeIter" c:type="GtkTreeIter*"/>
60698           </parameter>
60699           <parameter name="parent" transfer-ownership="none" allow-none="1">
60700             <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
60701             <type name="TreeIter" c:type="GtkTreeIter*"/>
60702           </parameter>
60703           <parameter name="n" transfer-ownership="none">
60704             <doc xml:whitespace="preserve">Then index of the desired child.</doc>
60705             <type name="gint" c:type="gint"/>
60706           </parameter>
60707         </parameters>
60708       </virtual-method>
60709       <virtual-method name="iter_parent" invoker="iter_parent">
60710         <doc xml:whitespace="preserve">Sets @iter to be the parent of @child.  If @child is at the toplevel, and
60711 doesn't have a parent, then @iter is set to an invalid iterator and %FALSE
60712 is returned.  @child will remain a valid node after this function has been
60713 called.</doc>
60714         <return-value transfer-ownership="none">
60715           <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
60716           <type name="gboolean" c:type="gboolean"/>
60717         </return-value>
60718         <parameters>
60719           <parameter name="iter"
60720                      direction="out"
60721                      caller-allocates="1"
60722                      transfer-ownership="none">
60723             <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
60724             <type name="TreeIter" c:type="GtkTreeIter*"/>
60725           </parameter>
60726           <parameter name="child" transfer-ownership="none">
60727             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60728             <type name="TreeIter" c:type="GtkTreeIter*"/>
60729           </parameter>
60730         </parameters>
60731       </virtual-method>
60732       <virtual-method name="ref_node" invoker="ref_node">
60733         <doc xml:whitespace="preserve">Lets the tree ref the node.  This is an optional method for models to
60734 implement.  To be more specific, models may ignore this call as it exists
60735 primarily for performance reasons.
60736 This function is primarily meant as a way for views to let caching model 
60737 know when nodes are being displayed (and hence, whether or not to cache that
60738 node.)  For example, a file-system based model would not want to keep the
60739 entire file-hierarchy in memory, just the sections that are currently being
60740 displayed by every current view.
60741 A model should be expected to be able to get an iter independent of its
60742 reffed state.</doc>
60743         <return-value transfer-ownership="none">
60744           <type name="none" c:type="void"/>
60745         </return-value>
60746         <parameters>
60747           <parameter name="iter" transfer-ownership="none">
60748             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60749             <type name="TreeIter" c:type="GtkTreeIter*"/>
60750           </parameter>
60751         </parameters>
60752       </virtual-method>
60753       <virtual-method name="unref_node" invoker="unref_node">
60754         <doc xml:whitespace="preserve">Lets the tree unref the node.  This is an optional method for models to
60755 implement.  To be more specific, models may ignore this call as it exists
60756 primarily for performance reasons.
60757 For more information on what this means, see gtk_tree_model_ref_node().
60758 Please note that nodes that are deleted are not unreffed.</doc>
60759         <return-value transfer-ownership="none">
60760           <type name="none" c:type="void"/>
60761         </return-value>
60762         <parameters>
60763           <parameter name="iter" transfer-ownership="none">
60764             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60765             <type name="TreeIter" c:type="GtkTreeIter*"/>
60766           </parameter>
60767         </parameters>
60768       </virtual-method>
60769       <method name="filter_new"
60770               c:identifier="gtk_tree_model_filter_new"
60771               version="2.4">
60772         <doc xml:whitespace="preserve">Creates a new #GtkTreeModel, with @child_model as the child_model
60773 and @root as the virtual root.</doc>
60774         <return-value transfer-ownership="full">
60775           <doc xml:whitespace="preserve">A new #GtkTreeModel.</doc>
60776           <type name="TreeModel" c:type="GtkTreeModel*"/>
60777         </return-value>
60778         <parameters>
60779           <parameter name="root" transfer-ownership="none" allow-none="1">
60780             <doc xml:whitespace="preserve">A #GtkTreePath or %NULL.</doc>
60781             <type name="TreePath" c:type="GtkTreePath*"/>
60782           </parameter>
60783         </parameters>
60784       </method>
60785       <method name="foreach" c:identifier="gtk_tree_model_foreach">
60786         <doc xml:whitespace="preserve">Calls func on each node in model in a depth-first fashion.
60787 If @func returns %TRUE, then the tree ceases to be walked, and
60788 gtk_tree_model_foreach() returns.</doc>
60789         <return-value transfer-ownership="none">
60790           <type name="none" c:type="void"/>
60791         </return-value>
60792         <parameters>
60793           <parameter name="func"
60794                      transfer-ownership="none"
60795                      scope="call"
60796                      closure="1">
60797             <doc xml:whitespace="preserve">A function to be called on each row</doc>
60798             <type name="TreeModelForeachFunc"
60799                   c:type="GtkTreeModelForeachFunc"/>
60800           </parameter>
60801           <parameter name="user_data" transfer-ownership="none">
60802             <doc xml:whitespace="preserve">User data to passed to func.</doc>
60803             <type name="gpointer" c:type="gpointer"/>
60804           </parameter>
60805         </parameters>
60806       </method>
60807       <method name="get" c:identifier="gtk_tree_model_get" introspectable="0">
60808         <doc xml:whitespace="preserve">Gets the value of one or more cells in the row referenced by @iter.
60809 The variable argument list should contain integer column numbers,
60810 each column number followed by a place to store the value being
60811 retrieved.  The list is terminated by a -1. For example, to get a
60812 value from column 0 with type %G_TYPE_STRING, you would
60813 where &lt;literal&gt;place_string_here&lt;/literal&gt; is a &lt;type&gt;gchar*&lt;/type&gt; to be 
60814 filled with the string.
60815 Returned values with type %G_TYPE_OBJECT have to be unreferenced, values
60816 with type %G_TYPE_STRING or %G_TYPE_BOXED have to be freed. Other values are
60817 passed by value.</doc>
60818         <return-value transfer-ownership="none">
60819           <type name="none" c:type="void"/>
60820         </return-value>
60821         <parameters>
60822           <parameter name="iter" transfer-ownership="none">
60823             <doc xml:whitespace="preserve">a row in @tree_model</doc>
60824             <type name="TreeIter" c:type="GtkTreeIter*"/>
60825           </parameter>
60826           <parameter transfer-ownership="none">
60827             <varargs>
60828             </varargs>
60829           </parameter>
60830         </parameters>
60831       </method>
60832       <method name="get_column_type"
60833               c:identifier="gtk_tree_model_get_column_type">
60834         <doc xml:whitespace="preserve">Returns the type of the column.</doc>
60835         <return-value transfer-ownership="none">
60836           <doc xml:whitespace="preserve">The type of the column.</doc>
60837           <type name="GType" c:type="GType"/>
60838         </return-value>
60839         <parameters>
60840           <parameter name="index_" transfer-ownership="none">
60841             <doc xml:whitespace="preserve">The column index.</doc>
60842             <type name="gint" c:type="gint"/>
60843           </parameter>
60844         </parameters>
60845       </method>
60846       <method name="get_flags" c:identifier="gtk_tree_model_get_flags">
60847         <doc xml:whitespace="preserve">Returns a set of flags supported by this interface.  The flags are a bitwise
60848 combination of #GtkTreeModelFlags.  The flags supported should not change
60849 during the lifecycle of the @tree_model.</doc>
60850         <return-value transfer-ownership="none">
60851           <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
60852           <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
60853         </return-value>
60854       </method>
60855       <method name="get_iter" c:identifier="gtk_tree_model_get_iter">
60856         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path.</doc>
60857         <return-value transfer-ownership="none">
60858           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
60859           <type name="gboolean" c:type="gboolean"/>
60860         </return-value>
60861         <parameters>
60862           <parameter name="iter"
60863                      direction="out"
60864                      caller-allocates="1"
60865                      transfer-ownership="none">
60866             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
60867             <type name="TreeIter" c:type="GtkTreeIter*"/>
60868           </parameter>
60869           <parameter name="path" transfer-ownership="none">
60870             <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
60871             <type name="TreePath" c:type="GtkTreePath*"/>
60872           </parameter>
60873         </parameters>
60874       </method>
60875       <method name="get_iter_first"
60876               c:identifier="gtk_tree_model_get_iter_first">
60877         <doc xml:whitespace="preserve">Initializes @iter with the first iterator in the tree (the one at the path
60878 "0") and returns %TRUE.  Returns %FALSE if the tree is empty.</doc>
60879         <return-value transfer-ownership="none">
60880           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
60881           <type name="gboolean" c:type="gboolean"/>
60882         </return-value>
60883         <parameters>
60884           <parameter name="iter"
60885                      direction="out"
60886                      caller-allocates="1"
60887                      transfer-ownership="none">
60888             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
60889             <type name="TreeIter" c:type="GtkTreeIter*"/>
60890           </parameter>
60891         </parameters>
60892       </method>
60893       <method name="get_iter_from_string"
60894               c:identifier="gtk_tree_model_get_iter_from_string">
60895         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path_string, if it
60896 exists. Otherwise, @iter is left invalid and %FALSE is returned.</doc>
60897         <return-value transfer-ownership="none">
60898           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
60899           <type name="gboolean" c:type="gboolean"/>
60900         </return-value>
60901         <parameters>
60902           <parameter name="iter"
60903                      direction="out"
60904                      caller-allocates="1"
60905                      transfer-ownership="none">
60906             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
60907             <type name="TreeIter" c:type="GtkTreeIter*"/>
60908           </parameter>
60909           <parameter name="path_string" transfer-ownership="none">
60910             <doc xml:whitespace="preserve">A string representation of a #GtkTreePath.</doc>
60911             <type name="utf8" c:type="gchar*"/>
60912           </parameter>
60913         </parameters>
60914       </method>
60915       <method name="get_n_columns" c:identifier="gtk_tree_model_get_n_columns">
60916         <doc xml:whitespace="preserve">Returns the number of columns supported by @tree_model.</doc>
60917         <return-value transfer-ownership="none">
60918           <doc xml:whitespace="preserve">The number of columns.</doc>
60919           <type name="gint" c:type="gint"/>
60920         </return-value>
60921       </method>
60922       <method name="get_path" c:identifier="gtk_tree_model_get_path">
60923         <doc xml:whitespace="preserve">Returns a newly-created #GtkTreePath referenced by @iter.  This path should
60924 be freed with gtk_tree_path_free().</doc>
60925         <return-value transfer-ownership="full">
60926           <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
60927           <type name="TreePath" c:type="GtkTreePath*"/>
60928         </return-value>
60929         <parameters>
60930           <parameter name="iter" transfer-ownership="none">
60931             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60932             <type name="TreeIter" c:type="GtkTreeIter*"/>
60933           </parameter>
60934         </parameters>
60935       </method>
60936       <method name="get_string_from_iter"
60937               c:identifier="gtk_tree_model_get_string_from_iter"
60938               version="2.2">
60939         <doc xml:whitespace="preserve">Generates a string representation of the iter. This string is a ':'
60940 separated list of numbers. For example, "4:10:0:3" would be an
60941 acceptable return value for this string.</doc>
60942         <return-value transfer-ownership="full">
60943           <doc xml:whitespace="preserve">A newly-allocated string. Must be freed with g_free().</doc>
60944           <type name="utf8" c:type="gchar*"/>
60945         </return-value>
60946         <parameters>
60947           <parameter name="iter" transfer-ownership="none">
60948             <doc xml:whitespace="preserve">An #GtkTreeIter.</doc>
60949             <type name="TreeIter" c:type="GtkTreeIter*"/>
60950           </parameter>
60951         </parameters>
60952       </method>
60953       <method name="get_valist"
60954               c:identifier="gtk_tree_model_get_valist"
60955               introspectable="0">
60956         <doc xml:whitespace="preserve">See gtk_tree_model_get(), this version takes a &lt;type&gt;va_list&lt;/type&gt; 
60957 for language bindings to use.</doc>
60958         <return-value transfer-ownership="none">
60959           <type name="none" c:type="void"/>
60960         </return-value>
60961         <parameters>
60962           <parameter name="iter" transfer-ownership="none">
60963             <doc xml:whitespace="preserve">a row in @tree_model</doc>
60964             <type name="TreeIter" c:type="GtkTreeIter*"/>
60965           </parameter>
60966           <parameter name="var_args" transfer-ownership="none">
60967             <doc xml:whitespace="preserve">&lt;type&gt;va_list&lt;/type&gt; of column/return location pairs</doc>
60968             <type name="va_list" c:type="va_list"/>
60969           </parameter>
60970         </parameters>
60971       </method>
60972       <method name="get_value" c:identifier="gtk_tree_model_get_value">
60973         <doc xml:whitespace="preserve">Initializes and sets @value to that at @column.
60974 When done with @value, g_value_unset() needs to be called 
60975 to free any allocated memory.</doc>
60976         <return-value transfer-ownership="none">
60977           <type name="none" c:type="void"/>
60978         </return-value>
60979         <parameters>
60980           <parameter name="iter" transfer-ownership="none">
60981             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
60982             <type name="TreeIter" c:type="GtkTreeIter*"/>
60983           </parameter>
60984           <parameter name="column" transfer-ownership="none">
60985             <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
60986             <type name="gint" c:type="gint"/>
60987           </parameter>
60988           <parameter name="value"
60989                      direction="out"
60990                      caller-allocates="1"
60991                      transfer-ownership="none">
60992             <doc xml:whitespace="preserve">An empty #GValue to set.</doc>
60993             <type name="GObject.Value" c:type="GValue*"/>
60994           </parameter>
60995         </parameters>
60996       </method>
60997       <method name="iter_children" c:identifier="gtk_tree_model_iter_children">
60998         <doc xml:whitespace="preserve">Sets @iter to point to the first child of @parent.  If @parent has no
60999 children, %FALSE is returned and @iter is set to be invalid.  @parent
61000 will remain a valid node after this function has been called.
61001 If @parent is %NULL returns the first node, equivalent to
61002 &lt;literal&gt;gtk_tree_model_get_iter_first (tree_model, iter);&lt;/literal&gt;</doc>
61003         <return-value transfer-ownership="none">
61004           <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
61005           <type name="gboolean" c:type="gboolean"/>
61006         </return-value>
61007         <parameters>
61008           <parameter name="iter"
61009                      direction="out"
61010                      caller-allocates="1"
61011                      transfer-ownership="none">
61012             <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
61013             <type name="TreeIter" c:type="GtkTreeIter*"/>
61014           </parameter>
61015           <parameter name="parent" transfer-ownership="none" allow-none="1">
61016             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
61017             <type name="TreeIter" c:type="GtkTreeIter*"/>
61018           </parameter>
61019         </parameters>
61020       </method>
61021       <method name="iter_has_child"
61022               c:identifier="gtk_tree_model_iter_has_child">
61023         <doc xml:whitespace="preserve">Returns %TRUE if @iter has children, %FALSE otherwise.</doc>
61024         <return-value transfer-ownership="none">
61025           <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
61026           <type name="gboolean" c:type="gboolean"/>
61027         </return-value>
61028         <parameters>
61029           <parameter name="iter" transfer-ownership="none">
61030             <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
61031             <type name="TreeIter" c:type="GtkTreeIter*"/>
61032           </parameter>
61033         </parameters>
61034       </method>
61035       <method name="iter_n_children"
61036               c:identifier="gtk_tree_model_iter_n_children">
61037         <doc xml:whitespace="preserve">Returns the number of children that @iter has.  As a special case, if @iter
61038 is %NULL, then the number of toplevel nodes is returned.</doc>
61039         <return-value transfer-ownership="none">
61040           <doc xml:whitespace="preserve">The number of children of @iter.</doc>
61041           <type name="gint" c:type="gint"/>
61042         </return-value>
61043         <parameters>
61044           <parameter name="iter" transfer-ownership="none" allow-none="1">
61045             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
61046             <type name="TreeIter" c:type="GtkTreeIter*"/>
61047           </parameter>
61048         </parameters>
61049       </method>
61050       <method name="iter_next" c:identifier="gtk_tree_model_iter_next">
61051         <doc xml:whitespace="preserve">Sets @iter to point to the node following it at the current level.  If there
61052 is no next @iter, %FALSE is returned and @iter is set to be invalid.</doc>
61053         <return-value transfer-ownership="none">
61054           <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
61055           <type name="gboolean" c:type="gboolean"/>
61056         </return-value>
61057         <parameters>
61058           <parameter name="iter" transfer-ownership="none">
61059             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61060             <type name="TreeIter" c:type="GtkTreeIter*"/>
61061           </parameter>
61062         </parameters>
61063       </method>
61064       <method name="iter_nth_child"
61065               c:identifier="gtk_tree_model_iter_nth_child">
61066         <doc xml:whitespace="preserve">Sets @iter to be the child of @parent, using the given index.  The first
61067 index is 0.  If @n is too big, or @parent has no children, @iter is set
61068 to an invalid iterator and %FALSE is returned.  @parent will remain a valid
61069 node after this function has been called.  As a special case, if @parent is
61070 %NULL, then the @n&lt;!-- --&gt;th root node is set.</doc>
61071         <return-value transfer-ownership="none">
61072           <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
61073           <type name="gboolean" c:type="gboolean"/>
61074         </return-value>
61075         <parameters>
61076           <parameter name="iter"
61077                      direction="out"
61078                      caller-allocates="1"
61079                      transfer-ownership="none">
61080             <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
61081             <type name="TreeIter" c:type="GtkTreeIter*"/>
61082           </parameter>
61083           <parameter name="parent" transfer-ownership="none" allow-none="1">
61084             <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
61085             <type name="TreeIter" c:type="GtkTreeIter*"/>
61086           </parameter>
61087           <parameter name="n" transfer-ownership="none">
61088             <doc xml:whitespace="preserve">Then index of the desired child.</doc>
61089             <type name="gint" c:type="gint"/>
61090           </parameter>
61091         </parameters>
61092       </method>
61093       <method name="iter_parent" c:identifier="gtk_tree_model_iter_parent">
61094         <doc xml:whitespace="preserve">Sets @iter to be the parent of @child.  If @child is at the toplevel, and
61095 doesn't have a parent, then @iter is set to an invalid iterator and %FALSE
61096 is returned.  @child will remain a valid node after this function has been
61097 called.</doc>
61098         <return-value transfer-ownership="none">
61099           <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
61100           <type name="gboolean" c:type="gboolean"/>
61101         </return-value>
61102         <parameters>
61103           <parameter name="iter"
61104                      direction="out"
61105                      caller-allocates="1"
61106                      transfer-ownership="none">
61107             <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
61108             <type name="TreeIter" c:type="GtkTreeIter*"/>
61109           </parameter>
61110           <parameter name="child" transfer-ownership="none">
61111             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61112             <type name="TreeIter" c:type="GtkTreeIter*"/>
61113           </parameter>
61114         </parameters>
61115       </method>
61116       <method name="ref_node" c:identifier="gtk_tree_model_ref_node">
61117         <doc xml:whitespace="preserve">Lets the tree ref the node.  This is an optional method for models to
61118 implement.  To be more specific, models may ignore this call as it exists
61119 primarily for performance reasons.
61120 This function is primarily meant as a way for views to let caching model 
61121 know when nodes are being displayed (and hence, whether or not to cache that
61122 node.)  For example, a file-system based model would not want to keep the
61123 entire file-hierarchy in memory, just the sections that are currently being
61124 displayed by every current view.
61125 A model should be expected to be able to get an iter independent of its
61126 reffed state.</doc>
61127         <return-value transfer-ownership="none">
61128           <type name="none" c:type="void"/>
61129         </return-value>
61130         <parameters>
61131           <parameter name="iter" transfer-ownership="none">
61132             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61133             <type name="TreeIter" c:type="GtkTreeIter*"/>
61134           </parameter>
61135         </parameters>
61136       </method>
61137       <method name="row_changed" c:identifier="gtk_tree_model_row_changed">
61138         <doc xml:whitespace="preserve">Emits the "row-changed" signal on @tree_model.</doc>
61139         <return-value transfer-ownership="none">
61140           <type name="none" c:type="void"/>
61141         </return-value>
61142         <parameters>
61143           <parameter name="path" transfer-ownership="none">
61144             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the changed row</doc>
61145             <type name="TreePath" c:type="GtkTreePath*"/>
61146           </parameter>
61147           <parameter name="iter" transfer-ownership="none">
61148             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the changed row</doc>
61149             <type name="TreeIter" c:type="GtkTreeIter*"/>
61150           </parameter>
61151         </parameters>
61152       </method>
61153       <method name="row_deleted" c:identifier="gtk_tree_model_row_deleted">
61154         <doc xml:whitespace="preserve">Emits the "row-deleted" signal on @tree_model.  This should be called by
61155 models after a row has been removed.  The location pointed to by @path 
61156 should be the location that the row previously was at.  It may not be a 
61157 valid location anymore.</doc>
61158         <return-value transfer-ownership="none">
61159           <type name="none" c:type="void"/>
61160         </return-value>
61161         <parameters>
61162           <parameter name="path" transfer-ownership="none">
61163             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the previous location of the deleted row.</doc>
61164             <type name="TreePath" c:type="GtkTreePath*"/>
61165           </parameter>
61166         </parameters>
61167       </method>
61168       <method name="row_has_child_toggled"
61169               c:identifier="gtk_tree_model_row_has_child_toggled">
61170         <doc xml:whitespace="preserve">Emits the "row-has-child-toggled" signal on @tree_model.  This should be
61171 called by models after the child state of a node changes.</doc>
61172         <return-value transfer-ownership="none">
61173           <type name="none" c:type="void"/>
61174         </return-value>
61175         <parameters>
61176           <parameter name="path" transfer-ownership="none">
61177             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the changed row</doc>
61178             <type name="TreePath" c:type="GtkTreePath*"/>
61179           </parameter>
61180           <parameter name="iter" transfer-ownership="none">
61181             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the changed row</doc>
61182             <type name="TreeIter" c:type="GtkTreeIter*"/>
61183           </parameter>
61184         </parameters>
61185       </method>
61186       <method name="row_inserted" c:identifier="gtk_tree_model_row_inserted">
61187         <doc xml:whitespace="preserve">Emits the "row-inserted" signal on @tree_model</doc>
61188         <return-value transfer-ownership="none">
61189           <type name="none" c:type="void"/>
61190         </return-value>
61191         <parameters>
61192           <parameter name="path" transfer-ownership="none">
61193             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the inserted row</doc>
61194             <type name="TreePath" c:type="GtkTreePath*"/>
61195           </parameter>
61196           <parameter name="iter" transfer-ownership="none">
61197             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the inserted row</doc>
61198             <type name="TreeIter" c:type="GtkTreeIter*"/>
61199           </parameter>
61200         </parameters>
61201       </method>
61202       <method name="rows_reordered"
61203               c:identifier="gtk_tree_model_rows_reordered">
61204         <doc xml:whitespace="preserve">Emits the "rows-reordered" signal on @tree_model.  This should be called by
61205 models when their rows have been reordered.</doc>
61206         <return-value transfer-ownership="none">
61207           <type name="none" c:type="void"/>
61208         </return-value>
61209         <parameters>
61210           <parameter name="path" transfer-ownership="none">
61211             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the tree node whose children have been reordered</doc>
61212             <type name="TreePath" c:type="GtkTreePath*"/>
61213           </parameter>
61214           <parameter name="iter" transfer-ownership="none">
61215             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the node whose children have been reordered, or %NULL if the depth of @path is 0.</doc>
61216             <type name="TreeIter" c:type="GtkTreeIter*"/>
61217           </parameter>
61218           <parameter name="new_order" transfer-ownership="none">
61219             <doc xml:whitespace="preserve">an array of integers mapping the current position of each child to its old position before the re-ordering, i.e. @new_order&lt;literal&gt;[newpos] = oldpos&lt;/literal&gt;.</doc>
61220             <type name="gint" c:type="gint*"/>
61221           </parameter>
61222         </parameters>
61223       </method>
61224       <method name="sort_new_with_model"
61225               c:identifier="gtk_tree_model_sort_new_with_model">
61226         <doc xml:whitespace="preserve">Creates a new #GtkTreeModel, with @child_model as the child model.</doc>
61227         <return-value transfer-ownership="full">
61228           <doc xml:whitespace="preserve">A new #GtkTreeModel.</doc>
61229           <type name="TreeModel" c:type="GtkTreeModel*"/>
61230         </return-value>
61231       </method>
61232       <method name="unref_node" c:identifier="gtk_tree_model_unref_node">
61233         <doc xml:whitespace="preserve">Lets the tree unref the node.  This is an optional method for models to
61234 implement.  To be more specific, models may ignore this call as it exists
61235 primarily for performance reasons.
61236 For more information on what this means, see gtk_tree_model_ref_node().
61237 Please note that nodes that are deleted are not unreffed.</doc>
61238         <return-value transfer-ownership="none">
61239           <type name="none" c:type="void"/>
61240         </return-value>
61241         <parameters>
61242           <parameter name="iter" transfer-ownership="none">
61243             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61244             <type name="TreeIter" c:type="GtkTreeIter*"/>
61245           </parameter>
61246         </parameters>
61247       </method>
61248       <glib:signal name="row-changed">
61249         <doc xml:whitespace="preserve">This signal is emitted when a row in the model has changed.</doc>
61250         <return-value transfer-ownership="none">
61251           <type name="none"/>
61252         </return-value>
61253         <parameters>
61254           <parameter name="object" transfer-ownership="none">
61255             <doc xml:whitespace="preserve">a #GtkTreePath identifying the changed row</doc>
61256             <type name="TreePath"/>
61257           </parameter>
61258           <parameter name="p0" transfer-ownership="none">
61259             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the changed row</doc>
61260             <type name="TreeIter"/>
61261           </parameter>
61262         </parameters>
61263       </glib:signal>
61264       <glib:signal name="row-deleted">
61265         <doc xml:whitespace="preserve">This signal is emitted when a row has been deleted.
61266 Note that no iterator is passed to the signal handler,
61267 since the row is already deleted.
61268 Implementations of GtkTreeModel must emit row-deleted 
61269 &lt;emphasis&gt;before&lt;/emphasis&gt; removing the node from its
61270 internal data structures.  This is because models and 
61271 views which access and monitor this model might have
61272 references on the node which need to be released in the
61273 row-deleted handler.</doc>
61274         <return-value transfer-ownership="none">
61275           <type name="none"/>
61276         </return-value>
61277         <parameters>
61278           <parameter name="object" transfer-ownership="none">
61279             <doc xml:whitespace="preserve">a #GtkTreePath identifying the row</doc>
61280             <type name="TreePath"/>
61281           </parameter>
61282         </parameters>
61283       </glib:signal>
61284       <glib:signal name="row-has-child-toggled">
61285         <doc xml:whitespace="preserve">This signal is emitted when a row has gotten the first child row or lost
61286 its last child row.</doc>
61287         <return-value transfer-ownership="none">
61288           <type name="none"/>
61289         </return-value>
61290         <parameters>
61291           <parameter name="object" transfer-ownership="none">
61292             <doc xml:whitespace="preserve">a #GtkTreePath identifying the row</doc>
61293             <type name="TreePath"/>
61294           </parameter>
61295           <parameter name="p0" transfer-ownership="none">
61296             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the row</doc>
61297             <type name="TreeIter"/>
61298           </parameter>
61299         </parameters>
61300       </glib:signal>
61301       <glib:signal name="row-inserted">
61302         <doc xml:whitespace="preserve">This signal is emitted when a new row has been inserted in the model.
61303 Note that the row may still be empty at this point, since
61304 it is a common pattern to first insert an empty row, and 
61305 then fill it with the desired values.</doc>
61306         <return-value transfer-ownership="none">
61307           <type name="none"/>
61308         </return-value>
61309         <parameters>
61310           <parameter name="object" transfer-ownership="none">
61311             <doc xml:whitespace="preserve">a #GtkTreePath identifying the new row</doc>
61312             <type name="TreePath"/>
61313           </parameter>
61314           <parameter name="p0" transfer-ownership="none">
61315             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the new row</doc>
61316             <type name="TreeIter"/>
61317           </parameter>
61318         </parameters>
61319       </glib:signal>
61320       <glib:signal name="rows-reordered">
61321         <doc xml:whitespace="preserve">This signal is emitted when the children of a node in the #GtkTreeModel
61322 have been reordered. 
61323 Note that this signal is &lt;emphasis&gt;not&lt;/emphasis&gt; emitted
61324 when rows are reordered by DND, since this is implemented
61325 by removing and then reinserting the row.</doc>
61326         <return-value transfer-ownership="none">
61327           <type name="none"/>
61328         </return-value>
61329         <parameters>
61330           <parameter name="object" transfer-ownership="none">
61331             <doc xml:whitespace="preserve">a #GtkTreePath identifying the tree node whose children have been reordered</doc>
61332             <type name="TreePath"/>
61333           </parameter>
61334           <parameter name="p0" transfer-ownership="none">
61335             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the node whose</doc>
61336             <type name="TreeIter"/>
61337           </parameter>
61338           <parameter name="p1" transfer-ownership="none">
61339             <doc xml:whitespace="preserve">an array of integers mapping the current position of each child to its old position before the re-ordering, i.e. @new_order&lt;literal&gt;[newpos] = oldpos&lt;/literal&gt;.</doc>
61340             <type name="gpointer"/>
61341           </parameter>
61342         </parameters>
61343       </glib:signal>
61344     </interface>
61345     <class name="TreeModelFilter"
61346            c:symbol-prefix="tree_model_filter"
61347            c:type="GtkTreeModelFilter"
61348            parent="GObject.Object"
61349            glib:type-name="GtkTreeModelFilter"
61350            glib:get-type="gtk_tree_model_filter_get_type"
61351            glib:type-struct="TreeModelFilterClass">
61352       <implements name="TreeDragSource"/>
61353       <implements name="TreeModel"/>
61354       <virtual-method name="modify">
61355         <return-value transfer-ownership="none">
61356           <type name="none" c:type="void"/>
61357         </return-value>
61358         <parameters>
61359           <parameter name="child_model" transfer-ownership="none">
61360             <type name="TreeModel" c:type="GtkTreeModel*"/>
61361           </parameter>
61362           <parameter name="iter" transfer-ownership="none">
61363             <type name="TreeIter" c:type="GtkTreeIter*"/>
61364           </parameter>
61365           <parameter name="value" transfer-ownership="none">
61366             <type name="GObject.Value" c:type="GValue*"/>
61367           </parameter>
61368           <parameter name="column" transfer-ownership="none">
61369             <type name="gint" c:type="gint"/>
61370           </parameter>
61371         </parameters>
61372       </virtual-method>
61373       <virtual-method name="visible">
61374         <return-value transfer-ownership="none">
61375           <type name="gboolean" c:type="gboolean"/>
61376         </return-value>
61377         <parameters>
61378           <parameter name="child_model" transfer-ownership="none">
61379             <type name="TreeModel" c:type="GtkTreeModel*"/>
61380           </parameter>
61381           <parameter name="iter" transfer-ownership="none">
61382             <type name="TreeIter" c:type="GtkTreeIter*"/>
61383           </parameter>
61384         </parameters>
61385       </virtual-method>
61386       <method name="clear_cache"
61387               c:identifier="gtk_tree_model_filter_clear_cache"
61388               version="2.4">
61389         <doc xml:whitespace="preserve">This function should almost never be called. It clears the @filter
61390 of any cached iterators that haven't been reffed with
61391 gtk_tree_model_ref_node(). This might be useful if the child model
61392 being filtered is static (and doesn't change often) and there has been
61393 a lot of unreffed access to nodes. As a side effect of this function,
61394 all unreffed iters will be invalid.</doc>
61395         <return-value transfer-ownership="none">
61396           <type name="none" c:type="void"/>
61397         </return-value>
61398       </method>
61399       <method name="convert_child_iter_to_iter"
61400               c:identifier="gtk_tree_model_filter_convert_child_iter_to_iter"
61401               version="2.4">
61402         <doc xml:whitespace="preserve">Sets @filter_iter to point to the row in @filter that corresponds to the
61403 row pointed at by @child_iter.  If @filter_iter was not set, %FALSE is
61404 returned.
61405 valid iterator pointing to a visible row in child model.</doc>
61406         <return-value transfer-ownership="none">
61407           <doc xml:whitespace="preserve">%TRUE, if @filter_iter was set, i.e. if @child_iter is a</doc>
61408           <type name="gboolean" c:type="gboolean"/>
61409         </return-value>
61410         <parameters>
61411           <parameter name="filter_iter"
61412                      direction="out"
61413                      caller-allocates="1"
61414                      transfer-ownership="none">
61415             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
61416             <type name="TreeIter" c:type="GtkTreeIter*"/>
61417           </parameter>
61418           <parameter name="child_iter" transfer-ownership="none">
61419             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on the child model.</doc>
61420             <type name="TreeIter" c:type="GtkTreeIter*"/>
61421           </parameter>
61422         </parameters>
61423       </method>
61424       <method name="convert_child_path_to_path"
61425               c:identifier="gtk_tree_model_filter_convert_child_path_to_path"
61426               version="2.4">
61427         <doc xml:whitespace="preserve">Converts @child_path to a path relative to @filter. That is, @child_path
61428 points to a path in the child model. The rerturned path will point to the
61429 same row in the filtered model. If @child_path isn't a valid path on the
61430 child model or points to a row which is not visible in @filter, then %NULL
61431 is returned.</doc>
61432         <return-value transfer-ownership="full">
61433           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL.</doc>
61434           <type name="TreePath" c:type="GtkTreePath*"/>
61435         </return-value>
61436         <parameters>
61437           <parameter name="child_path" transfer-ownership="none">
61438             <doc xml:whitespace="preserve">A #GtkTreePath to convert.</doc>
61439             <type name="TreePath" c:type="GtkTreePath*"/>
61440           </parameter>
61441         </parameters>
61442       </method>
61443       <method name="convert_iter_to_child_iter"
61444               c:identifier="gtk_tree_model_filter_convert_iter_to_child_iter"
61445               version="2.4">
61446         <doc xml:whitespace="preserve">Sets @child_iter to point to the row pointed to by @filter_iter.</doc>
61447         <return-value transfer-ownership="none">
61448           <type name="none" c:type="void"/>
61449         </return-value>
61450         <parameters>
61451           <parameter name="child_iter"
61452                      direction="out"
61453                      caller-allocates="1"
61454                      transfer-ownership="none">
61455             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
61456             <type name="TreeIter" c:type="GtkTreeIter*"/>
61457           </parameter>
61458           <parameter name="filter_iter" transfer-ownership="none">
61459             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on @filter.</doc>
61460             <type name="TreeIter" c:type="GtkTreeIter*"/>
61461           </parameter>
61462         </parameters>
61463       </method>
61464       <method name="convert_path_to_child_path"
61465               c:identifier="gtk_tree_model_filter_convert_path_to_child_path"
61466               version="2.4">
61467         <doc xml:whitespace="preserve">Converts @filter_path to a path on the child model of @filter. That is,
61468 point to the same location in the model not being filtered. If @filter_path
61469 does not point to a location in the child model, %NULL is returned.</doc>
61470         <return-value transfer-ownership="full">
61471           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL.</doc>
61472           <type name="TreePath" c:type="GtkTreePath*"/>
61473         </return-value>
61474         <parameters>
61475           <parameter name="filter_path" transfer-ownership="none">
61476             <doc xml:whitespace="preserve">A #GtkTreePath to convert.</doc>
61477             <type name="TreePath" c:type="GtkTreePath*"/>
61478           </parameter>
61479         </parameters>
61480       </method>
61481       <method name="get_model"
61482               c:identifier="gtk_tree_model_filter_get_model"
61483               version="2.4">
61484         <doc xml:whitespace="preserve">Returns a pointer to the child model of @filter.</doc>
61485         <return-value transfer-ownership="none">
61486           <doc xml:whitespace="preserve">A pointer to a #GtkTreeModel.</doc>
61487           <type name="TreeModel" c:type="GtkTreeModel*"/>
61488         </return-value>
61489       </method>
61490       <method name="refilter"
61491               c:identifier="gtk_tree_model_filter_refilter"
61492               version="2.4">
61493         <doc xml:whitespace="preserve">Emits ::row_changed for each row in the child model, which causes
61494 the filter to re-evaluate whether a row is visible or not.</doc>
61495         <return-value transfer-ownership="none">
61496           <type name="none" c:type="void"/>
61497         </return-value>
61498       </method>
61499       <method name="set_modify_func"
61500               c:identifier="gtk_tree_model_filter_set_modify_func"
61501               version="2.4">
61502         <doc xml:whitespace="preserve">With the @n_columns and @types parameters, you give an array of column
61503 types for this model (which will be exposed to the parent model/view).
61504 The @func, @data and @destroy parameters are for specifying the modify
61505 function. The modify function will get called for &lt;emphasis&gt;each&lt;/emphasis&gt;
61506 data access, the goal of the modify function is to return the data which 
61507 should be displayed at the location specified using the parameters of the 
61508 modify function.</doc>
61509         <return-value transfer-ownership="none">
61510           <type name="none" c:type="void"/>
61511         </return-value>
61512         <parameters>
61513           <parameter name="n_columns" transfer-ownership="none">
61514             <doc xml:whitespace="preserve">The number of columns in the filter model.</doc>
61515             <type name="gint" c:type="gint"/>
61516           </parameter>
61517           <parameter name="types" transfer-ownership="none">
61518             <doc xml:whitespace="preserve">The #GType&lt;!-- --&gt;s of the columns.</doc>
61519             <type name="GType" c:type="GType*"/>
61520           </parameter>
61521           <parameter name="func"
61522                      transfer-ownership="none"
61523                      scope="notified"
61524                      closure="3"
61525                      destroy="4">
61526             <doc xml:whitespace="preserve">A #GtkTreeModelFilterModifyFunc</doc>
61527             <type name="TreeModelFilterModifyFunc"
61528                   c:type="GtkTreeModelFilterModifyFunc"/>
61529           </parameter>
61530           <parameter name="data" transfer-ownership="none" allow-none="1">
61531             <doc xml:whitespace="preserve">User data to pass to the modify function, or %NULL.</doc>
61532             <type name="gpointer" c:type="gpointer"/>
61533           </parameter>
61534           <parameter name="destroy"
61535                      transfer-ownership="none"
61536                      allow-none="1"
61537                      scope="async">
61538             <doc xml:whitespace="preserve">Destroy notifier of @data, or %NULL.</doc>
61539             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
61540           </parameter>
61541         </parameters>
61542       </method>
61543       <method name="set_visible_column"
61544               c:identifier="gtk_tree_model_filter_set_visible_column"
61545               version="2.4">
61546         <doc xml:whitespace="preserve">Sets @column of the child_model to be the column where @filter should
61547 look for visibility information. @columns should be a column of type
61548 %G_TYPE_BOOLEAN, where %TRUE means that a row is visible, and %FALSE
61549 if not.</doc>
61550         <return-value transfer-ownership="none">
61551           <type name="none" c:type="void"/>
61552         </return-value>
61553         <parameters>
61554           <parameter name="column" transfer-ownership="none">
61555             <doc xml:whitespace="preserve">A #gint which is the column containing the visible information.</doc>
61556             <type name="gint" c:type="gint"/>
61557           </parameter>
61558         </parameters>
61559       </method>
61560       <method name="set_visible_func"
61561               c:identifier="gtk_tree_model_filter_set_visible_func"
61562               version="2.4">
61563         <doc xml:whitespace="preserve">Sets the visible function used when filtering the @filter to be @func. The
61564 function should return %TRUE if the given row should be visible and
61565 %FALSE otherwise.
61566 If the condition calculated by the function changes over time (e.g. because
61567 it depends on some global parameters), you must call 
61568 gtk_tree_model_filter_refilter() to keep the visibility information of 
61569 the model uptodate.
61570 Note that @func is called whenever a row is inserted, when it may still be
61571 empty. The visible function should therefore take special care of empty
61572 rows, like in the example below.
61573 &lt;informalexample&gt;&lt;programlisting&gt;
61574 static gboolean
61575 visible_func (GtkTreeModel *model,
61576 GtkTreeIter  *iter,
61577 gpointer      data)
61578 {
61579 /&amp;ast; Visible if row is non-empty and first column is "HI" &amp;ast;/
61580 gchar *str;
61581 gboolean visible = FALSE;
61582 gtk_tree_model_get (model, iter, 0, &amp;str, -1);
61583 if (str &amp;&amp; strcmp (str, "HI") == 0)
61584 visible = TRUE;
61585 g_free (str);
61586 return visible;
61587 }
61588 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
61589         <return-value transfer-ownership="none">
61590           <type name="none" c:type="void"/>
61591         </return-value>
61592         <parameters>
61593           <parameter name="func"
61594                      transfer-ownership="none"
61595                      scope="notified"
61596                      closure="1"
61597                      destroy="2">
61598             <doc xml:whitespace="preserve">A #GtkTreeModelFilterVisibleFunc, the visible function.</doc>
61599             <type name="TreeModelFilterVisibleFunc"
61600                   c:type="GtkTreeModelFilterVisibleFunc"/>
61601           </parameter>
61602           <parameter name="data" transfer-ownership="none" allow-none="1">
61603             <doc xml:whitespace="preserve">User data to pass to the visible function, or %NULL.</doc>
61604             <type name="gpointer" c:type="gpointer"/>
61605           </parameter>
61606           <parameter name="destroy"
61607                      transfer-ownership="none"
61608                      allow-none="1"
61609                      scope="async">
61610             <doc xml:whitespace="preserve">Destroy notifier of @data, or %NULL.</doc>
61611             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
61612           </parameter>
61613         </parameters>
61614       </method>
61615       <property name="child-model"
61616                 writable="1"
61617                 construct-only="1"
61618                 transfer-ownership="none">
61619         <type name="TreeModel"/>
61620       </property>
61621       <property name="virtual-root"
61622                 writable="1"
61623                 construct-only="1"
61624                 transfer-ownership="none">
61625         <type name="TreePath"/>
61626       </property>
61627       <field name="parent">
61628         <type name="GObject.Object" c:type="GObject"/>
61629       </field>
61630       <field name="priv">
61631         <type name="TreeModelFilterPrivate"
61632               c:type="GtkTreeModelFilterPrivate*"/>
61633       </field>
61634     </class>
61635     <record name="TreeModelFilterClass"
61636             c:type="GtkTreeModelFilterClass"
61637             glib:is-gtype-struct-for="TreeModelFilter">
61638       <field name="parent_class">
61639         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
61640       </field>
61641       <field name="visible">
61642         <callback name="visible">
61643           <return-value transfer-ownership="none">
61644             <type name="gboolean" c:type="gboolean"/>
61645           </return-value>
61646           <parameters>
61647             <parameter name="self" transfer-ownership="none">
61648               <type name="TreeModelFilter" c:type="GtkTreeModelFilter*"/>
61649             </parameter>
61650             <parameter name="child_model" transfer-ownership="none">
61651               <type name="TreeModel" c:type="GtkTreeModel*"/>
61652             </parameter>
61653             <parameter name="iter" transfer-ownership="none">
61654               <type name="TreeIter" c:type="GtkTreeIter*"/>
61655             </parameter>
61656           </parameters>
61657         </callback>
61658       </field>
61659       <field name="modify">
61660         <callback name="modify">
61661           <return-value transfer-ownership="none">
61662             <type name="none" c:type="void"/>
61663           </return-value>
61664           <parameters>
61665             <parameter name="self" transfer-ownership="none">
61666               <type name="TreeModelFilter" c:type="GtkTreeModelFilter*"/>
61667             </parameter>
61668             <parameter name="child_model" transfer-ownership="none">
61669               <type name="TreeModel" c:type="GtkTreeModel*"/>
61670             </parameter>
61671             <parameter name="iter" transfer-ownership="none">
61672               <type name="TreeIter" c:type="GtkTreeIter*"/>
61673             </parameter>
61674             <parameter name="value" transfer-ownership="none">
61675               <type name="GObject.Value" c:type="GValue*"/>
61676             </parameter>
61677             <parameter name="column" transfer-ownership="none">
61678               <type name="gint" c:type="gint"/>
61679             </parameter>
61680           </parameters>
61681         </callback>
61682       </field>
61683       <field name="_gtk_reserved0" introspectable="0">
61684         <callback name="_gtk_reserved0">
61685           <return-value transfer-ownership="none">
61686             <type name="none" c:type="void"/>
61687           </return-value>
61688         </callback>
61689       </field>
61690       <field name="_gtk_reserved1" introspectable="0">
61691         <callback name="_gtk_reserved1">
61692           <return-value transfer-ownership="none">
61693             <type name="none" c:type="void"/>
61694           </return-value>
61695         </callback>
61696       </field>
61697     </record>
61698     <callback name="TreeModelFilterModifyFunc"
61699               c:type="GtkTreeModelFilterModifyFunc">
61700       <return-value transfer-ownership="none">
61701         <type name="none" c:type="void"/>
61702       </return-value>
61703       <parameters>
61704         <parameter name="model" transfer-ownership="none">
61705           <type name="TreeModel" c:type="GtkTreeModel*"/>
61706         </parameter>
61707         <parameter name="iter" transfer-ownership="none">
61708           <type name="TreeIter" c:type="GtkTreeIter*"/>
61709         </parameter>
61710         <parameter name="value" transfer-ownership="none">
61711           <type name="GObject.Value" c:type="GValue*"/>
61712         </parameter>
61713         <parameter name="column" transfer-ownership="none">
61714           <type name="gint" c:type="gint"/>
61715         </parameter>
61716         <parameter name="data" transfer-ownership="none">
61717           <type name="gpointer" c:type="gpointer"/>
61718         </parameter>
61719       </parameters>
61720     </callback>
61721     <record name="TreeModelFilterPrivate"
61722             c:type="GtkTreeModelFilterPrivate"
61723             disguised="1">
61724     </record>
61725     <callback name="TreeModelFilterVisibleFunc"
61726               c:type="GtkTreeModelFilterVisibleFunc">
61727       <return-value transfer-ownership="none">
61728         <type name="gboolean" c:type="gboolean"/>
61729       </return-value>
61730       <parameters>
61731         <parameter name="model" transfer-ownership="none">
61732           <type name="TreeModel" c:type="GtkTreeModel*"/>
61733         </parameter>
61734         <parameter name="iter" transfer-ownership="none">
61735           <type name="TreeIter" c:type="GtkTreeIter*"/>
61736         </parameter>
61737         <parameter name="data" transfer-ownership="none">
61738           <type name="gpointer" c:type="gpointer"/>
61739         </parameter>
61740       </parameters>
61741     </callback>
61742     <bitfield name="TreeModelFlags"
61743               glib:type-name="GtkTreeModelFlags"
61744               glib:get-type="gtk_tree_model_flags_get_type"
61745               c:type="GtkTreeModelFlags">
61746       <member name="iters_persist"
61747               value="1"
61748               c:identifier="GTK_TREE_MODEL_ITERS_PERSIST"
61749               glib:nick="iters-persist"/>
61750       <member name="list_only"
61751               value="2"
61752               c:identifier="GTK_TREE_MODEL_LIST_ONLY"
61753               glib:nick="list-only"/>
61754     </bitfield>
61755     <callback name="TreeModelForeachFunc" c:type="GtkTreeModelForeachFunc">
61756       <return-value transfer-ownership="none">
61757         <type name="gboolean" c:type="gboolean"/>
61758       </return-value>
61759       <parameters>
61760         <parameter name="model" transfer-ownership="none">
61761           <type name="TreeModel" c:type="GtkTreeModel*"/>
61762         </parameter>
61763         <parameter name="path" transfer-ownership="none">
61764           <type name="TreePath" c:type="GtkTreePath*"/>
61765         </parameter>
61766         <parameter name="iter" transfer-ownership="none">
61767           <type name="TreeIter" c:type="GtkTreeIter*"/>
61768         </parameter>
61769         <parameter name="data" transfer-ownership="none">
61770           <type name="gpointer" c:type="gpointer"/>
61771         </parameter>
61772       </parameters>
61773     </callback>
61774     <record name="TreeModelIface"
61775             c:type="GtkTreeModelIface"
61776             glib:is-gtype-struct-for="TreeModel">
61777       <field name="g_iface">
61778         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
61779       </field>
61780       <field name="row_changed">
61781         <callback name="row_changed">
61782           <return-value transfer-ownership="none">
61783             <type name="none" c:type="void"/>
61784           </return-value>
61785           <parameters>
61786             <parameter name="tree_model" transfer-ownership="none">
61787               <type name="TreeModel" c:type="GtkTreeModel*"/>
61788             </parameter>
61789             <parameter name="path" transfer-ownership="none">
61790               <type name="TreePath" c:type="GtkTreePath*"/>
61791             </parameter>
61792             <parameter name="iter" transfer-ownership="none">
61793               <type name="TreeIter" c:type="GtkTreeIter*"/>
61794             </parameter>
61795           </parameters>
61796         </callback>
61797       </field>
61798       <field name="row_inserted">
61799         <callback name="row_inserted">
61800           <return-value transfer-ownership="none">
61801             <type name="none" c:type="void"/>
61802           </return-value>
61803           <parameters>
61804             <parameter name="tree_model" transfer-ownership="none">
61805               <type name="TreeModel" c:type="GtkTreeModel*"/>
61806             </parameter>
61807             <parameter name="path" transfer-ownership="none">
61808               <type name="TreePath" c:type="GtkTreePath*"/>
61809             </parameter>
61810             <parameter name="iter" transfer-ownership="none">
61811               <type name="TreeIter" c:type="GtkTreeIter*"/>
61812             </parameter>
61813           </parameters>
61814         </callback>
61815       </field>
61816       <field name="row_has_child_toggled">
61817         <callback name="row_has_child_toggled">
61818           <return-value transfer-ownership="none">
61819             <type name="none" c:type="void"/>
61820           </return-value>
61821           <parameters>
61822             <parameter name="tree_model" transfer-ownership="none">
61823               <type name="TreeModel" c:type="GtkTreeModel*"/>
61824             </parameter>
61825             <parameter name="path" transfer-ownership="none">
61826               <type name="TreePath" c:type="GtkTreePath*"/>
61827             </parameter>
61828             <parameter name="iter" transfer-ownership="none">
61829               <type name="TreeIter" c:type="GtkTreeIter*"/>
61830             </parameter>
61831           </parameters>
61832         </callback>
61833       </field>
61834       <field name="row_deleted">
61835         <callback name="row_deleted">
61836           <return-value transfer-ownership="none">
61837             <type name="none" c:type="void"/>
61838           </return-value>
61839           <parameters>
61840             <parameter name="tree_model" transfer-ownership="none">
61841               <type name="TreeModel" c:type="GtkTreeModel*"/>
61842             </parameter>
61843             <parameter name="path" transfer-ownership="none">
61844               <type name="TreePath" c:type="GtkTreePath*"/>
61845             </parameter>
61846           </parameters>
61847         </callback>
61848       </field>
61849       <field name="rows_reordered">
61850         <callback name="rows_reordered">
61851           <return-value transfer-ownership="none">
61852             <type name="none" c:type="void"/>
61853           </return-value>
61854           <parameters>
61855             <parameter name="tree_model" transfer-ownership="none">
61856               <type name="TreeModel" c:type="GtkTreeModel*"/>
61857             </parameter>
61858             <parameter name="path" transfer-ownership="none">
61859               <type name="TreePath" c:type="GtkTreePath*"/>
61860             </parameter>
61861             <parameter name="iter" transfer-ownership="none">
61862               <type name="TreeIter" c:type="GtkTreeIter*"/>
61863             </parameter>
61864             <parameter name="new_order" transfer-ownership="none">
61865               <type name="gint" c:type="gint*"/>
61866             </parameter>
61867           </parameters>
61868         </callback>
61869       </field>
61870       <field name="get_flags">
61871         <callback name="get_flags">
61872           <return-value transfer-ownership="none">
61873             <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
61874             <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
61875           </return-value>
61876           <parameters>
61877             <parameter name="tree_model" transfer-ownership="none">
61878               <type name="TreeModel" c:type="GtkTreeModel*"/>
61879             </parameter>
61880           </parameters>
61881         </callback>
61882       </field>
61883       <field name="get_n_columns">
61884         <callback name="get_n_columns">
61885           <return-value transfer-ownership="none">
61886             <doc xml:whitespace="preserve">The number of columns.</doc>
61887             <type name="gint" c:type="gint"/>
61888           </return-value>
61889           <parameters>
61890             <parameter name="tree_model" transfer-ownership="none">
61891               <type name="TreeModel" c:type="GtkTreeModel*"/>
61892             </parameter>
61893           </parameters>
61894         </callback>
61895       </field>
61896       <field name="get_column_type">
61897         <callback name="get_column_type">
61898           <return-value transfer-ownership="none">
61899             <doc xml:whitespace="preserve">The type of the column.</doc>
61900             <type name="GType" c:type="GType"/>
61901           </return-value>
61902           <parameters>
61903             <parameter name="tree_model" transfer-ownership="none">
61904               <type name="TreeModel" c:type="GtkTreeModel*"/>
61905             </parameter>
61906             <parameter name="index_" transfer-ownership="none">
61907               <doc xml:whitespace="preserve">The column index.</doc>
61908               <type name="gint" c:type="gint"/>
61909             </parameter>
61910           </parameters>
61911         </callback>
61912       </field>
61913       <field name="get_iter">
61914         <callback name="get_iter">
61915           <return-value transfer-ownership="none">
61916             <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
61917             <type name="gboolean" c:type="gboolean"/>
61918           </return-value>
61919           <parameters>
61920             <parameter name="tree_model" transfer-ownership="none">
61921               <type name="TreeModel" c:type="GtkTreeModel*"/>
61922             </parameter>
61923             <parameter name="iter"
61924                        direction="out"
61925                        caller-allocates="1"
61926                        transfer-ownership="none">
61927               <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
61928               <type name="TreeIter" c:type="GtkTreeIter*"/>
61929             </parameter>
61930             <parameter name="path" transfer-ownership="none">
61931               <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
61932               <type name="TreePath" c:type="GtkTreePath*"/>
61933             </parameter>
61934           </parameters>
61935         </callback>
61936       </field>
61937       <field name="get_path">
61938         <callback name="get_path">
61939           <return-value transfer-ownership="full">
61940             <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
61941             <type name="TreePath" c:type="GtkTreePath*"/>
61942           </return-value>
61943           <parameters>
61944             <parameter name="tree_model" transfer-ownership="none">
61945               <type name="TreeModel" c:type="GtkTreeModel*"/>
61946             </parameter>
61947             <parameter name="iter" transfer-ownership="none">
61948               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61949               <type name="TreeIter" c:type="GtkTreeIter*"/>
61950             </parameter>
61951           </parameters>
61952         </callback>
61953       </field>
61954       <field name="get_value">
61955         <callback name="get_value">
61956           <return-value transfer-ownership="none">
61957             <type name="none" c:type="void"/>
61958           </return-value>
61959           <parameters>
61960             <parameter name="tree_model" transfer-ownership="none">
61961               <type name="TreeModel" c:type="GtkTreeModel*"/>
61962             </parameter>
61963             <parameter name="iter" transfer-ownership="none">
61964               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61965               <type name="TreeIter" c:type="GtkTreeIter*"/>
61966             </parameter>
61967             <parameter name="column" transfer-ownership="none">
61968               <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
61969               <type name="gint" c:type="gint"/>
61970             </parameter>
61971             <parameter name="value"
61972                        direction="out"
61973                        caller-allocates="1"
61974                        transfer-ownership="none">
61975               <doc xml:whitespace="preserve">An empty #GValue to set.</doc>
61976               <type name="GObject.Value" c:type="GValue*"/>
61977             </parameter>
61978           </parameters>
61979         </callback>
61980       </field>
61981       <field name="iter_next">
61982         <callback name="iter_next">
61983           <return-value transfer-ownership="none">
61984             <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
61985             <type name="gboolean" c:type="gboolean"/>
61986           </return-value>
61987           <parameters>
61988             <parameter name="tree_model" transfer-ownership="none">
61989               <type name="TreeModel" c:type="GtkTreeModel*"/>
61990             </parameter>
61991             <parameter name="iter" transfer-ownership="none">
61992               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
61993               <type name="TreeIter" c:type="GtkTreeIter*"/>
61994             </parameter>
61995           </parameters>
61996         </callback>
61997       </field>
61998       <field name="iter_children">
61999         <callback name="iter_children">
62000           <return-value transfer-ownership="none">
62001             <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
62002             <type name="gboolean" c:type="gboolean"/>
62003           </return-value>
62004           <parameters>
62005             <parameter name="tree_model" transfer-ownership="none">
62006               <type name="TreeModel" c:type="GtkTreeModel*"/>
62007             </parameter>
62008             <parameter name="iter"
62009                        direction="out"
62010                        caller-allocates="1"
62011                        transfer-ownership="none">
62012               <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
62013               <type name="TreeIter" c:type="GtkTreeIter*"/>
62014             </parameter>
62015             <parameter name="parent" transfer-ownership="none" allow-none="1">
62016               <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
62017               <type name="TreeIter" c:type="GtkTreeIter*"/>
62018             </parameter>
62019           </parameters>
62020         </callback>
62021       </field>
62022       <field name="iter_has_child">
62023         <callback name="iter_has_child">
62024           <return-value transfer-ownership="none">
62025             <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
62026             <type name="gboolean" c:type="gboolean"/>
62027           </return-value>
62028           <parameters>
62029             <parameter name="tree_model" transfer-ownership="none">
62030               <type name="TreeModel" c:type="GtkTreeModel*"/>
62031             </parameter>
62032             <parameter name="iter" transfer-ownership="none">
62033               <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
62034               <type name="TreeIter" c:type="GtkTreeIter*"/>
62035             </parameter>
62036           </parameters>
62037         </callback>
62038       </field>
62039       <field name="iter_n_children">
62040         <callback name="iter_n_children">
62041           <return-value transfer-ownership="none">
62042             <doc xml:whitespace="preserve">The number of children of @iter.</doc>
62043             <type name="gint" c:type="gint"/>
62044           </return-value>
62045           <parameters>
62046             <parameter name="tree_model" transfer-ownership="none">
62047               <type name="TreeModel" c:type="GtkTreeModel*"/>
62048             </parameter>
62049             <parameter name="iter" transfer-ownership="none" allow-none="1">
62050               <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
62051               <type name="TreeIter" c:type="GtkTreeIter*"/>
62052             </parameter>
62053           </parameters>
62054         </callback>
62055       </field>
62056       <field name="iter_nth_child">
62057         <callback name="iter_nth_child">
62058           <return-value transfer-ownership="none">
62059             <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
62060             <type name="gboolean" c:type="gboolean"/>
62061           </return-value>
62062           <parameters>
62063             <parameter name="tree_model" transfer-ownership="none">
62064               <type name="TreeModel" c:type="GtkTreeModel*"/>
62065             </parameter>
62066             <parameter name="iter"
62067                        direction="out"
62068                        caller-allocates="1"
62069                        transfer-ownership="none">
62070               <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
62071               <type name="TreeIter" c:type="GtkTreeIter*"/>
62072             </parameter>
62073             <parameter name="parent" transfer-ownership="none" allow-none="1">
62074               <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
62075               <type name="TreeIter" c:type="GtkTreeIter*"/>
62076             </parameter>
62077             <parameter name="n" transfer-ownership="none">
62078               <doc xml:whitespace="preserve">Then index of the desired child.</doc>
62079               <type name="gint" c:type="gint"/>
62080             </parameter>
62081           </parameters>
62082         </callback>
62083       </field>
62084       <field name="iter_parent">
62085         <callback name="iter_parent">
62086           <return-value transfer-ownership="none">
62087             <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
62088             <type name="gboolean" c:type="gboolean"/>
62089           </return-value>
62090           <parameters>
62091             <parameter name="tree_model" transfer-ownership="none">
62092               <type name="TreeModel" c:type="GtkTreeModel*"/>
62093             </parameter>
62094             <parameter name="iter"
62095                        direction="out"
62096                        caller-allocates="1"
62097                        transfer-ownership="none">
62098               <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
62099               <type name="TreeIter" c:type="GtkTreeIter*"/>
62100             </parameter>
62101             <parameter name="child" transfer-ownership="none">
62102               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
62103               <type name="TreeIter" c:type="GtkTreeIter*"/>
62104             </parameter>
62105           </parameters>
62106         </callback>
62107       </field>
62108       <field name="ref_node">
62109         <callback name="ref_node">
62110           <return-value transfer-ownership="none">
62111             <type name="none" c:type="void"/>
62112           </return-value>
62113           <parameters>
62114             <parameter name="tree_model" transfer-ownership="none">
62115               <type name="TreeModel" c:type="GtkTreeModel*"/>
62116             </parameter>
62117             <parameter name="iter" transfer-ownership="none">
62118               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
62119               <type name="TreeIter" c:type="GtkTreeIter*"/>
62120             </parameter>
62121           </parameters>
62122         </callback>
62123       </field>
62124       <field name="unref_node">
62125         <callback name="unref_node">
62126           <return-value transfer-ownership="none">
62127             <type name="none" c:type="void"/>
62128           </return-value>
62129           <parameters>
62130             <parameter name="tree_model" transfer-ownership="none">
62131               <type name="TreeModel" c:type="GtkTreeModel*"/>
62132             </parameter>
62133             <parameter name="iter" transfer-ownership="none">
62134               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
62135               <type name="TreeIter" c:type="GtkTreeIter*"/>
62136             </parameter>
62137           </parameters>
62138         </callback>
62139       </field>
62140     </record>
62141     <class name="TreeModelSort"
62142            c:symbol-prefix="tree_model_sort"
62143            c:type="GtkTreeModelSort"
62144            parent="GObject.Object"
62145            glib:type-name="GtkTreeModelSort"
62146            glib:get-type="gtk_tree_model_sort_get_type"
62147            glib:type-struct="TreeModelSortClass">
62148       <implements name="TreeDragSource"/>
62149       <implements name="TreeModel"/>
62150       <implements name="TreeSortable"/>
62151       <method name="clear_cache"
62152               c:identifier="gtk_tree_model_sort_clear_cache">
62153         <doc xml:whitespace="preserve">This function should almost never be called.  It clears the @tree_model_sort
62154 of any cached iterators that haven't been reffed with
62155 gtk_tree_model_ref_node().  This might be useful if the child model being
62156 sorted is static (and doesn't change often) and there has been a lot of
62157 unreffed access to nodes.  As a side effect of this function, all unreffed
62158 iters will be invalid.</doc>
62159         <return-value transfer-ownership="none">
62160           <type name="none" c:type="void"/>
62161         </return-value>
62162       </method>
62163       <method name="convert_child_iter_to_iter"
62164               c:identifier="gtk_tree_model_sort_convert_child_iter_to_iter">
62165         <doc xml:whitespace="preserve">Sets @sort_iter to point to the row in @tree_model_sort that corresponds to
62166 the row pointed at by @child_iter.  If @sort_iter was not set, %FALSE
62167 valid iterator pointer to a visible row in the child model.</doc>
62168         <return-value transfer-ownership="none">
62169           <doc xml:whitespace="preserve">%TRUE, if @sort_iter was set, i.e. if @sort_iter is a</doc>
62170           <type name="gboolean" c:type="gboolean"/>
62171         </return-value>
62172         <parameters>
62173           <parameter name="sort_iter"
62174                      direction="out"
62175                      caller-allocates="1"
62176                      transfer-ownership="none">
62177             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
62178             <type name="TreeIter" c:type="GtkTreeIter*"/>
62179           </parameter>
62180           <parameter name="child_iter" transfer-ownership="none">
62181             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on the child model</doc>
62182             <type name="TreeIter" c:type="GtkTreeIter*"/>
62183           </parameter>
62184         </parameters>
62185       </method>
62186       <method name="convert_child_path_to_path"
62187               c:identifier="gtk_tree_model_sort_convert_child_path_to_path">
62188         <doc xml:whitespace="preserve">Converts @child_path to a path relative to @tree_model_sort.  That is,
62189 point to the same row in the sorted model.  If @child_path isn't a valid 
62190 path on the child model, then %NULL is returned.</doc>
62191         <return-value transfer-ownership="full">
62192           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL</doc>
62193           <type name="TreePath" c:type="GtkTreePath*"/>
62194         </return-value>
62195         <parameters>
62196           <parameter name="child_path" transfer-ownership="none">
62197             <doc xml:whitespace="preserve">A #GtkTreePath to convert</doc>
62198             <type name="TreePath" c:type="GtkTreePath*"/>
62199           </parameter>
62200         </parameters>
62201       </method>
62202       <method name="convert_iter_to_child_iter"
62203               c:identifier="gtk_tree_model_sort_convert_iter_to_child_iter">
62204         <doc xml:whitespace="preserve">Sets @child_iter to point to the row pointed to by @sorted_iter.</doc>
62205         <return-value transfer-ownership="none">
62206           <type name="none" c:type="void"/>
62207         </return-value>
62208         <parameters>
62209           <parameter name="child_iter"
62210                      direction="out"
62211                      caller-allocates="1"
62212                      transfer-ownership="none">
62213             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter</doc>
62214             <type name="TreeIter" c:type="GtkTreeIter*"/>
62215           </parameter>
62216           <parameter name="sorted_iter" transfer-ownership="none">
62217             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on @tree_model_sort.</doc>
62218             <type name="TreeIter" c:type="GtkTreeIter*"/>
62219           </parameter>
62220         </parameters>
62221       </method>
62222       <method name="convert_path_to_child_path"
62223               c:identifier="gtk_tree_model_sort_convert_path_to_child_path">
62224         <doc xml:whitespace="preserve">Converts @sorted_path to a path on the child model of @tree_model_sort.  
62225 That is, @sorted_path points to a location in @tree_model_sort.  The 
62226 returned path will point to the same location in the model not being 
62227 sorted.  If @sorted_path does not point to a location in the child model, 
62228 %NULL is returned.</doc>
62229         <return-value transfer-ownership="full">
62230           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL</doc>
62231           <type name="TreePath" c:type="GtkTreePath*"/>
62232         </return-value>
62233         <parameters>
62234           <parameter name="sorted_path" transfer-ownership="none">
62235             <doc xml:whitespace="preserve">A #GtkTreePath to convert</doc>
62236             <type name="TreePath" c:type="GtkTreePath*"/>
62237           </parameter>
62238         </parameters>
62239       </method>
62240       <method name="get_model" c:identifier="gtk_tree_model_sort_get_model">
62241         <doc xml:whitespace="preserve">Returns the model the #GtkTreeModelSort is sorting.</doc>
62242         <return-value transfer-ownership="none">
62243           <doc xml:whitespace="preserve">the "child model" being sorted</doc>
62244           <type name="TreeModel" c:type="GtkTreeModel*"/>
62245         </return-value>
62246       </method>
62247       <method name="iter_is_valid"
62248               c:identifier="gtk_tree_model_sort_iter_is_valid"
62249               version="2.2">
62250         <doc xml:whitespace="preserve">&lt;warning&gt;&lt;para&gt;
62251 This function is slow. Only use it for debugging and/or testing purposes.
62252 &lt;/para&gt;&lt;/warning&gt;
62253 Checks if the given iter is a valid iter for this #GtkTreeModelSort.</doc>
62254         <return-value transfer-ownership="none">
62255           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
62256           <type name="gboolean" c:type="gboolean"/>
62257         </return-value>
62258         <parameters>
62259           <parameter name="iter" transfer-ownership="none">
62260             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
62261             <type name="TreeIter" c:type="GtkTreeIter*"/>
62262           </parameter>
62263         </parameters>
62264       </method>
62265       <method name="reset_default_sort_func"
62266               c:identifier="gtk_tree_model_sort_reset_default_sort_func">
62267         <doc xml:whitespace="preserve">This resets the default sort function to be in the 'unsorted' state.  That
62268 is, it is in the same order as the child model. It will re-sort the model
62269 to be in the same order as the child model only if the #GtkTreeModelSort
62270 is in 'unsorted' state.</doc>
62271         <return-value transfer-ownership="none">
62272           <type name="none" c:type="void"/>
62273         </return-value>
62274       </method>
62275       <property name="model"
62276                 writable="1"
62277                 construct-only="1"
62278                 transfer-ownership="none">
62279         <type name="TreeModel"/>
62280       </property>
62281       <field name="parent">
62282         <type name="GObject.Object" c:type="GObject"/>
62283       </field>
62284       <field name="root" readable="0" private="1">
62285         <type name="gpointer" c:type="gpointer"/>
62286       </field>
62287       <field name="stamp" readable="0" private="1">
62288         <type name="gint" c:type="gint"/>
62289       </field>
62290       <field name="child_flags" readable="0" private="1">
62291         <type name="guint" c:type="guint"/>
62292       </field>
62293       <field name="child_model" readable="0" private="1">
62294         <type name="TreeModel" c:type="GtkTreeModel*"/>
62295       </field>
62296       <field name="zero_ref_count" readable="0" private="1">
62297         <type name="gint" c:type="gint"/>
62298       </field>
62299       <field name="sort_list" readable="0" private="1">
62300         <type name="GLib.List" c:type="GList*">
62301           <type name="gpointer" c:type="gpointer"/>
62302         </type>
62303       </field>
62304       <field name="sort_column_id" readable="0" private="1">
62305         <type name="gint" c:type="gint"/>
62306       </field>
62307       <field name="order" readable="0" private="1">
62308         <type name="SortType" c:type="GtkSortType"/>
62309       </field>
62310       <field name="default_sort_func" readable="0" private="1">
62311         <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
62312       </field>
62313       <field name="default_sort_data" readable="0" private="1">
62314         <type name="gpointer" c:type="gpointer"/>
62315       </field>
62316       <field name="default_sort_destroy" readable="0" private="1">
62317         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
62318       </field>
62319       <field name="changed_id" readable="0" private="1">
62320         <type name="guint" c:type="guint"/>
62321       </field>
62322       <field name="inserted_id" readable="0" private="1">
62323         <type name="guint" c:type="guint"/>
62324       </field>
62325       <field name="has_child_toggled_id" readable="0" private="1">
62326         <type name="guint" c:type="guint"/>
62327       </field>
62328       <field name="deleted_id" readable="0" private="1">
62329         <type name="guint" c:type="guint"/>
62330       </field>
62331       <field name="reordered_id" readable="0" private="1">
62332         <type name="guint" c:type="guint"/>
62333       </field>
62334     </class>
62335     <record name="TreeModelSortClass"
62336             c:type="GtkTreeModelSortClass"
62337             glib:is-gtype-struct-for="TreeModelSort">
62338       <field name="parent_class">
62339         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
62340       </field>
62341       <field name="_gtk_reserved1" introspectable="0">
62342         <callback name="_gtk_reserved1">
62343           <return-value transfer-ownership="none">
62344             <type name="none" c:type="void"/>
62345           </return-value>
62346         </callback>
62347       </field>
62348       <field name="_gtk_reserved2" introspectable="0">
62349         <callback name="_gtk_reserved2">
62350           <return-value transfer-ownership="none">
62351             <type name="none" c:type="void"/>
62352           </return-value>
62353         </callback>
62354       </field>
62355       <field name="_gtk_reserved3" introspectable="0">
62356         <callback name="_gtk_reserved3">
62357           <return-value transfer-ownership="none">
62358             <type name="none" c:type="void"/>
62359           </return-value>
62360         </callback>
62361       </field>
62362       <field name="_gtk_reserved4" introspectable="0">
62363         <callback name="_gtk_reserved4">
62364           <return-value transfer-ownership="none">
62365             <type name="none" c:type="void"/>
62366           </return-value>
62367         </callback>
62368       </field>
62369     </record>
62370     <record name="TreePath"
62371             c:type="GtkTreePath"
62372             glib:type-name="GtkTreePath"
62373             glib:get-type="gtk_tree_path_get_type"
62374             c:symbol-prefix="tree_path">
62375       <constructor name="new" c:identifier="gtk_tree_path_new">
62376         <doc xml:whitespace="preserve">Creates a new #GtkTreePath.  This structure refers to a row.</doc>
62377         <return-value transfer-ownership="full">
62378           <doc xml:whitespace="preserve">A newly created #GtkTreePath.</doc>
62379           <type name="TreePath" c:type="GtkTreePath*"/>
62380         </return-value>
62381       </constructor>
62382       <constructor name="new_first" c:identifier="gtk_tree_path_new_first">
62383         <doc xml:whitespace="preserve">Creates a new #GtkTreePath.  The string representation of this path is "0"</doc>
62384         <return-value transfer-ownership="full">
62385           <doc xml:whitespace="preserve">A new #GtkTreePath.</doc>
62386           <type name="TreePath" c:type="GtkTreePath*"/>
62387         </return-value>
62388       </constructor>
62389       <constructor name="new_from_indices"
62390                    c:identifier="gtk_tree_path_new_from_indices"
62391                    version="2.2"
62392                    introspectable="0">
62393         <doc xml:whitespace="preserve">Creates a new path with @first_index and @varargs as indices.</doc>
62394         <return-value transfer-ownership="full">
62395           <doc xml:whitespace="preserve">A newly created #GtkTreePath.</doc>
62396           <type name="TreePath" c:type="GtkTreePath*"/>
62397         </return-value>
62398         <parameters>
62399           <parameter name="first_index" transfer-ownership="none">
62400             <doc xml:whitespace="preserve">first integer</doc>
62401             <type name="gint" c:type="gint"/>
62402           </parameter>
62403           <parameter transfer-ownership="none">
62404             <varargs>
62405             </varargs>
62406           </parameter>
62407         </parameters>
62408       </constructor>
62409       <constructor name="new_from_string"
62410                    c:identifier="gtk_tree_path_new_from_string">
62411         <doc xml:whitespace="preserve">Creates a new #GtkTreePath initialized to @path.  @path is expected to be a
62412 colon separated list of numbers.  For example, the string "10:4:0" would
62413 create a path of depth 3 pointing to the 11th child of the root node, the 5th
62414 child of that 11th child, and the 1st child of that 5th child.  If an invalid
62415 path string is passed in, %NULL is returned.</doc>
62416         <return-value transfer-ownership="full">
62417           <doc xml:whitespace="preserve">A newly-created #GtkTreePath, or %NULL</doc>
62418           <type name="TreePath" c:type="GtkTreePath*"/>
62419         </return-value>
62420         <parameters>
62421           <parameter name="path" transfer-ownership="none">
62422             <doc xml:whitespace="preserve">The string representation of a path.</doc>
62423             <type name="utf8" c:type="gchar*"/>
62424           </parameter>
62425         </parameters>
62426       </constructor>
62427       <method name="append_index" c:identifier="gtk_tree_path_append_index">
62428         <doc xml:whitespace="preserve">Appends a new index to a path.  As a result, the depth of the path is
62429 increased.</doc>
62430         <return-value transfer-ownership="none">
62431           <type name="none" c:type="void"/>
62432         </return-value>
62433         <parameters>
62434           <parameter name="index_" transfer-ownership="none">
62435             <doc xml:whitespace="preserve">The index.</doc>
62436             <type name="gint" c:type="gint"/>
62437           </parameter>
62438         </parameters>
62439       </method>
62440       <method name="compare" c:identifier="gtk_tree_path_compare">
62441         <doc xml:whitespace="preserve">Compares two paths.  If @a appears before @b in a tree, then -1 is returned.
62442 If @b appears before @a, then 1 is returned.  If the two nodes are equal,
62443 then 0 is returned.</doc>
62444         <return-value transfer-ownership="none">
62445           <doc xml:whitespace="preserve">The relative positions of @a and @b</doc>
62446           <type name="gint" c:type="gint"/>
62447         </return-value>
62448         <parameters>
62449           <parameter name="b" transfer-ownership="none">
62450             <doc xml:whitespace="preserve">A #GtkTreePath to compare with.</doc>
62451             <type name="TreePath" c:type="GtkTreePath*"/>
62452           </parameter>
62453         </parameters>
62454       </method>
62455       <method name="copy" c:identifier="gtk_tree_path_copy">
62456         <doc xml:whitespace="preserve">Creates a new #GtkTreePath as a copy of @path.</doc>
62457         <return-value transfer-ownership="full">
62458           <doc xml:whitespace="preserve">A new #GtkTreePath.</doc>
62459           <type name="TreePath" c:type="GtkTreePath*"/>
62460         </return-value>
62461       </method>
62462       <method name="down" c:identifier="gtk_tree_path_down">
62463         <doc xml:whitespace="preserve">Moves @path to point to the first child of the current path.</doc>
62464         <return-value transfer-ownership="none">
62465           <type name="none" c:type="void"/>
62466         </return-value>
62467       </method>
62468       <method name="free" c:identifier="gtk_tree_path_free">
62469         <doc xml:whitespace="preserve">Frees @path.</doc>
62470         <return-value transfer-ownership="none">
62471           <type name="none" c:type="void"/>
62472         </return-value>
62473       </method>
62474       <method name="get_depth" c:identifier="gtk_tree_path_get_depth">
62475         <doc xml:whitespace="preserve">Returns the current depth of @path.</doc>
62476         <return-value transfer-ownership="none">
62477           <doc xml:whitespace="preserve">The depth of @path</doc>
62478           <type name="gint" c:type="gint"/>
62479         </return-value>
62480       </method>
62481       <method name="get_indices"
62482               c:identifier="gtk_tree_path_get_indices"
62483               shadowed-by="get_indices_with_depth">
62484         <doc xml:whitespace="preserve">Returns the current indices of @path.  This is an array of integers, each
62485 representing a node in a tree.  This value should not be freed.</doc>
62486         <return-value transfer-ownership="none">
62487           <doc xml:whitespace="preserve">The current indices, or %NULL.</doc>
62488           <type name="gint" c:type="gint*"/>
62489         </return-value>
62490       </method>
62491       <method name="get_indices_with_depth"
62492               c:identifier="gtk_tree_path_get_indices_with_depth"
62493               shadows="get_indices"
62494               version="3.0">
62495         <doc xml:whitespace="preserve">Returns the current indices of @path.
62496 This is an array of integers, each representing a node in a tree.
62497 It also returns the number of elements in the array.
62498 The array should not be freed.</doc>
62499         <return-value transfer-ownership="none">
62500           <doc xml:whitespace="preserve">The current indices, or %NULL.</doc>
62501           <array length="0" c:type="gint*">
62502             <type name="gint"/>
62503           </array>
62504         </return-value>
62505         <parameters>
62506           <parameter name="depth"
62507                      direction="out"
62508                      caller-allocates="0"
62509                      transfer-ownership="full">
62510             <doc xml:whitespace="preserve">Number of elements returned in the integer array</doc>
62511             <type name="gint" c:type="gint*"/>
62512           </parameter>
62513         </parameters>
62514       </method>
62515       <method name="is_ancestor" c:identifier="gtk_tree_path_is_ancestor">
62516         <doc xml:whitespace="preserve">Returns %TRUE if @descendant is a descendant of @path.</doc>
62517         <return-value transfer-ownership="none">
62518           <doc xml:whitespace="preserve">%TRUE if @descendant is contained inside @path</doc>
62519           <type name="gboolean" c:type="gboolean"/>
62520         </return-value>
62521         <parameters>
62522           <parameter name="descendant" transfer-ownership="none">
62523             <doc xml:whitespace="preserve">another #GtkTreePath</doc>
62524             <type name="TreePath" c:type="GtkTreePath*"/>
62525           </parameter>
62526         </parameters>
62527       </method>
62528       <method name="is_descendant" c:identifier="gtk_tree_path_is_descendant">
62529         <doc xml:whitespace="preserve">Returns %TRUE if @path is a descendant of @ancestor.</doc>
62530         <return-value transfer-ownership="none">
62531           <doc xml:whitespace="preserve">%TRUE if @ancestor contains @path somewhere below it</doc>
62532           <type name="gboolean" c:type="gboolean"/>
62533         </return-value>
62534         <parameters>
62535           <parameter name="ancestor" transfer-ownership="none">
62536             <doc xml:whitespace="preserve">another #GtkTreePath</doc>
62537             <type name="TreePath" c:type="GtkTreePath*"/>
62538           </parameter>
62539         </parameters>
62540       </method>
62541       <method name="next" c:identifier="gtk_tree_path_next">
62542         <doc xml:whitespace="preserve">Moves the @path to point to the next node at the current depth.</doc>
62543         <return-value transfer-ownership="none">
62544           <type name="none" c:type="void"/>
62545         </return-value>
62546       </method>
62547       <method name="prepend_index" c:identifier="gtk_tree_path_prepend_index">
62548         <doc xml:whitespace="preserve">Prepends a new index to a path.  As a result, the depth of the path is
62549 increased.</doc>
62550         <return-value transfer-ownership="none">
62551           <type name="none" c:type="void"/>
62552         </return-value>
62553         <parameters>
62554           <parameter name="index_" transfer-ownership="none">
62555             <doc xml:whitespace="preserve">The index.</doc>
62556             <type name="gint" c:type="gint"/>
62557           </parameter>
62558         </parameters>
62559       </method>
62560       <method name="prev" c:identifier="gtk_tree_path_prev">
62561         <doc xml:whitespace="preserve">Moves the @path to point to the previous node at the current depth, 
62562 if it exists.</doc>
62563         <return-value transfer-ownership="none">
62564           <doc xml:whitespace="preserve">%TRUE if @path has a previous node, and the move was made.</doc>
62565           <type name="gboolean" c:type="gboolean"/>
62566         </return-value>
62567       </method>
62568       <method name="to_string" c:identifier="gtk_tree_path_to_string">
62569         <doc xml:whitespace="preserve">Generates a string representation of the path.  This string is a ':'
62570 separated list of numbers.  For example, "4:10:0:3" would be an acceptable return value for this string.</doc>
62571         <return-value transfer-ownership="full">
62572           <doc xml:whitespace="preserve">A newly-allocated string.  Must be freed with g_free().</doc>
62573           <type name="utf8" c:type="gchar*"/>
62574         </return-value>
62575       </method>
62576       <method name="up" c:identifier="gtk_tree_path_up">
62577         <doc xml:whitespace="preserve">Moves the @path to point to its parent node, if it has a parent.</doc>
62578         <return-value transfer-ownership="none">
62579           <doc xml:whitespace="preserve">%TRUE if @path has a parent, and the move was made.</doc>
62580           <type name="gboolean" c:type="gboolean"/>
62581         </return-value>
62582       </method>
62583     </record>
62584     <record name="TreeRowReference"
62585             c:type="GtkTreeRowReference"
62586             glib:type-name="GtkTreeRowReference"
62587             glib:get-type="gtk_tree_row_reference_get_type"
62588             c:symbol-prefix="tree_row_reference">
62589       <constructor name="new" c:identifier="gtk_tree_row_reference_new">
62590         <doc xml:whitespace="preserve">Creates a row reference based on @path.  This reference will keep pointing 
62591 to the node pointed to by @path, so long as it exists.  It listens to all
62592 signals emitted by @model, and updates its path appropriately.  If @path
62593 isn't a valid path in @model, then %NULL is returned.</doc>
62594         <return-value transfer-ownership="full">
62595           <doc xml:whitespace="preserve">A newly allocated #GtkTreeRowReference, or %NULL</doc>
62596           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
62597         </return-value>
62598         <parameters>
62599           <parameter name="model" transfer-ownership="none">
62600             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
62601             <type name="TreeModel" c:type="GtkTreeModel*"/>
62602           </parameter>
62603           <parameter name="path" transfer-ownership="none">
62604             <doc xml:whitespace="preserve">A valid #GtkTreePath to monitor</doc>
62605             <type name="TreePath" c:type="GtkTreePath*"/>
62606           </parameter>
62607         </parameters>
62608       </constructor>
62609       <constructor name="new_proxy"
62610                    c:identifier="gtk_tree_row_reference_new_proxy">
62611         <doc xml:whitespace="preserve">You do not need to use this function.  Creates a row reference based on
62612 so long as it exists.  If @path isn't a valid path in @model, then %NULL is
62613 returned.  However, unlike references created with
62614 gtk_tree_row_reference_new(), it does not listen to the model for changes.
62615 The creator of the row reference must do this explicitly using
62616 gtk_tree_row_reference_inserted(), gtk_tree_row_reference_deleted(),
62617 gtk_tree_row_reference_reordered().
62618 These functions must be called exactly once per proxy when the
62619 corresponding signal on the model is emitted. This single call
62620 updates all row references for that proxy. Since built-in GTK+
62621 objects like #GtkTreeView already use this mechanism internally,
62622 using them as the proxy object will produce unpredictable results.
62623 Further more, passing the same object as @model and @proxy
62624 doesn't work for reasons of internal implementation.
62625 This type of row reference is primarily meant by structures that need to
62626 carefully monitor exactly when a row reference updates itself, and is not
62627 generally needed by most applications.</doc>
62628         <return-value transfer-ownership="full">
62629           <doc xml:whitespace="preserve">A newly allocated #GtkTreeRowReference, or %NULL</doc>
62630           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
62631         </return-value>
62632         <parameters>
62633           <parameter name="proxy" transfer-ownership="none">
62634             <doc xml:whitespace="preserve">A proxy #GObject</doc>
62635             <type name="GObject.Object" c:type="GObject*"/>
62636           </parameter>
62637           <parameter name="model" transfer-ownership="none">
62638             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
62639             <type name="TreeModel" c:type="GtkTreeModel*"/>
62640           </parameter>
62641           <parameter name="path" transfer-ownership="none">
62642             <doc xml:whitespace="preserve">A valid #GtkTreePath to monitor</doc>
62643             <type name="TreePath" c:type="GtkTreePath*"/>
62644           </parameter>
62645         </parameters>
62646       </constructor>
62647       <method name="copy"
62648               c:identifier="gtk_tree_row_reference_copy"
62649               version="2.2">
62650         <doc xml:whitespace="preserve">Copies a #GtkTreeRowReference.</doc>
62651         <return-value transfer-ownership="full">
62652           <doc xml:whitespace="preserve">a copy of @reference.</doc>
62653           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
62654         </return-value>
62655       </method>
62656       <method name="free" c:identifier="gtk_tree_row_reference_free">
62657         <doc xml:whitespace="preserve">Free's @reference. @reference may be %NULL.</doc>
62658         <return-value transfer-ownership="none">
62659           <type name="none" c:type="void"/>
62660         </return-value>
62661       </method>
62662       <method name="get_model"
62663               c:identifier="gtk_tree_row_reference_get_model"
62664               version="2.8">
62665         <doc xml:whitespace="preserve">Returns the model that the row reference is monitoring.</doc>
62666         <return-value transfer-ownership="none">
62667           <doc xml:whitespace="preserve">the model</doc>
62668           <type name="TreeModel" c:type="GtkTreeModel*"/>
62669         </return-value>
62670       </method>
62671       <method name="get_path" c:identifier="gtk_tree_row_reference_get_path">
62672         <doc xml:whitespace="preserve">Returns a path that the row reference currently points to, or %NULL if the
62673 path pointed to is no longer valid.</doc>
62674         <return-value transfer-ownership="full">
62675           <doc xml:whitespace="preserve">A current path, or %NULL.</doc>
62676           <type name="TreePath" c:type="GtkTreePath*"/>
62677         </return-value>
62678       </method>
62679       <method name="valid" c:identifier="gtk_tree_row_reference_valid">
62680         <doc xml:whitespace="preserve">Returns %TRUE if the @reference is non-%NULL and refers to a current valid
62681 path.</doc>
62682         <return-value transfer-ownership="none">
62683           <doc xml:whitespace="preserve">%TRUE if @reference points to a valid path.</doc>
62684           <type name="gboolean" c:type="gboolean"/>
62685         </return-value>
62686       </method>
62687     </record>
62688     <class name="TreeSelection"
62689            c:symbol-prefix="tree_selection"
62690            c:type="GtkTreeSelection"
62691            parent="GObject.Object"
62692            glib:type-name="GtkTreeSelection"
62693            glib:get-type="gtk_tree_selection_get_type"
62694            glib:type-struct="TreeSelectionClass">
62695       <method name="count_selected_rows"
62696               c:identifier="gtk_tree_selection_count_selected_rows"
62697               version="2.2">
62698         <doc xml:whitespace="preserve">Returns the number of rows that have been selected in @tree.</doc>
62699         <return-value transfer-ownership="none">
62700           <doc xml:whitespace="preserve">The number of rows selected.</doc>
62701           <type name="gint" c:type="gint"/>
62702         </return-value>
62703       </method>
62704       <method name="get_mode" c:identifier="gtk_tree_selection_get_mode">
62705         <doc xml:whitespace="preserve">Gets the selection mode for @selection. See
62706 gtk_tree_selection_set_mode().</doc>
62707         <return-value transfer-ownership="none">
62708           <doc xml:whitespace="preserve">the current selection mode</doc>
62709           <type name="SelectionMode" c:type="GtkSelectionMode"/>
62710         </return-value>
62711       </method>
62712       <method name="get_select_function"
62713               c:identifier="gtk_tree_selection_get_select_function"
62714               version="2.14"
62715               introspectable="0">
62716         <doc xml:whitespace="preserve">Returns the current selection function.</doc>
62717         <return-value>
62718           <doc xml:whitespace="preserve">The function.</doc>
62719           <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
62720         </return-value>
62721       </method>
62722       <method name="get_selected"
62723               c:identifier="gtk_tree_selection_get_selected">
62724         <doc xml:whitespace="preserve">Sets @iter to the currently selected node if @selection is set to
62725 #GTK_SELECTION_SINGLE or #GTK_SELECTION_BROWSE.  @iter may be NULL if you
62726 just want to test if @selection has any selected nodes.  @model is filled
62727 with the current model as a convenience.  This function will not work if you
62728 use @selection is #GTK_SELECTION_MULTIPLE.</doc>
62729         <return-value transfer-ownership="none">
62730           <doc xml:whitespace="preserve">TRUE, if there is a selected node.</doc>
62731           <type name="gboolean" c:type="gboolean"/>
62732         </return-value>
62733         <parameters>
62734           <parameter name="model"
62735                      direction="out"
62736                      caller-allocates="0"
62737                      transfer-ownership="none"
62738                      allow-none="1">
62739             <doc xml:whitespace="preserve">A pointer to set to the #GtkTreeModel, or NULL.</doc>
62740             <type name="TreeModel" c:type="GtkTreeModel**"/>
62741           </parameter>
62742           <parameter name="iter"
62743                      direction="out"
62744                      caller-allocates="1"
62745                      transfer-ownership="none"
62746                      allow-none="1">
62747             <doc xml:whitespace="preserve">The #GtkTreeIter, or NULL.</doc>
62748             <type name="TreeIter" c:type="GtkTreeIter*"/>
62749           </parameter>
62750         </parameters>
62751       </method>
62752       <method name="get_selected_rows"
62753               c:identifier="gtk_tree_selection_get_selected_rows"
62754               version="2.2">
62755         <doc xml:whitespace="preserve">Creates a list of path of all selected rows. Additionally, if you are
62756 planning on modifying the model after calling this function, you may
62757 want to convert the returned list into a list of #GtkTreeRowReference&lt;!-- --&gt;s.
62758 To do this, you can use gtk_tree_row_reference_new().
62759 To free the return value, use:
62760 |[
62761 g_list_foreach (list, (GFunc) gtk_tree_path_free, NULL);
62762 g_list_free (list);
62763 ]|</doc>
62764         <return-value transfer-ownership="full">
62765           <doc xml:whitespace="preserve">A #GList containing a #GtkTreePath for each selected row.</doc>
62766           <type name="GLib.List" c:type="GList*">
62767             <type name="TreePath"/>
62768           </type>
62769         </return-value>
62770         <parameters>
62771           <parameter name="model"
62772                      direction="out"
62773                      caller-allocates="0"
62774                      transfer-ownership="none"
62775                      allow-none="1">
62776             <doc xml:whitespace="preserve">A pointer to set to the #GtkTreeModel, or %NULL.</doc>
62777             <type name="TreeModel" c:type="GtkTreeModel**"/>
62778           </parameter>
62779         </parameters>
62780       </method>
62781       <method name="get_tree_view"
62782               c:identifier="gtk_tree_selection_get_tree_view">
62783         <doc xml:whitespace="preserve">Returns the tree view associated with @selection.</doc>
62784         <return-value transfer-ownership="none">
62785           <doc xml:whitespace="preserve">A #GtkTreeView</doc>
62786           <type name="TreeView" c:type="GtkTreeView*"/>
62787         </return-value>
62788       </method>
62789       <method name="get_user_data"
62790               c:identifier="gtk_tree_selection_get_user_data"
62791               introspectable="0">
62792         <doc xml:whitespace="preserve">Returns the user data for the selection function.</doc>
62793         <return-value>
62794           <doc xml:whitespace="preserve">The user data.</doc>
62795           <type name="gpointer" c:type="gpointer"/>
62796         </return-value>
62797       </method>
62798       <method name="iter_is_selected"
62799               c:identifier="gtk_tree_selection_iter_is_selected">
62800         <doc xml:whitespace="preserve">Returns %TRUE if the row at @iter is currently selected.</doc>
62801         <return-value transfer-ownership="none">
62802           <doc xml:whitespace="preserve">%TRUE, if @iter is selected</doc>
62803           <type name="gboolean" c:type="gboolean"/>
62804         </return-value>
62805         <parameters>
62806           <parameter name="iter" transfer-ownership="none">
62807             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
62808             <type name="TreeIter" c:type="GtkTreeIter*"/>
62809           </parameter>
62810         </parameters>
62811       </method>
62812       <method name="path_is_selected"
62813               c:identifier="gtk_tree_selection_path_is_selected">
62814         <doc xml:whitespace="preserve">Returns %TRUE if the row pointed to by @path is currently selected.  If @path
62815 does not point to a valid location, %FALSE is returned</doc>
62816         <return-value transfer-ownership="none">
62817           <doc xml:whitespace="preserve">%TRUE if @path is selected.</doc>
62818           <type name="gboolean" c:type="gboolean"/>
62819         </return-value>
62820         <parameters>
62821           <parameter name="path" transfer-ownership="none">
62822             <doc xml:whitespace="preserve">A #GtkTreePath to check selection on.</doc>
62823             <type name="TreePath" c:type="GtkTreePath*"/>
62824           </parameter>
62825         </parameters>
62826       </method>
62827       <method name="select_all" c:identifier="gtk_tree_selection_select_all">
62828         <doc xml:whitespace="preserve">Selects all the nodes. @selection must be set to #GTK_SELECTION_MULTIPLE
62829 mode.</doc>
62830         <return-value transfer-ownership="none">
62831           <type name="none" c:type="void"/>
62832         </return-value>
62833       </method>
62834       <method name="select_iter" c:identifier="gtk_tree_selection_select_iter">
62835         <doc xml:whitespace="preserve">Selects the specified iterator.</doc>
62836         <return-value transfer-ownership="none">
62837           <type name="none" c:type="void"/>
62838         </return-value>
62839         <parameters>
62840           <parameter name="iter" transfer-ownership="none">
62841             <doc xml:whitespace="preserve">The #GtkTreeIter to be selected.</doc>
62842             <type name="TreeIter" c:type="GtkTreeIter*"/>
62843           </parameter>
62844         </parameters>
62845       </method>
62846       <method name="select_path" c:identifier="gtk_tree_selection_select_path">
62847         <doc xml:whitespace="preserve">Select the row at @path.</doc>
62848         <return-value transfer-ownership="none">
62849           <type name="none" c:type="void"/>
62850         </return-value>
62851         <parameters>
62852           <parameter name="path" transfer-ownership="none">
62853             <doc xml:whitespace="preserve">The #GtkTreePath to be selected.</doc>
62854             <type name="TreePath" c:type="GtkTreePath*"/>
62855           </parameter>
62856         </parameters>
62857       </method>
62858       <method name="select_range"
62859               c:identifier="gtk_tree_selection_select_range">
62860         <doc xml:whitespace="preserve">Selects a range of nodes, determined by @start_path and @end_path inclusive.</doc>
62861         <return-value transfer-ownership="none">
62862           <type name="none" c:type="void"/>
62863         </return-value>
62864         <parameters>
62865           <parameter name="start_path" transfer-ownership="none">
62866             <doc xml:whitespace="preserve">The initial node of the range.</doc>
62867             <type name="TreePath" c:type="GtkTreePath*"/>
62868           </parameter>
62869           <parameter name="end_path" transfer-ownership="none">
62870             <doc xml:whitespace="preserve">The final node of the range.</doc>
62871             <type name="TreePath" c:type="GtkTreePath*"/>
62872           </parameter>
62873         </parameters>
62874       </method>
62875       <method name="selected_foreach"
62876               c:identifier="gtk_tree_selection_selected_foreach">
62877         <doc xml:whitespace="preserve">Calls a function for each selected node. Note that you cannot modify
62878 the tree or selection from within this function. As a result,
62879 gtk_tree_selection_get_selected_rows() might be more useful.</doc>
62880         <return-value transfer-ownership="none">
62881           <type name="none" c:type="void"/>
62882         </return-value>
62883         <parameters>
62884           <parameter name="func"
62885                      transfer-ownership="none"
62886                      scope="call"
62887                      closure="1">
62888             <doc xml:whitespace="preserve">The function to call for each selected node.</doc>
62889             <type name="TreeSelectionForeachFunc"
62890                   c:type="GtkTreeSelectionForeachFunc"/>
62891           </parameter>
62892           <parameter name="data" transfer-ownership="none">
62893             <doc xml:whitespace="preserve">user data to pass to the function.</doc>
62894             <type name="gpointer" c:type="gpointer"/>
62895           </parameter>
62896         </parameters>
62897       </method>
62898       <method name="set_mode" c:identifier="gtk_tree_selection_set_mode">
62899         <doc xml:whitespace="preserve">Sets the selection mode of the @selection.  If the previous type was
62900 #GTK_SELECTION_MULTIPLE, then the anchor is kept selected, if it was
62901 previously selected.</doc>
62902         <return-value transfer-ownership="none">
62903           <type name="none" c:type="void"/>
62904         </return-value>
62905         <parameters>
62906           <parameter name="type" transfer-ownership="none">
62907             <doc xml:whitespace="preserve">The selection mode</doc>
62908             <type name="SelectionMode" c:type="GtkSelectionMode"/>
62909           </parameter>
62910         </parameters>
62911       </method>
62912       <method name="set_select_function"
62913               c:identifier="gtk_tree_selection_set_select_function">
62914         <doc xml:whitespace="preserve">Sets the selection function.
62915 If set, this function is called before any node is selected or unselected,
62916 giving some control over which nodes are selected. The select function
62917 should return %TRUE if the state of the node may be toggled, and %FALSE
62918 if the state of the node should be left unchanged.</doc>
62919         <return-value transfer-ownership="none">
62920           <type name="none" c:type="void"/>
62921         </return-value>
62922         <parameters>
62923           <parameter name="func"
62924                      transfer-ownership="none"
62925                      scope="notified"
62926                      closure="1"
62927                      destroy="2">
62928             <doc xml:whitespace="preserve">The selection function. May be %NULL</doc>
62929             <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
62930           </parameter>
62931           <parameter name="data" transfer-ownership="none">
62932             <doc xml:whitespace="preserve">The selection function's data. May be %NULL</doc>
62933             <type name="gpointer" c:type="gpointer"/>
62934           </parameter>
62935           <parameter name="destroy" transfer-ownership="none" scope="async">
62936             <doc xml:whitespace="preserve">The destroy function for user data.  May be %NULL</doc>
62937             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
62938           </parameter>
62939         </parameters>
62940       </method>
62941       <method name="unselect_all"
62942               c:identifier="gtk_tree_selection_unselect_all">
62943         <doc xml:whitespace="preserve">Unselects all the nodes.</doc>
62944         <return-value transfer-ownership="none">
62945           <type name="none" c:type="void"/>
62946         </return-value>
62947       </method>
62948       <method name="unselect_iter"
62949               c:identifier="gtk_tree_selection_unselect_iter">
62950         <doc xml:whitespace="preserve">Unselects the specified iterator.</doc>
62951         <return-value transfer-ownership="none">
62952           <type name="none" c:type="void"/>
62953         </return-value>
62954         <parameters>
62955           <parameter name="iter" transfer-ownership="none">
62956             <doc xml:whitespace="preserve">The #GtkTreeIter to be unselected.</doc>
62957             <type name="TreeIter" c:type="GtkTreeIter*"/>
62958           </parameter>
62959         </parameters>
62960       </method>
62961       <method name="unselect_path"
62962               c:identifier="gtk_tree_selection_unselect_path">
62963         <doc xml:whitespace="preserve">Unselects the row at @path.</doc>
62964         <return-value transfer-ownership="none">
62965           <type name="none" c:type="void"/>
62966         </return-value>
62967         <parameters>
62968           <parameter name="path" transfer-ownership="none">
62969             <doc xml:whitespace="preserve">The #GtkTreePath to be unselected.</doc>
62970             <type name="TreePath" c:type="GtkTreePath*"/>
62971           </parameter>
62972         </parameters>
62973       </method>
62974       <method name="unselect_range"
62975               c:identifier="gtk_tree_selection_unselect_range"
62976               version="2.2">
62977         <doc xml:whitespace="preserve">Unselects a range of nodes, determined by @start_path and @end_path
62978 inclusive.</doc>
62979         <return-value transfer-ownership="none">
62980           <type name="none" c:type="void"/>
62981         </return-value>
62982         <parameters>
62983           <parameter name="start_path" transfer-ownership="none">
62984             <doc xml:whitespace="preserve">The initial node of the range.</doc>
62985             <type name="TreePath" c:type="GtkTreePath*"/>
62986           </parameter>
62987           <parameter name="end_path" transfer-ownership="none">
62988             <doc xml:whitespace="preserve">The initial node of the range.</doc>
62989             <type name="TreePath" c:type="GtkTreePath*"/>
62990           </parameter>
62991         </parameters>
62992       </method>
62993       <field name="parent">
62994         <type name="GObject.Object" c:type="GObject"/>
62995       </field>
62996       <field name="tree_view">
62997         <type name="TreeView" c:type="GtkTreeView*"/>
62998       </field>
62999       <field name="type">
63000         <type name="SelectionMode" c:type="GtkSelectionMode"/>
63001       </field>
63002       <field name="user_func">
63003         <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
63004       </field>
63005       <field name="user_data">
63006         <type name="gpointer" c:type="gpointer"/>
63007       </field>
63008       <field name="destroy">
63009         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63010       </field>
63011       <glib:signal name="changed">
63012         <return-value transfer-ownership="none">
63013           <type name="none"/>
63014         </return-value>
63015       </glib:signal>
63016     </class>
63017     <record name="TreeSelectionClass"
63018             c:type="GtkTreeSelectionClass"
63019             glib:is-gtype-struct-for="TreeSelection">
63020       <field name="parent_class">
63021         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
63022       </field>
63023       <field name="changed">
63024         <callback name="changed">
63025           <return-value transfer-ownership="none">
63026             <type name="none" c:type="void"/>
63027           </return-value>
63028           <parameters>
63029             <parameter name="selection" transfer-ownership="none">
63030               <type name="TreeSelection" c:type="GtkTreeSelection*"/>
63031             </parameter>
63032           </parameters>
63033         </callback>
63034       </field>
63035       <field name="_gtk_reserved1" introspectable="0">
63036         <callback name="_gtk_reserved1">
63037           <return-value transfer-ownership="none">
63038             <type name="none" c:type="void"/>
63039           </return-value>
63040         </callback>
63041       </field>
63042       <field name="_gtk_reserved2" introspectable="0">
63043         <callback name="_gtk_reserved2">
63044           <return-value transfer-ownership="none">
63045             <type name="none" c:type="void"/>
63046           </return-value>
63047         </callback>
63048       </field>
63049       <field name="_gtk_reserved3" introspectable="0">
63050         <callback name="_gtk_reserved3">
63051           <return-value transfer-ownership="none">
63052             <type name="none" c:type="void"/>
63053           </return-value>
63054         </callback>
63055       </field>
63056       <field name="_gtk_reserved4" introspectable="0">
63057         <callback name="_gtk_reserved4">
63058           <return-value transfer-ownership="none">
63059             <type name="none" c:type="void"/>
63060           </return-value>
63061         </callback>
63062       </field>
63063     </record>
63064     <callback name="TreeSelectionForeachFunc"
63065               c:type="GtkTreeSelectionForeachFunc">
63066       <return-value transfer-ownership="none">
63067         <type name="none" c:type="void"/>
63068       </return-value>
63069       <parameters>
63070         <parameter name="model" transfer-ownership="none">
63071           <type name="TreeModel" c:type="GtkTreeModel*"/>
63072         </parameter>
63073         <parameter name="path" transfer-ownership="none">
63074           <type name="TreePath" c:type="GtkTreePath*"/>
63075         </parameter>
63076         <parameter name="iter" transfer-ownership="none">
63077           <type name="TreeIter" c:type="GtkTreeIter*"/>
63078         </parameter>
63079         <parameter name="data" transfer-ownership="none">
63080           <type name="gpointer" c:type="gpointer"/>
63081         </parameter>
63082       </parameters>
63083     </callback>
63084     <callback name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc">
63085       <return-value transfer-ownership="none">
63086         <type name="gboolean" c:type="gboolean"/>
63087       </return-value>
63088       <parameters>
63089         <parameter name="selection" transfer-ownership="none">
63090           <type name="TreeSelection" c:type="GtkTreeSelection*"/>
63091         </parameter>
63092         <parameter name="model" transfer-ownership="none">
63093           <type name="TreeModel" c:type="GtkTreeModel*"/>
63094         </parameter>
63095         <parameter name="path" transfer-ownership="none">
63096           <type name="TreePath" c:type="GtkTreePath*"/>
63097         </parameter>
63098         <parameter name="path_currently_selected" transfer-ownership="none">
63099           <type name="gboolean" c:type="gboolean"/>
63100         </parameter>
63101         <parameter name="data" transfer-ownership="none">
63102           <type name="gpointer" c:type="gpointer"/>
63103         </parameter>
63104       </parameters>
63105     </callback>
63106     <interface name="TreeSortable"
63107                c:symbol-prefix="tree_sortable"
63108                c:type="GtkTreeSortable"
63109                glib:type-name="GtkTreeSortable"
63110                glib:get-type="gtk_tree_sortable_get_type"
63111                glib:type-struct="TreeSortableIface">
63112       <prerequisite name="TreeModel"/>
63113       <virtual-method name="get_sort_column_id" invoker="get_sort_column_id">
63114         <doc xml:whitespace="preserve">Fills in @sort_column_id and @order with the current sort column and the
63115 order. It returns %TRUE unless the @sort_column_id is 
63116 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID or 
63117 %GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID.
63118 column ids.</doc>
63119         <return-value transfer-ownership="none">
63120           <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
63121           <type name="gboolean" c:type="gboolean"/>
63122         </return-value>
63123         <parameters>
63124           <parameter name="sort_column_id" transfer-ownership="none">
63125             <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
63126             <type name="gint" c:type="gint*"/>
63127           </parameter>
63128           <parameter name="order" transfer-ownership="none">
63129             <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
63130             <type name="SortType" c:type="GtkSortType*"/>
63131           </parameter>
63132         </parameters>
63133       </virtual-method>
63134       <virtual-method name="has_default_sort_func"
63135                       invoker="has_default_sort_func">
63136         <doc xml:whitespace="preserve">Returns %TRUE if the model has a default sort function. This is used
63137 primarily by GtkTreeViewColumns in order to determine if a model can 
63138 go back to the default state, or not.</doc>
63139         <return-value transfer-ownership="none">
63140           <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
63141           <type name="gboolean" c:type="gboolean"/>
63142         </return-value>
63143       </virtual-method>
63144       <virtual-method name="set_default_sort_func"
63145                       invoker="set_default_sort_func">
63146         <doc xml:whitespace="preserve">Sets the default comparison function used when sorting to be @sort_func.  
63147 If the current sort column id of @sortable is
63148 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, then the model will sort using 
63149 this function.
63150 If @sort_func is %NULL, then there will be no default comparison function.
63151 This means that once the model  has been sorted, it can't go back to the
63152 default state. In this case, when the current sort column id of @sortable 
63153 is %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, the model will be unsorted.</doc>
63154         <return-value transfer-ownership="none">
63155           <type name="none" c:type="void"/>
63156         </return-value>
63157         <parameters>
63158           <parameter name="sort_func"
63159                      transfer-ownership="none"
63160                      scope="notified"
63161                      closure="1"
63162                      destroy="2">
63163             <doc xml:whitespace="preserve">The comparison function</doc>
63164             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
63165           </parameter>
63166           <parameter name="user_data"
63167                      transfer-ownership="none"
63168                      allow-none="1"
63169                      closure="1">
63170             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63171             <type name="gpointer" c:type="gpointer"/>
63172           </parameter>
63173           <parameter name="destroy"
63174                      transfer-ownership="none"
63175                      allow-none="1"
63176                      scope="async">
63177             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63178             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63179           </parameter>
63180         </parameters>
63181       </virtual-method>
63182       <virtual-method name="set_sort_column_id" invoker="set_sort_column_id">
63183         <doc xml:whitespace="preserve">Sets the current sort column to be @sort_column_id. The @sortable will
63184 resort itself to reflect this change, after emitting a
63185 #GtkTreeSortable::sort-column-changed signal. @sort_column_id may either be
63186 a regular column id, or one of the following special values:
63187 &lt;variablelist&gt;
63188 &lt;varlistentry&gt;
63189 &lt;term&gt;%GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID&lt;/term&gt;
63190 &lt;listitem&gt;the default sort function will be used, if it is set&lt;/listitem&gt;
63191 &lt;/varlistentry&gt;
63192 &lt;varlistentry&gt;
63193 &lt;term&gt;%GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID&lt;/term&gt;
63194 &lt;listitem&gt;no sorting will occur&lt;/listitem&gt;
63195 &lt;/varlistentry&gt;
63196 &lt;/variablelist&gt;</doc>
63197         <return-value transfer-ownership="none">
63198           <type name="none" c:type="void"/>
63199         </return-value>
63200         <parameters>
63201           <parameter name="sort_column_id" transfer-ownership="none">
63202             <doc xml:whitespace="preserve">the sort column id to set</doc>
63203             <type name="gint" c:type="gint"/>
63204           </parameter>
63205           <parameter name="order" transfer-ownership="none">
63206             <doc xml:whitespace="preserve">The sort order of the column</doc>
63207             <type name="SortType" c:type="GtkSortType"/>
63208           </parameter>
63209         </parameters>
63210       </virtual-method>
63211       <virtual-method name="set_sort_func" invoker="set_sort_func">
63212         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func. If the
63213 current sort column id of @sortable is the same as @sort_column_id, then 
63214 the model will sort using this function.</doc>
63215         <return-value transfer-ownership="none">
63216           <type name="none" c:type="void"/>
63217         </return-value>
63218         <parameters>
63219           <parameter name="sort_column_id" transfer-ownership="none">
63220             <doc xml:whitespace="preserve">the sort column id to set the function for</doc>
63221             <type name="gint" c:type="gint"/>
63222           </parameter>
63223           <parameter name="sort_func"
63224                      transfer-ownership="none"
63225                      scope="notified"
63226                      closure="2"
63227                      destroy="3">
63228             <doc xml:whitespace="preserve">The comparison function</doc>
63229             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
63230           </parameter>
63231           <parameter name="user_data"
63232                      transfer-ownership="none"
63233                      allow-none="1"
63234                      closure="2">
63235             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63236             <type name="gpointer" c:type="gpointer"/>
63237           </parameter>
63238           <parameter name="destroy"
63239                      transfer-ownership="none"
63240                      allow-none="1"
63241                      scope="async">
63242             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63243             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63244           </parameter>
63245         </parameters>
63246       </virtual-method>
63247       <method name="get_sort_column_id"
63248               c:identifier="gtk_tree_sortable_get_sort_column_id">
63249         <doc xml:whitespace="preserve">Fills in @sort_column_id and @order with the current sort column and the
63250 order. It returns %TRUE unless the @sort_column_id is 
63251 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID or 
63252 %GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID.
63253 column ids.</doc>
63254         <return-value transfer-ownership="none">
63255           <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
63256           <type name="gboolean" c:type="gboolean"/>
63257         </return-value>
63258         <parameters>
63259           <parameter name="sort_column_id" transfer-ownership="none">
63260             <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
63261             <type name="gint" c:type="gint*"/>
63262           </parameter>
63263           <parameter name="order" transfer-ownership="none">
63264             <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
63265             <type name="SortType" c:type="GtkSortType*"/>
63266           </parameter>
63267         </parameters>
63268       </method>
63269       <method name="has_default_sort_func"
63270               c:identifier="gtk_tree_sortable_has_default_sort_func">
63271         <doc xml:whitespace="preserve">Returns %TRUE if the model has a default sort function. This is used
63272 primarily by GtkTreeViewColumns in order to determine if a model can 
63273 go back to the default state, or not.</doc>
63274         <return-value transfer-ownership="none">
63275           <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
63276           <type name="gboolean" c:type="gboolean"/>
63277         </return-value>
63278       </method>
63279       <method name="set_default_sort_func"
63280               c:identifier="gtk_tree_sortable_set_default_sort_func">
63281         <doc xml:whitespace="preserve">Sets the default comparison function used when sorting to be @sort_func.  
63282 If the current sort column id of @sortable is
63283 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, then the model will sort using 
63284 this function.
63285 If @sort_func is %NULL, then there will be no default comparison function.
63286 This means that once the model  has been sorted, it can't go back to the
63287 default state. In this case, when the current sort column id of @sortable 
63288 is %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, the model will be unsorted.</doc>
63289         <return-value transfer-ownership="none">
63290           <type name="none" c:type="void"/>
63291         </return-value>
63292         <parameters>
63293           <parameter name="sort_func"
63294                      transfer-ownership="none"
63295                      scope="notified"
63296                      closure="1"
63297                      destroy="2">
63298             <doc xml:whitespace="preserve">The comparison function</doc>
63299             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
63300           </parameter>
63301           <parameter name="user_data" transfer-ownership="none" allow-none="1">
63302             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63303             <type name="gpointer" c:type="gpointer"/>
63304           </parameter>
63305           <parameter name="destroy"
63306                      transfer-ownership="none"
63307                      allow-none="1"
63308                      scope="async">
63309             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63310             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63311           </parameter>
63312         </parameters>
63313       </method>
63314       <method name="set_sort_column_id"
63315               c:identifier="gtk_tree_sortable_set_sort_column_id">
63316         <doc xml:whitespace="preserve">Sets the current sort column to be @sort_column_id. The @sortable will
63317 resort itself to reflect this change, after emitting a
63318 #GtkTreeSortable::sort-column-changed signal. @sort_column_id may either be
63319 a regular column id, or one of the following special values:
63320 &lt;variablelist&gt;
63321 &lt;varlistentry&gt;
63322 &lt;term&gt;%GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID&lt;/term&gt;
63323 &lt;listitem&gt;the default sort function will be used, if it is set&lt;/listitem&gt;
63324 &lt;/varlistentry&gt;
63325 &lt;varlistentry&gt;
63326 &lt;term&gt;%GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID&lt;/term&gt;
63327 &lt;listitem&gt;no sorting will occur&lt;/listitem&gt;
63328 &lt;/varlistentry&gt;
63329 &lt;/variablelist&gt;</doc>
63330         <return-value transfer-ownership="none">
63331           <type name="none" c:type="void"/>
63332         </return-value>
63333         <parameters>
63334           <parameter name="sort_column_id" transfer-ownership="none">
63335             <doc xml:whitespace="preserve">the sort column id to set</doc>
63336             <type name="gint" c:type="gint"/>
63337           </parameter>
63338           <parameter name="order" transfer-ownership="none">
63339             <doc xml:whitespace="preserve">The sort order of the column</doc>
63340             <type name="SortType" c:type="GtkSortType"/>
63341           </parameter>
63342         </parameters>
63343       </method>
63344       <method name="set_sort_func"
63345               c:identifier="gtk_tree_sortable_set_sort_func">
63346         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func. If the
63347 current sort column id of @sortable is the same as @sort_column_id, then 
63348 the model will sort using this function.</doc>
63349         <return-value transfer-ownership="none">
63350           <type name="none" c:type="void"/>
63351         </return-value>
63352         <parameters>
63353           <parameter name="sort_column_id" transfer-ownership="none">
63354             <doc xml:whitespace="preserve">the sort column id to set the function for</doc>
63355             <type name="gint" c:type="gint"/>
63356           </parameter>
63357           <parameter name="sort_func"
63358                      transfer-ownership="none"
63359                      scope="notified"
63360                      closure="2"
63361                      destroy="3">
63362             <doc xml:whitespace="preserve">The comparison function</doc>
63363             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
63364           </parameter>
63365           <parameter name="user_data" transfer-ownership="none" allow-none="1">
63366             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63367             <type name="gpointer" c:type="gpointer"/>
63368           </parameter>
63369           <parameter name="destroy"
63370                      transfer-ownership="none"
63371                      allow-none="1"
63372                      scope="async">
63373             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63374             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63375           </parameter>
63376         </parameters>
63377       </method>
63378       <method name="sort_column_changed"
63379               c:identifier="gtk_tree_sortable_sort_column_changed">
63380         <doc xml:whitespace="preserve">Emits a #GtkTreeSortable::sort-column-changed signal on @sortable.</doc>
63381         <return-value transfer-ownership="none">
63382           <type name="none" c:type="void"/>
63383         </return-value>
63384       </method>
63385       <glib:signal name="sort-column-changed">
63386         <doc xml:whitespace="preserve">The ::sort-column-changed signal is emitted when the sort column
63387 or sort order of @sortable is changed. The signal is emitted before
63388 the contents of @sortable are resorted.</doc>
63389         <return-value transfer-ownership="none">
63390           <type name="none"/>
63391         </return-value>
63392       </glib:signal>
63393     </interface>
63394     <record name="TreeSortableIface"
63395             c:type="GtkTreeSortableIface"
63396             glib:is-gtype-struct-for="TreeSortable">
63397       <field name="g_iface">
63398         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
63399       </field>
63400       <field name="sort_column_changed">
63401         <callback name="sort_column_changed">
63402           <return-value transfer-ownership="none">
63403             <type name="none" c:type="void"/>
63404           </return-value>
63405           <parameters>
63406             <parameter name="sortable" transfer-ownership="none">
63407               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63408             </parameter>
63409           </parameters>
63410         </callback>
63411       </field>
63412       <field name="get_sort_column_id">
63413         <callback name="get_sort_column_id">
63414           <return-value transfer-ownership="none">
63415             <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
63416             <type name="gboolean" c:type="gboolean"/>
63417           </return-value>
63418           <parameters>
63419             <parameter name="sortable" transfer-ownership="none">
63420               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63421             </parameter>
63422             <parameter name="sort_column_id" transfer-ownership="none">
63423               <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
63424               <type name="gint" c:type="gint*"/>
63425             </parameter>
63426             <parameter name="order" transfer-ownership="none">
63427               <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
63428               <type name="SortType" c:type="GtkSortType*"/>
63429             </parameter>
63430           </parameters>
63431         </callback>
63432       </field>
63433       <field name="set_sort_column_id">
63434         <callback name="set_sort_column_id">
63435           <return-value transfer-ownership="none">
63436             <type name="none" c:type="void"/>
63437           </return-value>
63438           <parameters>
63439             <parameter name="sortable" transfer-ownership="none">
63440               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63441             </parameter>
63442             <parameter name="sort_column_id" transfer-ownership="none">
63443               <doc xml:whitespace="preserve">the sort column id to set</doc>
63444               <type name="gint" c:type="gint"/>
63445             </parameter>
63446             <parameter name="order" transfer-ownership="none">
63447               <doc xml:whitespace="preserve">The sort order of the column</doc>
63448               <type name="SortType" c:type="GtkSortType"/>
63449             </parameter>
63450           </parameters>
63451         </callback>
63452       </field>
63453       <field name="set_sort_func">
63454         <callback name="set_sort_func">
63455           <return-value transfer-ownership="none">
63456             <type name="none" c:type="void"/>
63457           </return-value>
63458           <parameters>
63459             <parameter name="sortable" transfer-ownership="none">
63460               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63461             </parameter>
63462             <parameter name="sort_column_id" transfer-ownership="none">
63463               <doc xml:whitespace="preserve">the sort column id to set the function for</doc>
63464               <type name="gint" c:type="gint"/>
63465             </parameter>
63466             <parameter name="sort_func"
63467                        transfer-ownership="none"
63468                        scope="notified"
63469                        closure="3"
63470                        destroy="4">
63471               <doc xml:whitespace="preserve">The comparison function</doc>
63472               <type name="TreeIterCompareFunc"
63473                     c:type="GtkTreeIterCompareFunc"/>
63474             </parameter>
63475             <parameter name="user_data"
63476                        transfer-ownership="none"
63477                        allow-none="1"
63478                        closure="3">
63479               <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63480               <type name="gpointer" c:type="gpointer"/>
63481             </parameter>
63482             <parameter name="destroy"
63483                        transfer-ownership="none"
63484                        allow-none="1"
63485                        scope="async">
63486               <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63487               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63488             </parameter>
63489           </parameters>
63490         </callback>
63491       </field>
63492       <field name="set_default_sort_func">
63493         <callback name="set_default_sort_func">
63494           <return-value transfer-ownership="none">
63495             <type name="none" c:type="void"/>
63496           </return-value>
63497           <parameters>
63498             <parameter name="sortable" transfer-ownership="none">
63499               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63500             </parameter>
63501             <parameter name="sort_func"
63502                        transfer-ownership="none"
63503                        scope="notified"
63504                        closure="2"
63505                        destroy="3">
63506               <doc xml:whitespace="preserve">The comparison function</doc>
63507               <type name="TreeIterCompareFunc"
63508                     c:type="GtkTreeIterCompareFunc"/>
63509             </parameter>
63510             <parameter name="user_data"
63511                        transfer-ownership="none"
63512                        allow-none="1"
63513                        closure="2">
63514               <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
63515               <type name="gpointer" c:type="gpointer"/>
63516             </parameter>
63517             <parameter name="destroy"
63518                        transfer-ownership="none"
63519                        allow-none="1"
63520                        scope="async">
63521               <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
63522               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
63523             </parameter>
63524           </parameters>
63525         </callback>
63526       </field>
63527       <field name="has_default_sort_func">
63528         <callback name="has_default_sort_func">
63529           <return-value transfer-ownership="none">
63530             <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
63531             <type name="gboolean" c:type="gboolean"/>
63532           </return-value>
63533           <parameters>
63534             <parameter name="sortable" transfer-ownership="none">
63535               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
63536             </parameter>
63537           </parameters>
63538         </callback>
63539       </field>
63540     </record>
63541     <class name="TreeStore"
63542            c:symbol-prefix="tree_store"
63543            c:type="GtkTreeStore"
63544            parent="GObject.Object"
63545            glib:type-name="GtkTreeStore"
63546            glib:get-type="gtk_tree_store_get_type"
63547            glib:type-struct="TreeStoreClass">
63548       <implements name="Buildable"/>
63549       <implements name="TreeDragDest"/>
63550       <implements name="TreeDragSource"/>
63551       <implements name="TreeModel"/>
63552       <implements name="TreeSortable"/>
63553       <constructor name="new"
63554                    c:identifier="gtk_tree_store_new"
63555                    introspectable="0">
63556         <doc xml:whitespace="preserve">Creates a new tree store as with @n_columns columns each of the types passed
63557 in.  Note that only types derived from standard GObject fundamental types 
63558 are supported. 
63559 As an example, &lt;literal&gt;gtk_tree_store_new (3, G_TYPE_INT, G_TYPE_STRING,
63560 GDK_TYPE_PIXBUF);&lt;/literal&gt; will create a new #GtkTreeStore with three columns, of type
63561 &lt;type&gt;int&lt;/type&gt;, &lt;type&gt;string&lt;/type&gt; and #GdkPixbuf respectively.</doc>
63562         <return-value transfer-ownership="full">
63563           <doc xml:whitespace="preserve">a new #GtkTreeStore</doc>
63564           <type name="TreeStore" c:type="GtkTreeStore*"/>
63565         </return-value>
63566         <parameters>
63567           <parameter name="n_columns" transfer-ownership="none">
63568             <doc xml:whitespace="preserve">number of columns in the tree store</doc>
63569             <type name="gint" c:type="gint"/>
63570           </parameter>
63571           <parameter transfer-ownership="none">
63572             <varargs>
63573             </varargs>
63574           </parameter>
63575         </parameters>
63576       </constructor>
63577       <function name="newv" c:identifier="gtk_tree_store_newv">
63578         <doc xml:whitespace="preserve">Non vararg creation function.  Used primarily by language bindings.</doc>
63579         <return-value transfer-ownership="full">
63580           <doc xml:whitespace="preserve">a new #GtkTreeStore</doc>
63581           <type name="TreeStore" c:type="GtkTreeStore*"/>
63582         </return-value>
63583         <parameters>
63584           <parameter name="n_columns" transfer-ownership="none">
63585             <doc xml:whitespace="preserve">number of columns in the tree store</doc>
63586             <type name="gint" c:type="gint"/>
63587           </parameter>
63588           <parameter name="types" transfer-ownership="none">
63589             <doc xml:whitespace="preserve">an array of #GType types for the columns, from first to last</doc>
63590             <array length="0" c:type="GType*">
63591               <type name="GType"/>
63592             </array>
63593           </parameter>
63594         </parameters>
63595       </function>
63596       <method name="append" c:identifier="gtk_tree_store_append">
63597         <doc xml:whitespace="preserve">Appends a new row to @tree_store.  If @parent is non-%NULL, then it will append the
63598 new row after the last child of @parent, otherwise it will append a row to
63599 the top level.  @iter will be changed to point to this new row.  The row will
63600 be empty after this function is called.  To fill in values, you need to call
63601 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
63602         <return-value transfer-ownership="none">
63603           <type name="none" c:type="void"/>
63604         </return-value>
63605         <parameters>
63606           <parameter name="iter"
63607                      direction="out"
63608                      caller-allocates="1"
63609                      transfer-ownership="none">
63610             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the appended row</doc>
63611             <type name="TreeIter" c:type="GtkTreeIter*"/>
63612           </parameter>
63613           <parameter name="parent" transfer-ownership="none" allow-none="1">
63614             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63615             <type name="TreeIter" c:type="GtkTreeIter*"/>
63616           </parameter>
63617         </parameters>
63618       </method>
63619       <method name="clear" c:identifier="gtk_tree_store_clear">
63620         <doc xml:whitespace="preserve">Removes all rows from @tree_store</doc>
63621         <return-value transfer-ownership="none">
63622           <type name="none" c:type="void"/>
63623         </return-value>
63624       </method>
63625       <method name="insert" c:identifier="gtk_tree_store_insert">
63626         <doc xml:whitespace="preserve">Creates a new row at @position.  If parent is non-%NULL, then the row will be
63627 made a child of @parent.  Otherwise, the row will be created at the toplevel.
63628 If @position is larger than the number of rows at that level, then the new
63629 row will be inserted to the end of the list.  @iter will be changed to point
63630 to this new row.  The row will be empty after this function is called.  To
63631 fill in values, you need to call gtk_tree_store_set() or
63632 gtk_tree_store_set_value().</doc>
63633         <return-value transfer-ownership="none">
63634           <type name="none" c:type="void"/>
63635         </return-value>
63636         <parameters>
63637           <parameter name="iter"
63638                      direction="out"
63639                      caller-allocates="1"
63640                      transfer-ownership="none">
63641             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
63642             <type name="TreeIter" c:type="GtkTreeIter*"/>
63643           </parameter>
63644           <parameter name="parent" transfer-ownership="none" allow-none="1">
63645             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63646             <type name="TreeIter" c:type="GtkTreeIter*"/>
63647           </parameter>
63648           <parameter name="position" transfer-ownership="none">
63649             <doc xml:whitespace="preserve">position to insert the new row</doc>
63650             <type name="gint" c:type="gint"/>
63651           </parameter>
63652         </parameters>
63653       </method>
63654       <method name="insert_after" c:identifier="gtk_tree_store_insert_after">
63655         <doc xml:whitespace="preserve">Inserts a new row after @sibling.  If @sibling is %NULL, then the row will be
63656 prepended to @parent 's children.  If @parent and @sibling are %NULL, then
63657 the row will be prepended to the toplevel.  If both @sibling and @parent are
63658 set, then @parent must be the parent of @sibling.  When @sibling is set,
63659 this function is called.  To fill in values, you need to call
63660 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
63661         <return-value transfer-ownership="none">
63662           <type name="none" c:type="void"/>
63663         </return-value>
63664         <parameters>
63665           <parameter name="iter"
63666                      direction="out"
63667                      caller-allocates="1"
63668                      transfer-ownership="none">
63669             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
63670             <type name="TreeIter" c:type="GtkTreeIter*"/>
63671           </parameter>
63672           <parameter name="parent" transfer-ownership="none" allow-none="1">
63673             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63674             <type name="TreeIter" c:type="GtkTreeIter*"/>
63675           </parameter>
63676           <parameter name="sibling" transfer-ownership="none" allow-none="1">
63677             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63678             <type name="TreeIter" c:type="GtkTreeIter*"/>
63679           </parameter>
63680         </parameters>
63681       </method>
63682       <method name="insert_before" c:identifier="gtk_tree_store_insert_before">
63683         <doc xml:whitespace="preserve">Inserts a new row before @sibling.  If @sibling is %NULL, then the row will
63684 be appended to @parent 's children.  If @parent and @sibling are %NULL, then
63685 the row will be appended to the toplevel.  If both @sibling and @parent are
63686 set, then @parent must be the parent of @sibling.  When @sibling is set,
63687 this function is called.  To fill in values, you need to call
63688 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
63689         <return-value transfer-ownership="none">
63690           <type name="none" c:type="void"/>
63691         </return-value>
63692         <parameters>
63693           <parameter name="iter"
63694                      direction="out"
63695                      caller-allocates="1"
63696                      transfer-ownership="none">
63697             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
63698             <type name="TreeIter" c:type="GtkTreeIter*"/>
63699           </parameter>
63700           <parameter name="parent" transfer-ownership="none" allow-none="1">
63701             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63702             <type name="TreeIter" c:type="GtkTreeIter*"/>
63703           </parameter>
63704           <parameter name="sibling" transfer-ownership="none" allow-none="1">
63705             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63706             <type name="TreeIter" c:type="GtkTreeIter*"/>
63707           </parameter>
63708         </parameters>
63709       </method>
63710       <method name="insert_with_values"
63711               c:identifier="gtk_tree_store_insert_with_values"
63712               version="2.10"
63713               introspectable="0">
63714         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this
63715 new row.  If @position is larger than the number of rows on the list, then
63716 the new row will be appended to the list.  The row will be filled with
63717 the values given to this function.
63718 Calling
63719 &lt;literal&gt;gtk_tree_store_insert_with_values (tree_store, iter, position, ...)&lt;/literal&gt;
63720 has the same effect as calling
63721 |[
63722 gtk_tree_store_insert (tree_store, iter, position);
63723 gtk_tree_store_set (tree_store, iter, ...);
63724 ]|
63725 with the different that the former will only emit a row_inserted signal,
63726 while the latter will emit row_inserted, row_changed and if the tree store
63727 is sorted, rows_reordered.  Since emitting the rows_reordered signal
63728 repeatedly can affect the performance of the program,
63729 gtk_tree_store_insert_with_values() should generally be preferred when
63730 inserting rows in a sorted tree store.</doc>
63731         <return-value transfer-ownership="none">
63732           <type name="none" c:type="void"/>
63733         </return-value>
63734         <parameters>
63735           <parameter name="iter"
63736                      direction="out"
63737                      caller-allocates="1"
63738                      transfer-ownership="none"
63739                      allow-none="1">
63740             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set the new row, or %NULL.</doc>
63741             <type name="TreeIter" c:type="GtkTreeIter*"/>
63742           </parameter>
63743           <parameter name="parent" transfer-ownership="none" allow-none="1">
63744             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63745             <type name="TreeIter" c:type="GtkTreeIter*"/>
63746           </parameter>
63747           <parameter name="position" transfer-ownership="none">
63748             <doc xml:whitespace="preserve">position to insert the new row</doc>
63749             <type name="gint" c:type="gint"/>
63750           </parameter>
63751           <parameter transfer-ownership="none">
63752             <varargs>
63753             </varargs>
63754           </parameter>
63755         </parameters>
63756       </method>
63757       <method name="insert_with_valuesv"
63758               c:identifier="gtk_tree_store_insert_with_valuesv"
63759               version="2.10">
63760         <doc xml:whitespace="preserve">A variant of gtk_tree_store_insert_with_values() which takes
63761 the columns and values as two arrays, instead of varargs.  This
63762 function is mainly intended for language bindings.</doc>
63763         <return-value transfer-ownership="none">
63764           <type name="none" c:type="void"/>
63765         </return-value>
63766         <parameters>
63767           <parameter name="iter"
63768                      direction="out"
63769                      caller-allocates="1"
63770                      transfer-ownership="none"
63771                      allow-none="1">
63772             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set the new row, or %NULL.</doc>
63773             <type name="TreeIter" c:type="GtkTreeIter*"/>
63774           </parameter>
63775           <parameter name="parent" transfer-ownership="none" allow-none="1">
63776             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63777             <type name="TreeIter" c:type="GtkTreeIter*"/>
63778           </parameter>
63779           <parameter name="position" transfer-ownership="none">
63780             <doc xml:whitespace="preserve">position to insert the new row</doc>
63781             <type name="gint" c:type="gint"/>
63782           </parameter>
63783           <parameter name="columns" transfer-ownership="none">
63784             <doc xml:whitespace="preserve">an array of column numbers</doc>
63785             <type name="gint" c:type="gint*"/>
63786           </parameter>
63787           <parameter name="values" transfer-ownership="none">
63788             <doc xml:whitespace="preserve">an array of GValues</doc>
63789             <type name="GObject.Value" c:type="GValue*"/>
63790           </parameter>
63791           <parameter name="n_values" transfer-ownership="none">
63792             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
63793             <type name="gint" c:type="gint"/>
63794           </parameter>
63795         </parameters>
63796       </method>
63797       <method name="is_ancestor" c:identifier="gtk_tree_store_is_ancestor">
63798         <doc xml:whitespace="preserve">Returns %TRUE if @iter is an ancestor of @descendant.  That is, @iter is the
63799 parent (or grandparent or great-grandparent) of @descendant.</doc>
63800         <return-value transfer-ownership="none">
63801           <doc xml:whitespace="preserve">%TRUE, if @iter is an ancestor of @descendant</doc>
63802           <type name="gboolean" c:type="gboolean"/>
63803         </return-value>
63804         <parameters>
63805           <parameter name="iter" transfer-ownership="none">
63806             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
63807             <type name="TreeIter" c:type="GtkTreeIter*"/>
63808           </parameter>
63809           <parameter name="descendant" transfer-ownership="none">
63810             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
63811             <type name="TreeIter" c:type="GtkTreeIter*"/>
63812           </parameter>
63813         </parameters>
63814       </method>
63815       <method name="iter_depth" c:identifier="gtk_tree_store_iter_depth">
63816         <doc xml:whitespace="preserve">Returns the depth of @iter.  This will be 0 for anything on the root level, 1
63817 for anything down a level, etc.</doc>
63818         <return-value transfer-ownership="none">
63819           <doc xml:whitespace="preserve">The depth of @iter</doc>
63820           <type name="gint" c:type="gint"/>
63821         </return-value>
63822         <parameters>
63823           <parameter name="iter" transfer-ownership="none">
63824             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
63825             <type name="TreeIter" c:type="GtkTreeIter*"/>
63826           </parameter>
63827         </parameters>
63828       </method>
63829       <method name="iter_is_valid"
63830               c:identifier="gtk_tree_store_iter_is_valid"
63831               version="2.2">
63832         <doc xml:whitespace="preserve">purposes.
63833 Checks if the given iter is a valid iter for this #GtkTreeStore.</doc>
63834         <return-value transfer-ownership="none">
63835           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
63836           <type name="gboolean" c:type="gboolean"/>
63837         </return-value>
63838         <parameters>
63839           <parameter name="iter" transfer-ownership="none">
63840             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
63841             <type name="TreeIter" c:type="GtkTreeIter*"/>
63842           </parameter>
63843         </parameters>
63844       </method>
63845       <method name="move_after"
63846               c:identifier="gtk_tree_store_move_after"
63847               version="2.2">
63848         <doc xml:whitespace="preserve">Moves @iter in @tree_store to the position after @position. @iter and
63849 works with unsorted stores. If @position is %NULL, @iter will be moved
63850 to the start of the level.</doc>
63851         <return-value transfer-ownership="none">
63852           <type name="none" c:type="void"/>
63853         </return-value>
63854         <parameters>
63855           <parameter name="iter" transfer-ownership="none">
63856             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
63857             <type name="TreeIter" c:type="GtkTreeIter*"/>
63858           </parameter>
63859           <parameter name="position" transfer-ownership="none" allow-none="1">
63860             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
63861             <type name="TreeIter" c:type="GtkTreeIter*"/>
63862           </parameter>
63863         </parameters>
63864       </method>
63865       <method name="move_before"
63866               c:identifier="gtk_tree_store_move_before"
63867               version="2.2">
63868         <doc xml:whitespace="preserve">Moves @iter in @tree_store to the position before @position. @iter and
63869 works with unsorted stores. If @position is %NULL, @iter will be
63870 moved to the end of the level.</doc>
63871         <return-value transfer-ownership="none">
63872           <type name="none" c:type="void"/>
63873         </return-value>
63874         <parameters>
63875           <parameter name="iter" transfer-ownership="none">
63876             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
63877             <type name="TreeIter" c:type="GtkTreeIter*"/>
63878           </parameter>
63879           <parameter name="position" transfer-ownership="none" allow-none="1">
63880             <doc xml:whitespace="preserve">A #GtkTreeIter or %NULL.</doc>
63881             <type name="TreeIter" c:type="GtkTreeIter*"/>
63882           </parameter>
63883         </parameters>
63884       </method>
63885       <method name="prepend" c:identifier="gtk_tree_store_prepend">
63886         <doc xml:whitespace="preserve">Prepends a new row to @tree_store.  If @parent is non-%NULL, then it will prepend
63887 the new row before the first child of @parent, otherwise it will prepend a row
63888 to the top level.  @iter will be changed to point to this new row.  The row
63889 will be empty after this function is called.  To fill in values, you need to
63890 call gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
63891         <return-value transfer-ownership="none">
63892           <type name="none" c:type="void"/>
63893         </return-value>
63894         <parameters>
63895           <parameter name="iter"
63896                      direction="out"
63897                      caller-allocates="1"
63898                      transfer-ownership="none">
63899             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the prepended row</doc>
63900             <type name="TreeIter" c:type="GtkTreeIter*"/>
63901           </parameter>
63902           <parameter name="parent" transfer-ownership="none" allow-none="1">
63903             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
63904             <type name="TreeIter" c:type="GtkTreeIter*"/>
63905           </parameter>
63906         </parameters>
63907       </method>
63908       <method name="remove" c:identifier="gtk_tree_store_remove">
63909         <doc xml:whitespace="preserve">Removes @iter from @tree_store.  After being removed, @iter is set to the
63910 next valid row at that level, or invalidated if it previously pointed to the
63911 last one.</doc>
63912         <return-value transfer-ownership="none">
63913           <doc xml:whitespace="preserve">%TRUE if @iter is still valid, %FALSE if not.</doc>
63914           <type name="gboolean" c:type="gboolean"/>
63915         </return-value>
63916         <parameters>
63917           <parameter name="iter" transfer-ownership="none">
63918             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
63919             <type name="TreeIter" c:type="GtkTreeIter*"/>
63920           </parameter>
63921         </parameters>
63922       </method>
63923       <method name="reorder"
63924               c:identifier="gtk_tree_store_reorder"
63925               version="2.2">
63926         <doc xml:whitespace="preserve">Reorders the children of @parent in @tree_store to follow the order
63927 indicated by @new_order. Note that this function only works with
63928 unsorted stores.</doc>
63929         <return-value transfer-ownership="none">
63930           <type name="none" c:type="void"/>
63931         </return-value>
63932         <parameters>
63933           <parameter name="parent" transfer-ownership="none">
63934             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
63935             <type name="TreeIter" c:type="GtkTreeIter*"/>
63936           </parameter>
63937           <parameter name="new_order" transfer-ownership="none">
63938             <doc xml:whitespace="preserve">an array of integers mapping the new position of each child to its old position before the re-ordering, i.e. @new_order&lt;literal&gt;[newpos] = oldpos&lt;/literal&gt;.</doc>
63939             <type name="gint" c:type="gint*"/>
63940           </parameter>
63941         </parameters>
63942       </method>
63943       <method name="set" c:identifier="gtk_tree_store_set" introspectable="0">
63944         <doc xml:whitespace="preserve">Sets the value of one or more cells in the row referenced by @iter.
63945 The variable argument list should contain integer column numbers,
63946 each column number followed by the value to be set. 
63947 The list is terminated by a -1. For example, to set column 0 with type
63948 %G_TYPE_STRING to "Foo", you would write 
63949 &lt;literal&gt;gtk_tree_store_set (store, iter, 0, "Foo", -1)&lt;/literal&gt;.
63950 The value will be referenced by the store if it is a %G_TYPE_OBJECT, and it
63951 will be copied if it is a %G_TYPE_STRING or %G_TYPE_BOXED.</doc>
63952         <return-value transfer-ownership="none">
63953           <type name="none" c:type="void"/>
63954         </return-value>
63955         <parameters>
63956           <parameter name="iter" transfer-ownership="none">
63957             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
63958             <type name="TreeIter" c:type="GtkTreeIter*"/>
63959           </parameter>
63960           <parameter transfer-ownership="none">
63961             <varargs>
63962             </varargs>
63963           </parameter>
63964         </parameters>
63965       </method>
63966       <method name="set_column_types"
63967               c:identifier="gtk_tree_store_set_column_types">
63968         <doc xml:whitespace="preserve">This function is meant primarily for #GObjects that inherit from 
63969 #GtkTreeStore, and should only be used when constructing a new 
63970 #GtkTreeStore.  It will not function after a row has been added, 
63971 or a method on the #GtkTreeModel interface is called.</doc>
63972         <return-value transfer-ownership="none">
63973           <type name="none" c:type="void"/>
63974         </return-value>
63975         <parameters>
63976           <parameter name="n_columns" transfer-ownership="none">
63977             <doc xml:whitespace="preserve">Number of columns for the tree store</doc>
63978             <type name="gint" c:type="gint"/>
63979           </parameter>
63980           <parameter name="types" transfer-ownership="none">
63981             <doc xml:whitespace="preserve">An array of #GType types, one for each column</doc>
63982             <array length="0" c:type="GType*">
63983               <type name="GType"/>
63984             </array>
63985           </parameter>
63986         </parameters>
63987       </method>
63988       <method name="set_valist"
63989               c:identifier="gtk_tree_store_set_valist"
63990               introspectable="0">
63991         <doc xml:whitespace="preserve">See gtk_tree_store_set(); this version takes a &lt;type&gt;va_list&lt;/type&gt; for
63992 use by language bindings.</doc>
63993         <return-value transfer-ownership="none">
63994           <type name="none" c:type="void"/>
63995         </return-value>
63996         <parameters>
63997           <parameter name="iter" transfer-ownership="none">
63998             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
63999             <type name="TreeIter" c:type="GtkTreeIter*"/>
64000           </parameter>
64001           <parameter name="var_args" transfer-ownership="none">
64002             <doc xml:whitespace="preserve">&lt;type&gt;va_list&lt;/type&gt; of column/value pairs</doc>
64003             <type name="va_list" c:type="va_list"/>
64004           </parameter>
64005         </parameters>
64006       </method>
64007       <method name="set_value" c:identifier="gtk_tree_store_set_value">
64008         <doc xml:whitespace="preserve">Sets the data in the cell specified by @iter and @column.
64009 The type of @value must be convertible to the type of the
64010 column.</doc>
64011         <return-value transfer-ownership="none">
64012           <type name="none" c:type="void"/>
64013         </return-value>
64014         <parameters>
64015           <parameter name="iter" transfer-ownership="none">
64016             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
64017             <type name="TreeIter" c:type="GtkTreeIter*"/>
64018           </parameter>
64019           <parameter name="column" transfer-ownership="none">
64020             <doc xml:whitespace="preserve">column number to modify</doc>
64021             <type name="gint" c:type="gint"/>
64022           </parameter>
64023           <parameter name="value" transfer-ownership="none">
64024             <doc xml:whitespace="preserve">new value for the cell</doc>
64025             <type name="GObject.Value" c:type="GValue*"/>
64026           </parameter>
64027         </parameters>
64028       </method>
64029       <method name="set_valuesv"
64030               c:identifier="gtk_tree_store_set_valuesv"
64031               version="2.12">
64032         <doc xml:whitespace="preserve">A variant of gtk_tree_store_set_valist() which takes
64033 the columns and values as two arrays, instead of varargs.  This
64034 function is mainly intended for language bindings or in case
64035 the number of columns to change is not known until run-time.</doc>
64036         <return-value transfer-ownership="none">
64037           <type name="none" c:type="void"/>
64038         </return-value>
64039         <parameters>
64040           <parameter name="iter" transfer-ownership="none">
64041             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
64042             <type name="TreeIter" c:type="GtkTreeIter*"/>
64043           </parameter>
64044           <parameter name="columns" transfer-ownership="none">
64045             <doc xml:whitespace="preserve">an array of column numbers</doc>
64046             <array length="3" c:type="gint*">
64047               <type name="gint"/>
64048             </array>
64049           </parameter>
64050           <parameter name="values" transfer-ownership="none">
64051             <doc xml:whitespace="preserve">an array of GValues</doc>
64052             <array length="3" c:type="GValue*">
64053               <type name="GObject.Value"/>
64054             </array>
64055           </parameter>
64056           <parameter name="n_values" transfer-ownership="none">
64057             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
64058             <type name="gint" c:type="gint"/>
64059           </parameter>
64060         </parameters>
64061       </method>
64062       <method name="swap" c:identifier="gtk_tree_store_swap" version="2.2">
64063         <doc xml:whitespace="preserve">Swaps @a and @b in the same level of @tree_store. Note that this function
64064 only works with unsorted stores.</doc>
64065         <return-value transfer-ownership="none">
64066           <type name="none" c:type="void"/>
64067         </return-value>
64068         <parameters>
64069           <parameter name="a" transfer-ownership="none">
64070             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
64071             <type name="TreeIter" c:type="GtkTreeIter*"/>
64072           </parameter>
64073           <parameter name="b" transfer-ownership="none">
64074             <doc xml:whitespace="preserve">Another #GtkTreeIter.</doc>
64075             <type name="TreeIter" c:type="GtkTreeIter*"/>
64076           </parameter>
64077         </parameters>
64078       </method>
64079       <field name="parent">
64080         <type name="GObject.Object" c:type="GObject"/>
64081       </field>
64082       <field name="stamp">
64083         <type name="gint" c:type="gint"/>
64084       </field>
64085       <field name="root">
64086         <type name="gpointer" c:type="gpointer"/>
64087       </field>
64088       <field name="last">
64089         <type name="gpointer" c:type="gpointer"/>
64090       </field>
64091       <field name="n_columns">
64092         <type name="gint" c:type="gint"/>
64093       </field>
64094       <field name="sort_column_id">
64095         <type name="gint" c:type="gint"/>
64096       </field>
64097       <field name="sort_list">
64098         <type name="GLib.List" c:type="GList*">
64099           <type name="gpointer" c:type="gpointer"/>
64100         </type>
64101       </field>
64102       <field name="order">
64103         <type name="SortType" c:type="GtkSortType"/>
64104       </field>
64105       <field name="column_headers">
64106         <type name="GType" c:type="GType*"/>
64107       </field>
64108       <field name="default_sort_func">
64109         <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
64110       </field>
64111       <field name="default_sort_data">
64112         <type name="gpointer" c:type="gpointer"/>
64113       </field>
64114       <field name="default_sort_destroy">
64115         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
64116       </field>
64117       <field name="columns_dirty" bits="1">
64118         <type name="guint" c:type="guint"/>
64119       </field>
64120     </class>
64121     <record name="TreeStoreClass"
64122             c:type="GtkTreeStoreClass"
64123             glib:is-gtype-struct-for="TreeStore">
64124       <field name="parent_class">
64125         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
64126       </field>
64127       <field name="_gtk_reserved1" introspectable="0">
64128         <callback name="_gtk_reserved1">
64129           <return-value transfer-ownership="none">
64130             <type name="none" c:type="void"/>
64131           </return-value>
64132         </callback>
64133       </field>
64134       <field name="_gtk_reserved2" introspectable="0">
64135         <callback name="_gtk_reserved2">
64136           <return-value transfer-ownership="none">
64137             <type name="none" c:type="void"/>
64138           </return-value>
64139         </callback>
64140       </field>
64141       <field name="_gtk_reserved3" introspectable="0">
64142         <callback name="_gtk_reserved3">
64143           <return-value transfer-ownership="none">
64144             <type name="none" c:type="void"/>
64145           </return-value>
64146         </callback>
64147       </field>
64148       <field name="_gtk_reserved4" introspectable="0">
64149         <callback name="_gtk_reserved4">
64150           <return-value transfer-ownership="none">
64151             <type name="none" c:type="void"/>
64152           </return-value>
64153         </callback>
64154       </field>
64155     </record>
64156     <class name="TreeView"
64157            c:symbol-prefix="tree_view"
64158            c:type="GtkTreeView"
64159            parent="Container"
64160            glib:type-name="GtkTreeView"
64161            glib:get-type="gtk_tree_view_get_type"
64162            glib:type-struct="TreeViewClass">
64163       <implements name="Atk.ImplementorIface"/>
64164       <implements name="Buildable"/>
64165       <implements name="SizeRequest"/>
64166       <constructor name="new" c:identifier="gtk_tree_view_new">
64167         <doc xml:whitespace="preserve">Creates a new #GtkTreeView widget.</doc>
64168         <return-value transfer-ownership="none">
64169           <doc xml:whitespace="preserve">A newly created #GtkTreeView widget.</doc>
64170           <type name="Widget" c:type="GtkWidget*"/>
64171         </return-value>
64172       </constructor>
64173       <constructor name="new_with_model"
64174                    c:identifier="gtk_tree_view_new_with_model">
64175         <doc xml:whitespace="preserve">Creates a new #GtkTreeView widget with the model initialized to @model.</doc>
64176         <return-value transfer-ownership="none">
64177           <doc xml:whitespace="preserve">A newly created #GtkTreeView widget.</doc>
64178           <type name="Widget" c:type="GtkWidget*"/>
64179         </return-value>
64180         <parameters>
64181           <parameter name="model" transfer-ownership="none">
64182             <doc xml:whitespace="preserve">the model.</doc>
64183             <type name="TreeModel" c:type="GtkTreeModel*"/>
64184           </parameter>
64185         </parameters>
64186       </constructor>
64187       <method name="append_column" c:identifier="gtk_tree_view_append_column">
64188         <doc xml:whitespace="preserve">Appends @column to the list of columns. If @tree_view has "fixed_height"
64189 mode enabled, then @column must have its "sizing" property set to be
64190 GTK_TREE_VIEW_COLUMN_FIXED.</doc>
64191         <return-value transfer-ownership="none">
64192           <doc xml:whitespace="preserve">The number of columns in @tree_view after appending.</doc>
64193           <type name="gint" c:type="gint"/>
64194         </return-value>
64195         <parameters>
64196           <parameter name="column" transfer-ownership="none">
64197             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to add.</doc>
64198             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
64199           </parameter>
64200         </parameters>
64201       </method>
64202       <method name="collapse_all" c:identifier="gtk_tree_view_collapse_all">
64203         <doc xml:whitespace="preserve">Recursively collapses all visible, expanded nodes in @tree_view.</doc>
64204         <return-value transfer-ownership="none">
64205           <type name="none" c:type="void"/>
64206         </return-value>
64207       </method>
64208       <method name="collapse_row" c:identifier="gtk_tree_view_collapse_row">
64209         <doc xml:whitespace="preserve">Collapses a row (hides its child rows, if they exist).</doc>
64210         <return-value transfer-ownership="none">
64211           <doc xml:whitespace="preserve">%TRUE if the row was collapsed.</doc>
64212           <type name="gboolean" c:type="gboolean"/>
64213         </return-value>
64214         <parameters>
64215           <parameter name="path" transfer-ownership="none">
64216             <doc xml:whitespace="preserve">path to a row in the @tree_view</doc>
64217             <type name="TreePath" c:type="GtkTreePath*"/>
64218           </parameter>
64219         </parameters>
64220       </method>
64221       <method name="columns_autosize"
64222               c:identifier="gtk_tree_view_columns_autosize">
64223         <doc xml:whitespace="preserve">Resizes all columns to their optimal width. Only works after the
64224 treeview has been realized.</doc>
64225         <return-value transfer-ownership="none">
64226           <type name="none" c:type="void"/>
64227         </return-value>
64228       </method>
64229       <method name="convert_bin_window_to_tree_coords"
64230               c:identifier="gtk_tree_view_convert_bin_window_to_tree_coords"
64231               version="2.12">
64232         <doc xml:whitespace="preserve">Converts bin_window coordinates to coordinates for the
64233 tree (the full scrollable area of the tree).</doc>
64234         <return-value transfer-ownership="none">
64235           <type name="none" c:type="void"/>
64236         </return-value>
64237         <parameters>
64238           <parameter name="bx" transfer-ownership="none">
64239             <doc xml:whitespace="preserve">X coordinate relative to bin_window</doc>
64240             <type name="gint" c:type="gint"/>
64241           </parameter>
64242           <parameter name="by" transfer-ownership="none">
64243             <doc xml:whitespace="preserve">Y coordinate relative to bin_window</doc>
64244             <type name="gint" c:type="gint"/>
64245           </parameter>
64246           <parameter name="tx" transfer-ownership="none">
64247             <doc xml:whitespace="preserve">return location for tree X coordinate</doc>
64248             <type name="gint" c:type="gint*"/>
64249           </parameter>
64250           <parameter name="ty" transfer-ownership="none">
64251             <doc xml:whitespace="preserve">return location for tree Y coordinate</doc>
64252             <type name="gint" c:type="gint*"/>
64253           </parameter>
64254         </parameters>
64255       </method>
64256       <method name="convert_bin_window_to_widget_coords"
64257               c:identifier="gtk_tree_view_convert_bin_window_to_widget_coords"
64258               version="2.12">
64259         <doc xml:whitespace="preserve">Converts bin_window coordinates (see gtk_tree_view_get_bin_window())
64260 to widget relative coordinates.</doc>
64261         <return-value transfer-ownership="none">
64262           <type name="none" c:type="void"/>
64263         </return-value>
64264         <parameters>
64265           <parameter name="bx" transfer-ownership="none">
64266             <doc xml:whitespace="preserve">bin_window X coordinate</doc>
64267             <type name="gint" c:type="gint"/>
64268           </parameter>
64269           <parameter name="by" transfer-ownership="none">
64270             <doc xml:whitespace="preserve">bin_window Y coordinate</doc>
64271             <type name="gint" c:type="gint"/>
64272           </parameter>
64273           <parameter name="wx" transfer-ownership="none">
64274             <doc xml:whitespace="preserve">return location for widget X coordinate</doc>
64275             <type name="gint" c:type="gint*"/>
64276           </parameter>
64277           <parameter name="wy" transfer-ownership="none">
64278             <doc xml:whitespace="preserve">return location for widget Y coordinate</doc>
64279             <type name="gint" c:type="gint*"/>
64280           </parameter>
64281         </parameters>
64282       </method>
64283       <method name="convert_tree_to_bin_window_coords"
64284               c:identifier="gtk_tree_view_convert_tree_to_bin_window_coords"
64285               version="2.12">
64286         <doc xml:whitespace="preserve">Converts tree coordinates (coordinates in full scrollable area of the tree)
64287 to bin_window coordinates.</doc>
64288         <return-value transfer-ownership="none">
64289           <type name="none" c:type="void"/>
64290         </return-value>
64291         <parameters>
64292           <parameter name="tx" transfer-ownership="none">
64293             <doc xml:whitespace="preserve">tree X coordinate</doc>
64294             <type name="gint" c:type="gint"/>
64295           </parameter>
64296           <parameter name="ty" transfer-ownership="none">
64297             <doc xml:whitespace="preserve">tree Y coordinate</doc>
64298             <type name="gint" c:type="gint"/>
64299           </parameter>
64300           <parameter name="bx" transfer-ownership="none">
64301             <doc xml:whitespace="preserve">return location for X coordinate relative to bin_window</doc>
64302             <type name="gint" c:type="gint*"/>
64303           </parameter>
64304           <parameter name="by" transfer-ownership="none">
64305             <doc xml:whitespace="preserve">return location for Y coordinate relative to bin_window</doc>
64306             <type name="gint" c:type="gint*"/>
64307           </parameter>
64308         </parameters>
64309       </method>
64310       <method name="convert_tree_to_widget_coords"
64311               c:identifier="gtk_tree_view_convert_tree_to_widget_coords"
64312               version="2.12">
64313         <doc xml:whitespace="preserve">Converts tree coordinates (coordinates in full scrollable area of the tree)
64314 to widget coordinates.</doc>
64315         <return-value transfer-ownership="none">
64316           <type name="none" c:type="void"/>
64317         </return-value>
64318         <parameters>
64319           <parameter name="tx" transfer-ownership="none">
64320             <doc xml:whitespace="preserve">X coordinate relative to the tree</doc>
64321             <type name="gint" c:type="gint"/>
64322           </parameter>
64323           <parameter name="ty" transfer-ownership="none">
64324             <doc xml:whitespace="preserve">Y coordinate relative to the tree</doc>
64325             <type name="gint" c:type="gint"/>
64326           </parameter>
64327           <parameter name="wx" transfer-ownership="none">
64328             <doc xml:whitespace="preserve">return location for widget X coordinate</doc>
64329             <type name="gint" c:type="gint*"/>
64330           </parameter>
64331           <parameter name="wy" transfer-ownership="none">
64332             <doc xml:whitespace="preserve">return location for widget Y coordinate</doc>
64333             <type name="gint" c:type="gint*"/>
64334           </parameter>
64335         </parameters>
64336       </method>
64337       <method name="convert_widget_to_bin_window_coords"
64338               c:identifier="gtk_tree_view_convert_widget_to_bin_window_coords"
64339               version="2.12">
64340         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the bin_window
64341 (see gtk_tree_view_get_bin_window()).</doc>
64342         <return-value transfer-ownership="none">
64343           <type name="none" c:type="void"/>
64344         </return-value>
64345         <parameters>
64346           <parameter name="wx" transfer-ownership="none">
64347             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
64348             <type name="gint" c:type="gint"/>
64349           </parameter>
64350           <parameter name="wy" transfer-ownership="none">
64351             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
64352             <type name="gint" c:type="gint"/>
64353           </parameter>
64354           <parameter name="bx" transfer-ownership="none">
64355             <doc xml:whitespace="preserve">return location for bin_window X coordinate</doc>
64356             <type name="gint" c:type="gint*"/>
64357           </parameter>
64358           <parameter name="by" transfer-ownership="none">
64359             <doc xml:whitespace="preserve">return location for bin_window Y coordinate</doc>
64360             <type name="gint" c:type="gint*"/>
64361           </parameter>
64362         </parameters>
64363       </method>
64364       <method name="convert_widget_to_tree_coords"
64365               c:identifier="gtk_tree_view_convert_widget_to_tree_coords"
64366               version="2.12">
64367         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the
64368 tree (the full scrollable area of the tree).</doc>
64369         <return-value transfer-ownership="none">
64370           <type name="none" c:type="void"/>
64371         </return-value>
64372         <parameters>
64373           <parameter name="wx" transfer-ownership="none">
64374             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
64375             <type name="gint" c:type="gint"/>
64376           </parameter>
64377           <parameter name="wy" transfer-ownership="none">
64378             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
64379             <type name="gint" c:type="gint"/>
64380           </parameter>
64381           <parameter name="tx" transfer-ownership="none">
64382             <doc xml:whitespace="preserve">return location for tree X coordinate</doc>
64383             <type name="gint" c:type="gint*"/>
64384           </parameter>
64385           <parameter name="ty" transfer-ownership="none">
64386             <doc xml:whitespace="preserve">return location for tree Y coordinate</doc>
64387             <type name="gint" c:type="gint*"/>
64388           </parameter>
64389         </parameters>
64390       </method>
64391       <method name="create_row_drag_icon"
64392               c:identifier="gtk_tree_view_create_row_drag_icon">
64393         <doc xml:whitespace="preserve">Creates a #GdkPixmap representation of the row at @path.
64394 This image is used for a drag icon.</doc>
64395         <return-value transfer-ownership="full">
64396           <doc xml:whitespace="preserve">a newly-allocated pixmap of the drag icon.</doc>
64397           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
64398         </return-value>
64399         <parameters>
64400           <parameter name="path" transfer-ownership="none">
64401             <doc xml:whitespace="preserve">a #GtkTreePath in @tree_view</doc>
64402             <type name="TreePath" c:type="GtkTreePath*"/>
64403           </parameter>
64404         </parameters>
64405       </method>
64406       <method name="enable_model_drag_dest"
64407               c:identifier="gtk_tree_view_enable_model_drag_dest">
64408         <doc xml:whitespace="preserve">Turns @tree_view into a drop destination for automatic DND. Calling
64409 this method sets #GtkTreeView:reorderable to %FALSE.</doc>
64410         <return-value transfer-ownership="none">
64411           <type name="none" c:type="void"/>
64412         </return-value>
64413         <parameters>
64414           <parameter name="targets" transfer-ownership="none">
64415             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
64416             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
64417           </parameter>
64418           <parameter name="n_targets" transfer-ownership="none">
64419             <doc xml:whitespace="preserve">the number of items in @targets</doc>
64420             <type name="gint" c:type="gint"/>
64421           </parameter>
64422           <parameter name="actions" transfer-ownership="none">
64423             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
64424             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
64425           </parameter>
64426         </parameters>
64427       </method>
64428       <method name="enable_model_drag_source"
64429               c:identifier="gtk_tree_view_enable_model_drag_source">
64430         <doc xml:whitespace="preserve">Turns @tree_view into a drag source for automatic DND. Calling this
64431 method sets #GtkTreeView:reorderable to %FALSE.</doc>
64432         <return-value transfer-ownership="none">
64433           <type name="none" c:type="void"/>
64434         </return-value>
64435         <parameters>
64436           <parameter name="start_button_mask" transfer-ownership="none">
64437             <doc xml:whitespace="preserve">Mask of allowed buttons to start drag</doc>
64438             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
64439           </parameter>
64440           <parameter name="targets" transfer-ownership="none">
64441             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
64442             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
64443           </parameter>
64444           <parameter name="n_targets" transfer-ownership="none">
64445             <doc xml:whitespace="preserve">the number of items in @targets</doc>
64446             <type name="gint" c:type="gint"/>
64447           </parameter>
64448           <parameter name="actions" transfer-ownership="none">
64449             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
64450             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
64451           </parameter>
64452         </parameters>
64453       </method>
64454       <method name="expand_all" c:identifier="gtk_tree_view_expand_all">
64455         <doc xml:whitespace="preserve">Recursively expands all nodes in the @tree_view.</doc>
64456         <return-value transfer-ownership="none">
64457           <type name="none" c:type="void"/>
64458         </return-value>
64459       </method>
64460       <method name="expand_row" c:identifier="gtk_tree_view_expand_row">
64461         <doc xml:whitespace="preserve">Opens the row so its children are visible.</doc>
64462         <return-value transfer-ownership="none">
64463           <doc xml:whitespace="preserve">%TRUE if the row existed and had children</doc>
64464           <type name="gboolean" c:type="gboolean"/>
64465         </return-value>
64466         <parameters>
64467           <parameter name="path" transfer-ownership="none">
64468             <doc xml:whitespace="preserve">path to a row</doc>
64469             <type name="TreePath" c:type="GtkTreePath*"/>
64470           </parameter>
64471           <parameter name="open_all" transfer-ownership="none">
64472             <doc xml:whitespace="preserve">whether to recursively expand, or just expand immediate children</doc>
64473             <type name="gboolean" c:type="gboolean"/>
64474           </parameter>
64475         </parameters>
64476       </method>
64477       <method name="expand_to_path"
64478               c:identifier="gtk_tree_view_expand_to_path"
64479               version="2.2">
64480         <doc xml:whitespace="preserve">Expands the row at @path. This will also expand all parent rows of</doc>
64481         <return-value transfer-ownership="none">
64482           <type name="none" c:type="void"/>
64483         </return-value>
64484         <parameters>
64485           <parameter name="path" transfer-ownership="none">
64486             <doc xml:whitespace="preserve">path to a row.</doc>
64487             <type name="TreePath" c:type="GtkTreePath*"/>
64488           </parameter>
64489         </parameters>
64490       </method>
64491       <method name="get_background_area"
64492               c:identifier="gtk_tree_view_get_background_area">
64493         <doc xml:whitespace="preserve">Fills the bounding rectangle in bin_window coordinates for the cell at the
64494 row specified by @path and the column specified by @column.  If @path is
64495 %NULL, or points to a node not found in the tree, the @y and @height fields of
64496 the rectangle will be filled with 0. If @column is %NULL, the @x and @width
64497 fields will be filled with 0.  The returned rectangle is equivalent to the
64498 areas tile to cover the entire bin window.  Contrast with the @cell_area,
64499 returned by gtk_tree_view_get_cell_area(), which returns only the cell
64500 itself, excluding surrounding borders and the tree expander area.</doc>
64501         <return-value transfer-ownership="none">
64502           <type name="none" c:type="void"/>
64503         </return-value>
64504         <parameters>
64505           <parameter name="path" transfer-ownership="none" allow-none="1">
64506             <doc xml:whitespace="preserve">a #GtkTreePath for the row, or %NULL to get only horizontal coordinates</doc>
64507             <type name="TreePath" c:type="GtkTreePath*"/>
64508           </parameter>
64509           <parameter name="column" transfer-ownership="none" allow-none="1">
64510             <doc xml:whitespace="preserve">a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordiantes</doc>
64511             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
64512           </parameter>
64513           <parameter name="rect" transfer-ownership="none">
64514             <doc xml:whitespace="preserve">rectangle to fill with cell background rect</doc>
64515             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
64516           </parameter>
64517         </parameters>
64518       </method>
64519       <method name="get_bin_window"
64520               c:identifier="gtk_tree_view_get_bin_window">
64521         <doc xml:whitespace="preserve">Returns the window that @tree_view renders to.
64522 This is used primarily to compare to &lt;literal&gt;event-&gt;window&lt;/literal&gt;
64523 to confirm that the event on @tree_view is on the right window.
64524 hasn't been realized yet</doc>
64525         <return-value transfer-ownership="none">
64526           <doc xml:whitespace="preserve">A #GdkWindow, or %NULL when @tree_view</doc>
64527           <type name="Gdk.Window" c:type="GdkWindow*"/>
64528         </return-value>
64529       </method>
64530       <method name="get_cell_area" c:identifier="gtk_tree_view_get_cell_area">
64531         <doc xml:whitespace="preserve">Fills the bounding rectangle in bin_window coordinates for the cell at the
64532 row specified by @path and the column specified by @column.  If @path is
64533 %NULL, or points to a path not currently displayed, the @y and @height fields
64534 of the rectangle will be filled with 0. If @column is %NULL, the @x and @width
64535 fields will be filled with 0.  The sum of all cell rects does not cover the
64536 entire tree; there are extra pixels in between rows, for example. The
64537 returned rectangle is equivalent to the @cell_area passed to
64538 gtk_cell_renderer_render().  This function is only valid if @tree_view is
64539 realized.</doc>
64540         <return-value transfer-ownership="none">
64541           <type name="none" c:type="void"/>
64542         </return-value>
64543         <parameters>
64544           <parameter name="path" transfer-ownership="none" allow-none="1">
64545             <doc xml:whitespace="preserve">a #GtkTreePath for the row, or %NULL to get only horizontal coordinates</doc>
64546             <type name="TreePath" c:type="GtkTreePath*"/>
64547           </parameter>
64548           <parameter name="column" transfer-ownership="none" allow-none="1">
64549             <doc xml:whitespace="preserve">a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordinates</doc>
64550             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
64551           </parameter>
64552           <parameter name="rect" transfer-ownership="none">
64553             <doc xml:whitespace="preserve">rectangle to fill with cell rect</doc>
64554             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
64555           </parameter>
64556         </parameters>
64557       </method>
64558       <method name="get_column" c:identifier="gtk_tree_view_get_column">
64559         <doc xml:whitespace="preserve">Gets the #GtkTreeViewColumn at the given position in the #tree_view.
64560 position is outside the range of columns.</doc>
64561         <return-value transfer-ownership="none">
64562           <doc xml:whitespace="preserve">The #GtkTreeViewColumn, or %NULL if the</doc>
64563           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
64564         </return-value>
64565         <parameters>
64566           <parameter name="n" transfer-ownership="none">
64567             <doc xml:whitespace="preserve">The position of the column, counting from 0.</doc>
64568             <type name="gint" c:type="gint"/>
64569           </parameter>
64570         </parameters>
64571       </method>
64572       <method name="get_columns" c:identifier="gtk_tree_view_get_columns">
64573         <doc xml:whitespace="preserve">Returns a #GList of all the #GtkTreeViewColumn s currently in @tree_view.
64574 The returned list must be freed with g_list_free ().</doc>
64575         <return-value transfer-ownership="container">
64576           <doc xml:whitespace="preserve">A list of #GtkTreeViewColumn s</doc>
64577           <type name="GLib.List" c:type="GList*">
64578             <type name="TreeViewColumn"/>
64579           </type>
64580         </return-value>
64581       </method>
64582       <method name="get_cursor" c:identifier="gtk_tree_view_get_cursor">
64583         <doc xml:whitespace="preserve">Fills in @path and @focus_column with the current path and focus column.  If
64584 the cursor isn't currently set, then *@path will be %NULL.  If no column
64585 currently has focus, then *@focus_column will be %NULL.
64586 The returned #GtkTreePath must be freed with gtk_tree_path_free() when
64587 you are done with it.</doc>
64588         <return-value transfer-ownership="none">
64589           <type name="none" c:type="void"/>
64590         </return-value>
64591         <parameters>
64592           <parameter name="path"
64593                      direction="out"
64594                      caller-allocates="0"
64595                      transfer-ownership="full"
64596                      allow-none="1">
64597             <doc xml:whitespace="preserve">A pointer to be filled with the current cursor path, or %NULL</doc>
64598             <type name="TreePath" c:type="GtkTreePath**"/>
64599           </parameter>
64600           <parameter name="focus_column"
64601                      direction="out"
64602                      caller-allocates="0"
64603                      transfer-ownership="full"
64604                      allow-none="1">
64605             <doc xml:whitespace="preserve">A pointer to be filled with the current focus column, or %NULL</doc>
64606             <type name="TreeViewColumn" c:type="GtkTreeViewColumn**"/>
64607           </parameter>
64608         </parameters>
64609       </method>
64610       <method name="get_dest_row_at_pos"
64611               c:identifier="gtk_tree_view_get_dest_row_at_pos">
64612         <doc xml:whitespace="preserve">Determines the destination row for a given position.  @drag_x and
64613 meaningful if @tree_view is realized.  Therefore this function will always
64614 return %FALSE if @tree_view is not realized or does not have a model.
64615 is indeed the case.</doc>
64616         <return-value transfer-ownership="none">
64617           <doc xml:whitespace="preserve">whether there is a row at the given position, %TRUE if this</doc>
64618           <type name="gboolean" c:type="gboolean"/>
64619         </return-value>
64620         <parameters>
64621           <parameter name="drag_x" transfer-ownership="none">
64622             <doc xml:whitespace="preserve">the position to determine the destination row for</doc>
64623             <type name="gint" c:type="gint"/>
64624           </parameter>
64625           <parameter name="drag_y" transfer-ownership="none">
64626             <doc xml:whitespace="preserve">the position to determine the destination row for</doc>
64627             <type name="gint" c:type="gint"/>
64628           </parameter>
64629           <parameter name="path"
64630                      direction="out"
64631                      caller-allocates="0"
64632                      transfer-ownership="full"
64633                      allow-none="1">
64634             <doc xml:whitespace="preserve">Return location for the path of the highlighted row, or %NULL.</doc>
64635             <type name="TreePath" c:type="GtkTreePath**"/>
64636           </parameter>
64637           <parameter name="pos"
64638                      direction="out"
64639                      caller-allocates="1"
64640                      transfer-ownership="none"
64641                      allow-none="1">
64642             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
64643             <type name="TreeViewDropPosition"
64644                   c:type="GtkTreeViewDropPosition*"/>
64645           </parameter>
64646         </parameters>
64647       </method>
64648       <method name="get_drag_dest_row"
64649               c:identifier="gtk_tree_view_get_drag_dest_row">
64650         <doc xml:whitespace="preserve">Gets information about the row that is highlighted for feedback.</doc>
64651         <return-value transfer-ownership="none">
64652           <type name="none" c:type="void"/>
64653         </return-value>
64654         <parameters>
64655           <parameter name="path"
64656                      direction="out"
64657                      caller-allocates="0"
64658                      transfer-ownership="full"
64659                      allow-none="1">
64660             <doc xml:whitespace="preserve">Return location for the path of the highlighted row, or %NULL.</doc>
64661             <type name="TreePath" c:type="GtkTreePath**"/>
64662           </parameter>
64663           <parameter name="pos"
64664                      direction="out"
64665                      caller-allocates="1"
64666                      transfer-ownership="none"
64667                      allow-none="1">
64668             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
64669             <type name="TreeViewDropPosition"
64670                   c:type="GtkTreeViewDropPosition*"/>
64671           </parameter>
64672         </parameters>
64673       </method>
64674       <method name="get_enable_search"
64675               c:identifier="gtk_tree_view_get_enable_search">
64676         <doc xml:whitespace="preserve">Returns whether or not the tree allows to start interactive searching 
64677 by typing in text.</doc>
64678         <return-value transfer-ownership="none">
64679           <doc xml:whitespace="preserve">whether or not to let the user search interactively</doc>
64680           <type name="gboolean" c:type="gboolean"/>
64681         </return-value>
64682       </method>
64683       <method name="get_enable_tree_lines"
64684               c:identifier="gtk_tree_view_get_enable_tree_lines"
64685               version="2.10">
64686         <doc xml:whitespace="preserve">Returns whether or not tree lines are drawn in @tree_view.
64687 otherwise.</doc>
64688         <return-value transfer-ownership="none">
64689           <doc xml:whitespace="preserve">%TRUE if tree lines are drawn in @tree_view, %FALSE</doc>
64690           <type name="gboolean" c:type="gboolean"/>
64691         </return-value>
64692       </method>
64693       <method name="get_expander_column"
64694               c:identifier="gtk_tree_view_get_expander_column">
64695         <doc xml:whitespace="preserve">Returns the column that is the current expander column.
64696 This column has the expander arrow drawn next to it.</doc>
64697         <return-value transfer-ownership="none">
64698           <doc xml:whitespace="preserve">The expander column.</doc>
64699           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
64700         </return-value>
64701       </method>
64702       <method name="get_fixed_height_mode"
64703               c:identifier="gtk_tree_view_get_fixed_height_mode"
64704               version="2.6">
64705         <doc xml:whitespace="preserve">Returns whether fixed height mode is turned on for @tree_view.</doc>
64706         <return-value transfer-ownership="none">
64707           <doc xml:whitespace="preserve">%TRUE if @tree_view is in fixed height mode</doc>
64708           <type name="gboolean" c:type="gboolean"/>
64709         </return-value>
64710       </method>
64711       <method name="get_grid_lines"
64712               c:identifier="gtk_tree_view_get_grid_lines"
64713               version="2.10">
64714         <doc xml:whitespace="preserve">Returns which grid lines are enabled in @tree_view.
64715 are enabled.</doc>
64716         <return-value transfer-ownership="none">
64717           <doc xml:whitespace="preserve">a #GtkTreeViewGridLines value indicating which grid lines</doc>
64718           <type name="TreeViewGridLines" c:type="GtkTreeViewGridLines"/>
64719         </return-value>
64720       </method>
64721       <method name="get_hadjustment"
64722               c:identifier="gtk_tree_view_get_hadjustment">
64723         <doc xml:whitespace="preserve">Gets the #GtkAdjustment currently being used for the horizontal aspect.
64724 if none is currently being used.</doc>
64725         <return-value transfer-ownership="none">
64726           <doc xml:whitespace="preserve">A #GtkAdjustment object, or %NULL</doc>
64727           <type name="Adjustment" c:type="GtkAdjustment*"/>
64728         </return-value>
64729       </method>
64730       <method name="get_headers_clickable"
64731               c:identifier="gtk_tree_view_get_headers_clickable"
64732               version="2.10">
64733         <doc xml:whitespace="preserve">Returns whether all header columns are clickable.</doc>
64734         <return-value transfer-ownership="none">
64735           <doc xml:whitespace="preserve">%TRUE if all header columns are clickable, otherwise %FALSE</doc>
64736           <type name="gboolean" c:type="gboolean"/>
64737         </return-value>
64738       </method>
64739       <method name="get_headers_visible"
64740               c:identifier="gtk_tree_view_get_headers_visible">
64741         <doc xml:whitespace="preserve">Returns %TRUE if the headers on the @tree_view are visible.</doc>
64742         <return-value transfer-ownership="none">
64743           <doc xml:whitespace="preserve">Whether the headers are visible or not.</doc>
64744           <type name="gboolean" c:type="gboolean"/>
64745         </return-value>
64746       </method>
64747       <method name="get_hover_expand"
64748               c:identifier="gtk_tree_view_get_hover_expand"
64749               version="2.6 ">
64750         <doc xml:whitespace="preserve">Returns whether hover expansion mode is turned on for @tree_view.</doc>
64751         <return-value transfer-ownership="none">
64752           <doc xml:whitespace="preserve">%TRUE if @tree_view is in hover expansion mode</doc>
64753           <type name="gboolean" c:type="gboolean"/>
64754         </return-value>
64755       </method>
64756       <method name="get_hover_selection"
64757               c:identifier="gtk_tree_view_get_hover_selection"
64758               version="2.6 ">
64759         <doc xml:whitespace="preserve">Returns whether hover selection mode is turned on for @tree_view.</doc>
64760         <return-value transfer-ownership="none">
64761           <doc xml:whitespace="preserve">%TRUE if @tree_view is in hover selection mode</doc>
64762           <type name="gboolean" c:type="gboolean"/>
64763         </return-value>
64764       </method>
64765       <method name="get_level_indentation"
64766               c:identifier="gtk_tree_view_get_level_indentation"
64767               version="2.12">
64768         <doc xml:whitespace="preserve">Returns the amount, in pixels, of extra indentation for child levels
64769 in @tree_view.</doc>
64770         <return-value transfer-ownership="none">
64771           <doc xml:whitespace="preserve">the amount of extra indentation for child levels in</doc>
64772           <type name="gint" c:type="gint"/>
64773         </return-value>
64774       </method>
64775       <method name="get_model" c:identifier="gtk_tree_view_get_model">
64776         <doc xml:whitespace="preserve">Returns the model the #GtkTreeView is based on.  Returns %NULL if the
64777 model is unset.</doc>
64778         <return-value transfer-ownership="none">
64779           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none is currently being used.</doc>
64780           <type name="TreeModel" c:type="GtkTreeModel*"/>
64781         </return-value>
64782       </method>
64783       <method name="get_path_at_pos"
64784               c:identifier="gtk_tree_view_get_path_at_pos">
64785         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates
64786 (please see gtk_tree_view_get_bin_window()).
64787 That is, @x and @y are relative to an events coordinates. @x and @y must
64788 come from an event on the @tree_view only where &lt;literal&gt;event-&gt;window ==
64789 gtk_tree_view_get_bin_window (&lt;!-- --&gt;)&lt;/literal&gt;. It is primarily for
64790 things like popup menus. If @path is non-%NULL, then it will be filled
64791 with the #GtkTreePath at that point.  This path should be freed with
64792 gtk_tree_path_free().  If @column is non-%NULL, then it will be filled
64793 with the column at that point.  @cell_x and @cell_y return the coordinates
64794 relative to the cell background (i.e. the @background_area passed to
64795 gtk_cell_renderer_render()).  This function is only meaningful if
64796 if @tree_view is not realized or does not have a model.
64797 For converting widget coordinates (eg. the ones you get from
64798 GtkWidget::query-tooltip), please see
64799 gtk_tree_view_convert_widget_to_bin_window_coords().</doc>
64800         <return-value transfer-ownership="none">
64801           <doc xml:whitespace="preserve">%TRUE if a row exists at that coordinate.</doc>
64802           <type name="gboolean" c:type="gboolean"/>
64803         </return-value>
64804         <parameters>
64805           <parameter name="x" transfer-ownership="none">
64806             <doc xml:whitespace="preserve">The x position to be identified (relative to bin_window).</doc>
64807             <type name="gint" c:type="gint"/>
64808           </parameter>
64809           <parameter name="y" transfer-ownership="none">
64810             <doc xml:whitespace="preserve">The y position to be identified (relative to bin_window).</doc>
64811             <type name="gint" c:type="gint"/>
64812           </parameter>
64813           <parameter name="path"
64814                      direction="out"
64815                      caller-allocates="0"
64816                      transfer-ownership="full"
64817                      allow-none="1">
64818             <doc xml:whitespace="preserve">A pointer to a #GtkTreePath pointer to be filled in, or %NULL</doc>
64819             <type name="TreePath" c:type="GtkTreePath**"/>
64820           </parameter>
64821           <parameter name="column"
64822                      direction="out"
64823                      caller-allocates="0"
64824                      transfer-ownership="full"
64825                      allow-none="1">
64826             <doc xml:whitespace="preserve">A pointer to a #GtkTreeViewColumn pointer to be filled in, or %NULL</doc>
64827             <type name="TreeViewColumn" c:type="GtkTreeViewColumn**"/>
64828           </parameter>
64829           <parameter name="cell_x"
64830                      direction="out"
64831                      caller-allocates="0"
64832                      transfer-ownership="full"
64833                      allow-none="1">
64834             <doc xml:whitespace="preserve">A pointer where the X coordinate relative to the cell can be placed, or %NULL</doc>
64835             <type name="gint" c:type="gint*"/>
64836           </parameter>
64837           <parameter name="cell_y"
64838                      direction="out"
64839                      caller-allocates="0"
64840                      transfer-ownership="full"
64841                      allow-none="1">
64842             <doc xml:whitespace="preserve">A pointer where the Y coordinate relative to the cell can be placed, or %NULL</doc>
64843             <type name="gint" c:type="gint*"/>
64844           </parameter>
64845         </parameters>
64846       </method>
64847       <method name="get_reorderable"
64848               c:identifier="gtk_tree_view_get_reorderable">
64849         <doc xml:whitespace="preserve">Retrieves whether the user can reorder the tree via drag-and-drop. See
64850 gtk_tree_view_set_reorderable().</doc>
64851         <return-value transfer-ownership="none">
64852           <doc xml:whitespace="preserve">%TRUE if the tree can be reordered.</doc>
64853           <type name="gboolean" c:type="gboolean"/>
64854         </return-value>
64855       </method>
64856       <method name="get_row_separator_func"
64857               c:identifier="gtk_tree_view_get_row_separator_func"
64858               version="2.6"
64859               introspectable="0">
64860         <doc xml:whitespace="preserve">Returns the current row separator function.</doc>
64861         <return-value>
64862           <doc xml:whitespace="preserve">the current row separator function.</doc>
64863           <type name="TreeViewRowSeparatorFunc"
64864                 c:type="GtkTreeViewRowSeparatorFunc"/>
64865         </return-value>
64866       </method>
64867       <method name="get_rubber_banding"
64868               c:identifier="gtk_tree_view_get_rubber_banding"
64869               version="2.10">
64870         <doc xml:whitespace="preserve">Returns whether rubber banding is turned on for @tree_view.  If the
64871 selection mode is #GTK_SELECTION_MULTIPLE, rubber banding will allow the
64872 user to select multiple rows by dragging the mouse.</doc>
64873         <return-value transfer-ownership="none">
64874           <doc xml:whitespace="preserve">%TRUE if rubber banding in @tree_view is enabled.</doc>
64875           <type name="gboolean" c:type="gboolean"/>
64876         </return-value>
64877       </method>
64878       <method name="get_rules_hint"
64879               c:identifier="gtk_tree_view_get_rules_hint">
64880         <return-value transfer-ownership="none">
64881           <type name="gboolean" c:type="gboolean"/>
64882         </return-value>
64883       </method>
64884       <method name="get_search_column"
64885               c:identifier="gtk_tree_view_get_search_column">
64886         <doc xml:whitespace="preserve">Gets the column searched on by the interactive search code.</doc>
64887         <return-value transfer-ownership="none">
64888           <doc xml:whitespace="preserve">the column the interactive search code searches in.</doc>
64889           <type name="gint" c:type="gint"/>
64890         </return-value>
64891       </method>
64892       <method name="get_search_entry"
64893               c:identifier="gtk_tree_view_get_search_entry"
64894               version="2.10">
64895         <doc xml:whitespace="preserve">Returns the #GtkEntry which is currently in use as interactive search
64896 entry for @tree_view.  In case the built-in entry is being used, %NULL
64897 will be returned.</doc>
64898         <return-value transfer-ownership="none">
64899           <doc xml:whitespace="preserve">the entry currently in use as search entry.</doc>
64900           <type name="Entry" c:type="GtkEntry*"/>
64901         </return-value>
64902       </method>
64903       <method name="get_search_equal_func"
64904               c:identifier="gtk_tree_view_get_search_equal_func"
64905               introspectable="0">
64906         <doc xml:whitespace="preserve">Returns the compare function currently in use.</doc>
64907         <return-value>
64908           <doc xml:whitespace="preserve">the currently used compare function for the search code.</doc>
64909           <type name="TreeViewSearchEqualFunc"
64910                 c:type="GtkTreeViewSearchEqualFunc"/>
64911         </return-value>
64912       </method>
64913       <method name="get_search_position_func"
64914               c:identifier="gtk_tree_view_get_search_position_func"
64915               version="2.10"
64916               introspectable="0">
64917         <doc xml:whitespace="preserve">Returns the positioning function currently in use.</doc>
64918         <return-value>
64919           <doc xml:whitespace="preserve">the currently used function for positioning the search dialog.</doc>
64920           <type name="TreeViewSearchPositionFunc"
64921                 c:type="GtkTreeViewSearchPositionFunc"/>
64922         </return-value>
64923       </method>
64924       <method name="get_selection" c:identifier="gtk_tree_view_get_selection">
64925         <doc xml:whitespace="preserve">Gets the #GtkTreeSelection associated with @tree_view.</doc>
64926         <return-value transfer-ownership="none">
64927           <doc xml:whitespace="preserve">A #GtkTreeSelection object.</doc>
64928           <type name="TreeSelection" c:type="GtkTreeSelection*"/>
64929         </return-value>
64930       </method>
64931       <method name="get_show_expanders"
64932               c:identifier="gtk_tree_view_get_show_expanders"
64933               version="2.12">
64934         <doc xml:whitespace="preserve">Returns whether or not expanders are drawn in @tree_view.
64935 otherwise.</doc>
64936         <return-value transfer-ownership="none">
64937           <doc xml:whitespace="preserve">%TRUE if expanders are drawn in @tree_view, %FALSE</doc>
64938           <type name="gboolean" c:type="gboolean"/>
64939         </return-value>
64940       </method>
64941       <method name="get_tooltip_column"
64942               c:identifier="gtk_tree_view_get_tooltip_column"
64943               version="2.12">
64944         <doc xml:whitespace="preserve">Returns the column of @tree_view's model which is being used for
64945 displaying tooltips on @tree_view's rows.
64946 used, or -1 if this is disabled.</doc>
64947         <return-value transfer-ownership="none">
64948           <doc xml:whitespace="preserve">the index of the tooltip column that is currently being</doc>
64949           <type name="gint" c:type="gint"/>
64950         </return-value>
64951       </method>
64952       <method name="get_tooltip_context"
64953               c:identifier="gtk_tree_view_get_tooltip_context"
64954               version="2.12">
64955         <doc xml:whitespace="preserve">This function is supposed to be used in a #GtkWidget::query-tooltip
64956 signal handler for #GtkTreeView.  The @x, @y and @keyboard_tip values
64957 which are received in the signal handler, should be passed to this
64958 function without modification.
64959 The return value indicates whether there is a tree view row at the given
64960 coordinates (%TRUE) or not (%FALSE) for mouse tooltips.  For keyboard
64961 tooltips the row returned will be the cursor row.  When %TRUE, then any of
64962 that row and the corresponding model.  @x and @y will always be converted
64963 to be relative to @tree_view's bin_window if @keyboard_tooltip is %FALSE.</doc>
64964         <return-value transfer-ownership="none">
64965           <doc xml:whitespace="preserve">whether or not the given tooltip context points to a row.</doc>
64966           <type name="gboolean" c:type="gboolean"/>
64967         </return-value>
64968         <parameters>
64969           <parameter name="x" transfer-ownership="none">
64970             <doc xml:whitespace="preserve">the x coordinate (relative to widget coordinates)</doc>
64971             <type name="gint" c:type="gint*"/>
64972           </parameter>
64973           <parameter name="y" transfer-ownership="none">
64974             <doc xml:whitespace="preserve">the y coordinate (relative to widget coordinates)</doc>
64975             <type name="gint" c:type="gint*"/>
64976           </parameter>
64977           <parameter name="keyboard_tip" transfer-ownership="none">
64978             <doc xml:whitespace="preserve">whether this is a keyboard tooltip or not</doc>
64979             <type name="gboolean" c:type="gboolean"/>
64980           </parameter>
64981           <parameter name="model"
64982                      direction="out"
64983                      caller-allocates="0"
64984                      transfer-ownership="full"
64985                      allow-none="1">
64986             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeModel or %NULL</doc>
64987             <type name="TreeModel" c:type="GtkTreeModel**"/>
64988           </parameter>
64989           <parameter name="path"
64990                      direction="out"
64991                      caller-allocates="0"
64992                      transfer-ownership="full"
64993                      allow-none="1">
64994             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreePath or %NULL</doc>
64995             <type name="TreePath" c:type="GtkTreePath**"/>
64996           </parameter>
64997           <parameter name="iter"
64998                      direction="out"
64999                      caller-allocates="1"
65000                      transfer-ownership="none"
65001                      allow-none="1">
65002             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeIter or %NULL</doc>
65003             <type name="TreeIter" c:type="GtkTreeIter*"/>
65004           </parameter>
65005         </parameters>
65006       </method>
65007       <method name="get_vadjustment"
65008               c:identifier="gtk_tree_view_get_vadjustment">
65009         <doc xml:whitespace="preserve">Gets the #GtkAdjustment currently being used for the vertical aspect.
65010 if none is currently being used.</doc>
65011         <return-value transfer-ownership="none">
65012           <doc xml:whitespace="preserve">A #GtkAdjustment object, or %NULL</doc>
65013           <type name="Adjustment" c:type="GtkAdjustment*"/>
65014         </return-value>
65015       </method>
65016       <method name="get_visible_range"
65017               c:identifier="gtk_tree_view_get_visible_range"
65018               version="2.8">
65019         <doc xml:whitespace="preserve">Sets @start_path and @end_path to be the first and last visible path.
65020 Note that there may be invisible paths in between.
65021 The paths should be freed with gtk_tree_path_free() after use.</doc>
65022         <return-value transfer-ownership="none">
65023           <doc xml:whitespace="preserve">%TRUE, if valid paths were placed in @start_path and @end_path.</doc>
65024           <type name="gboolean" c:type="gboolean"/>
65025         </return-value>
65026         <parameters>
65027           <parameter name="start_path"
65028                      transfer-ownership="none"
65029                      allow-none="1">
65030             <doc xml:whitespace="preserve">Return location for start of region, or %NULL.</doc>
65031             <type name="TreePath" c:type="GtkTreePath**"/>
65032           </parameter>
65033           <parameter name="end_path" transfer-ownership="none" allow-none="1">
65034             <doc xml:whitespace="preserve">Return location for end of region, or %NULL.</doc>
65035             <type name="TreePath" c:type="GtkTreePath**"/>
65036           </parameter>
65037         </parameters>
65038       </method>
65039       <method name="get_visible_rect"
65040               c:identifier="gtk_tree_view_get_visible_rect">
65041         <doc xml:whitespace="preserve">Fills @visible_rect with the currently-visible region of the
65042 buffer, in tree coordinates. Convert to bin_window coordinates with
65043 gtk_tree_view_convert_tree_to_bin_window_coords().
65044 Tree coordinates start at 0,0 for row 0 of the tree, and cover the entire
65045 scrollable area of the tree.</doc>
65046         <return-value transfer-ownership="none">
65047           <type name="none" c:type="void"/>
65048         </return-value>
65049         <parameters>
65050           <parameter name="visible_rect" transfer-ownership="none">
65051             <doc xml:whitespace="preserve">rectangle to fill</doc>
65052             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
65053           </parameter>
65054         </parameters>
65055       </method>
65056       <method name="insert_column" c:identifier="gtk_tree_view_insert_column">
65057         <doc xml:whitespace="preserve">This inserts the @column into the @tree_view at @position.  If @position is
65058 -1, then the column is inserted at the end. If @tree_view has
65059 "fixed_height" mode enabled, then @column must have its "sizing" property
65060 set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
65061         <return-value transfer-ownership="none">
65062           <doc xml:whitespace="preserve">The number of columns in @tree_view after insertion.</doc>
65063           <type name="gint" c:type="gint"/>
65064         </return-value>
65065         <parameters>
65066           <parameter name="column" transfer-ownership="none">
65067             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be inserted.</doc>
65068             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65069           </parameter>
65070           <parameter name="position" transfer-ownership="none">
65071             <doc xml:whitespace="preserve">The position to insert @column in.</doc>
65072             <type name="gint" c:type="gint"/>
65073           </parameter>
65074         </parameters>
65075       </method>
65076       <method name="insert_column_with_attributes"
65077               c:identifier="gtk_tree_view_insert_column_with_attributes"
65078               introspectable="0">
65079         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn and inserts it into the @tree_view at
65080 the end.  The column is initialized with the attributes given. If @tree_view
65081 has "fixed_height" mode enabled, then the new column will have its sizing
65082 property set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
65083         <return-value transfer-ownership="none">
65084           <doc xml:whitespace="preserve">The number of columns in @tree_view after insertion.</doc>
65085           <type name="gint" c:type="gint"/>
65086         </return-value>
65087         <parameters>
65088           <parameter name="position" transfer-ownership="none">
65089             <doc xml:whitespace="preserve">The position to insert the new column in.</doc>
65090             <type name="gint" c:type="gint"/>
65091           </parameter>
65092           <parameter name="title" transfer-ownership="none">
65093             <doc xml:whitespace="preserve">The title to set the header to.</doc>
65094             <type name="utf8" c:type="gchar*"/>
65095           </parameter>
65096           <parameter name="cell" transfer-ownership="none">
65097             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
65098             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
65099           </parameter>
65100           <parameter transfer-ownership="none">
65101             <varargs>
65102             </varargs>
65103           </parameter>
65104         </parameters>
65105       </method>
65106       <method name="insert_column_with_data_func"
65107               c:identifier="gtk_tree_view_insert_column_with_data_func">
65108         <doc xml:whitespace="preserve">Convenience function that inserts a new column into the #GtkTreeView
65109 with the given cell renderer and a #GtkCellDataFunc to set cell renderer
65110 attributes (normally using data from the model). See also
65111 gtk_tree_view_column_set_cell_data_func(), gtk_tree_view_column_pack_start().
65112 If @tree_view has "fixed_height" mode enabled, then the new column will have its
65113 "sizing" property set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
65114         <return-value transfer-ownership="none">
65115           <doc xml:whitespace="preserve">number of columns in the tree view post-insert</doc>
65116           <type name="gint" c:type="gint"/>
65117         </return-value>
65118         <parameters>
65119           <parameter name="position" transfer-ownership="none">
65120             <doc xml:whitespace="preserve">Position to insert, -1 for append</doc>
65121             <type name="gint" c:type="gint"/>
65122           </parameter>
65123           <parameter name="title" transfer-ownership="none">
65124             <doc xml:whitespace="preserve">column title</doc>
65125             <type name="utf8" c:type="gchar*"/>
65126           </parameter>
65127           <parameter name="cell" transfer-ownership="none">
65128             <doc xml:whitespace="preserve">cell renderer for column</doc>
65129             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
65130           </parameter>
65131           <parameter name="func"
65132                      transfer-ownership="none"
65133                      scope="notified"
65134                      closure="4"
65135                      destroy="5">
65136             <doc xml:whitespace="preserve">function to set attributes of cell renderer</doc>
65137             <type name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc"/>
65138           </parameter>
65139           <parameter name="data" transfer-ownership="none">
65140             <doc xml:whitespace="preserve">data for @func</doc>
65141             <type name="gpointer" c:type="gpointer"/>
65142           </parameter>
65143           <parameter name="dnotify" transfer-ownership="none" scope="async">
65144             <doc xml:whitespace="preserve">destroy notifier for @data</doc>
65145             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65146           </parameter>
65147         </parameters>
65148       </method>
65149       <method name="is_rubber_banding_active"
65150               c:identifier="gtk_tree_view_is_rubber_banding_active"
65151               version="2.12">
65152         <doc xml:whitespace="preserve">Returns whether a rubber banding operation is currently being done
65153 in @tree_view.
65154 done in @tree_view.</doc>
65155         <return-value transfer-ownership="none">
65156           <doc xml:whitespace="preserve">%TRUE if a rubber banding operation is currently being</doc>
65157           <type name="gboolean" c:type="gboolean"/>
65158         </return-value>
65159       </method>
65160       <method name="map_expanded_rows"
65161               c:identifier="gtk_tree_view_map_expanded_rows">
65162         <doc xml:whitespace="preserve">Calls @func on all expanded rows.</doc>
65163         <return-value transfer-ownership="none">
65164           <type name="none" c:type="void"/>
65165         </return-value>
65166         <parameters>
65167           <parameter name="func"
65168                      transfer-ownership="none"
65169                      scope="call"
65170                      closure="1">
65171             <doc xml:whitespace="preserve">A function to be called</doc>
65172             <type name="TreeViewMappingFunc" c:type="GtkTreeViewMappingFunc"/>
65173           </parameter>
65174           <parameter name="data" transfer-ownership="none">
65175             <doc xml:whitespace="preserve">User data to be passed to the function.</doc>
65176             <type name="gpointer" c:type="gpointer"/>
65177           </parameter>
65178         </parameters>
65179       </method>
65180       <method name="move_column_after"
65181               c:identifier="gtk_tree_view_move_column_after">
65182         <doc xml:whitespace="preserve">Moves @column to be after to @base_column.  If @base_column is %NULL, then</doc>
65183         <return-value transfer-ownership="none">
65184           <type name="none" c:type="void"/>
65185         </return-value>
65186         <parameters>
65187           <parameter name="column" transfer-ownership="none">
65188             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be moved.</doc>
65189             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65190           </parameter>
65191           <parameter name="base_column"
65192                      transfer-ownership="none"
65193                      allow-none="1">
65194             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be moved relative to, or %NULL.</doc>
65195             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65196           </parameter>
65197         </parameters>
65198       </method>
65199       <method name="remove_column" c:identifier="gtk_tree_view_remove_column">
65200         <doc xml:whitespace="preserve">Removes @column from @tree_view.</doc>
65201         <return-value transfer-ownership="none">
65202           <doc xml:whitespace="preserve">The number of columns in @tree_view after removing.</doc>
65203           <type name="gint" c:type="gint"/>
65204         </return-value>
65205         <parameters>
65206           <parameter name="column" transfer-ownership="none">
65207             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to remove.</doc>
65208             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65209           </parameter>
65210         </parameters>
65211       </method>
65212       <method name="row_activated" c:identifier="gtk_tree_view_row_activated">
65213         <doc xml:whitespace="preserve">Activates the cell determined by @path and @column.</doc>
65214         <return-value transfer-ownership="none">
65215           <type name="none" c:type="void"/>
65216         </return-value>
65217         <parameters>
65218           <parameter name="path" transfer-ownership="none">
65219             <doc xml:whitespace="preserve">The #GtkTreePath to be activated.</doc>
65220             <type name="TreePath" c:type="GtkTreePath*"/>
65221           </parameter>
65222           <parameter name="column" transfer-ownership="none">
65223             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be activated.</doc>
65224             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65225           </parameter>
65226         </parameters>
65227       </method>
65228       <method name="row_expanded" c:identifier="gtk_tree_view_row_expanded">
65229         <doc xml:whitespace="preserve">Returns %TRUE if the node pointed to by @path is expanded in @tree_view.</doc>
65230         <return-value transfer-ownership="none">
65231           <doc xml:whitespace="preserve">%TRUE if #path is expanded.</doc>
65232           <type name="gboolean" c:type="gboolean"/>
65233         </return-value>
65234         <parameters>
65235           <parameter name="path" transfer-ownership="none">
65236             <doc xml:whitespace="preserve">A #GtkTreePath to test expansion state.</doc>
65237             <type name="TreePath" c:type="GtkTreePath*"/>
65238           </parameter>
65239         </parameters>
65240       </method>
65241       <method name="scroll_to_cell"
65242               c:identifier="gtk_tree_view_scroll_to_cell">
65243         <doc xml:whitespace="preserve">Moves the alignments of @tree_view to the position specified by @column and
65244 if @path is %NULL no vertical scrolling occurs.  At a minimum, one of @column
65245 or @path need to be non-%NULL.  @row_align determines where the row is
65246 placed, and @col_align determines where @column is placed.  Both are expected
65247 to be between 0.0 and 1.0. 0.0 means left/top alignment, 1.0 means
65248 right/bottom alignment, 0.5 means center.
65249 If @use_align is %FALSE, then the alignment arguments are ignored, and the
65250 tree does the minimum amount of work to scroll the cell onto the screen.
65251 This means that the cell will be scrolled to the edge closest to its current
65252 position.  If the cell is currently visible on the screen, nothing is done.
65253 This function only works if the model is set, and @path is a valid row on the
65254 model.  If the model changes before the @tree_view is realized, the centered
65255 path will be modified to reflect this change.</doc>
65256         <return-value transfer-ownership="none">
65257           <type name="none" c:type="void"/>
65258         </return-value>
65259         <parameters>
65260           <parameter name="path" transfer-ownership="none" allow-none="1">
65261             <doc xml:whitespace="preserve">The path of the row to move to, or %NULL.</doc>
65262             <type name="TreePath" c:type="GtkTreePath*"/>
65263           </parameter>
65264           <parameter name="column" transfer-ownership="none" allow-none="1">
65265             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to move horizontally to, or %NULL.</doc>
65266             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65267           </parameter>
65268           <parameter name="use_align" transfer-ownership="none">
65269             <doc xml:whitespace="preserve">whether to use alignment arguments, or %FALSE.</doc>
65270             <type name="gboolean" c:type="gboolean"/>
65271           </parameter>
65272           <parameter name="row_align" transfer-ownership="none">
65273             <doc xml:whitespace="preserve">The vertical alignment of the row specified by @path.</doc>
65274             <type name="gfloat" c:type="gfloat"/>
65275           </parameter>
65276           <parameter name="col_align" transfer-ownership="none">
65277             <doc xml:whitespace="preserve">The horizontal alignment of the column specified by @column.</doc>
65278             <type name="gfloat" c:type="gfloat"/>
65279           </parameter>
65280         </parameters>
65281       </method>
65282       <method name="scroll_to_point"
65283               c:identifier="gtk_tree_view_scroll_to_point">
65284         <doc xml:whitespace="preserve">Scrolls the tree view such that the top-left corner of the visible
65285 area is @tree_x, @tree_y, where @tree_x and @tree_y are specified
65286 in tree coordinates.  The @tree_view must be realized before
65287 this function is called.  If it isn't, you probably want to be
65288 using gtk_tree_view_scroll_to_cell().
65289 If either @tree_x or @tree_y are -1, then that direction isn't scrolled.</doc>
65290         <return-value transfer-ownership="none">
65291           <type name="none" c:type="void"/>
65292         </return-value>
65293         <parameters>
65294           <parameter name="tree_x" transfer-ownership="none">
65295             <doc xml:whitespace="preserve">X coordinate of new top-left pixel of visible area, or -1</doc>
65296             <type name="gint" c:type="gint"/>
65297           </parameter>
65298           <parameter name="tree_y" transfer-ownership="none">
65299             <doc xml:whitespace="preserve">Y coordinate of new top-left pixel of visible area, or -1</doc>
65300             <type name="gint" c:type="gint"/>
65301           </parameter>
65302         </parameters>
65303       </method>
65304       <method name="set_column_drag_function"
65305               c:identifier="gtk_tree_view_set_column_drag_function">
65306         <doc xml:whitespace="preserve">Sets a user function for determining where a column may be dropped when
65307 dragged.  This function is called on every column pair in turn at the
65308 beginning of a column drag to determine where a drop can take place.  The
65309 dragged, the two #GtkTreeViewColumn s determining the drop spot, and
65310 are %NULL, then they indicate an edge.  If @func is set to be %NULL, then
65311 dropped everywhere.</doc>
65312         <return-value transfer-ownership="none">
65313           <type name="none" c:type="void"/>
65314         </return-value>
65315         <parameters>
65316           <parameter name="func"
65317                      transfer-ownership="none"
65318                      allow-none="1"
65319                      scope="notified"
65320                      closure="1"
65321                      destroy="2">
65322             <doc xml:whitespace="preserve">A function to determine which columns are reorderable, or %NULL.</doc>
65323             <type name="TreeViewColumnDropFunc"
65324                   c:type="GtkTreeViewColumnDropFunc"/>
65325           </parameter>
65326           <parameter name="user_data" transfer-ownership="none" allow-none="1">
65327             <doc xml:whitespace="preserve">User data to be passed to @func, or %NULL</doc>
65328             <type name="gpointer" c:type="gpointer"/>
65329           </parameter>
65330           <parameter name="destroy"
65331                      transfer-ownership="none"
65332                      allow-none="1"
65333                      scope="async">
65334             <doc xml:whitespace="preserve">Destroy notifier for @user_data, or %NULL</doc>
65335             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65336           </parameter>
65337         </parameters>
65338       </method>
65339       <method name="set_cursor" c:identifier="gtk_tree_view_set_cursor">
65340         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
65341 useful when you want to focus the user's attention on a particular row.  If
65342 it. Additionally, if @focus_column is specified, and @start_editing is 
65343 %TRUE, then editing should be started in the specified cell.  
65344 This function is often followed by @gtk_widget_grab_focus (@tree_view) 
65345 in order to give keyboard focus to the widget.  Please note that editing 
65346 can only happen when the widget is realized.
65347 If @path is invalid for @model, the current cursor (if any) will be unset
65348 and the function will return without failing.</doc>
65349         <return-value transfer-ownership="none">
65350           <type name="none" c:type="void"/>
65351         </return-value>
65352         <parameters>
65353           <parameter name="path" transfer-ownership="none">
65354             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
65355             <type name="TreePath" c:type="GtkTreePath*"/>
65356           </parameter>
65357           <parameter name="focus_column"
65358                      transfer-ownership="none"
65359                      allow-none="1">
65360             <doc xml:whitespace="preserve">A #GtkTreeViewColumn, or %NULL</doc>
65361             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65362           </parameter>
65363           <parameter name="start_editing" transfer-ownership="none">
65364             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
65365             <type name="gboolean" c:type="gboolean"/>
65366           </parameter>
65367         </parameters>
65368       </method>
65369       <method name="set_cursor_on_cell"
65370               c:identifier="gtk_tree_view_set_cursor_on_cell"
65371               version="2.2">
65372         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
65373 useful when you want to focus the user's attention on a particular row.  If
65374 it. If @focus_column and @focus_cell are not %NULL, and @focus_column
65375 contains 2 or more editable or activatable cells, then focus is given to
65376 the cell specified by @focus_cell. Additionally, if @focus_column is
65377 specified, and @start_editing is %TRUE, then editing should be started in
65378 the specified cell.  This function is often followed by
65379 widget.  Please note that editing can only happen when the widget is
65380 realized.
65381 If @path is invalid for @model, the current cursor (if any) will be unset
65382 and the function will return without failing.</doc>
65383         <return-value transfer-ownership="none">
65384           <type name="none" c:type="void"/>
65385         </return-value>
65386         <parameters>
65387           <parameter name="path" transfer-ownership="none">
65388             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
65389             <type name="TreePath" c:type="GtkTreePath*"/>
65390           </parameter>
65391           <parameter name="focus_column"
65392                      transfer-ownership="none"
65393                      allow-none="1">
65394             <doc xml:whitespace="preserve">A #GtkTreeViewColumn, or %NULL</doc>
65395             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65396           </parameter>
65397           <parameter name="focus_cell"
65398                      transfer-ownership="none"
65399                      allow-none="1">
65400             <doc xml:whitespace="preserve">A #GtkCellRenderer, or %NULL</doc>
65401             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
65402           </parameter>
65403           <parameter name="start_editing" transfer-ownership="none">
65404             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
65405             <type name="gboolean" c:type="gboolean"/>
65406           </parameter>
65407         </parameters>
65408       </method>
65409       <method name="set_destroy_count_func"
65410               c:identifier="gtk_tree_view_set_destroy_count_func">
65411         <doc xml:whitespace="preserve">This function should almost never be used.  It is meant for private use by
65412 ATK for determining the number of visible children that are removed when the
65413 user collapses a row, or a row is deleted.</doc>
65414         <return-value transfer-ownership="none">
65415           <type name="none" c:type="void"/>
65416         </return-value>
65417         <parameters>
65418           <parameter name="func"
65419                      transfer-ownership="none"
65420                      allow-none="1"
65421                      scope="notified"
65422                      closure="1"
65423                      destroy="2">
65424             <doc xml:whitespace="preserve">Function to be called when a view row is destroyed, or %NULL</doc>
65425             <type name="TreeDestroyCountFunc"
65426                   c:type="GtkTreeDestroyCountFunc"/>
65427           </parameter>
65428           <parameter name="data" transfer-ownership="none" allow-none="1">
65429             <doc xml:whitespace="preserve">User data to be passed to @func, or %NULL</doc>
65430             <type name="gpointer" c:type="gpointer"/>
65431           </parameter>
65432           <parameter name="destroy"
65433                      transfer-ownership="none"
65434                      allow-none="1"
65435                      scope="async">
65436             <doc xml:whitespace="preserve">Destroy notifier for @data, or %NULL</doc>
65437             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65438           </parameter>
65439         </parameters>
65440       </method>
65441       <method name="set_drag_dest_row"
65442               c:identifier="gtk_tree_view_set_drag_dest_row">
65443         <doc xml:whitespace="preserve">Sets the row that is highlighted for feedback.</doc>
65444         <return-value transfer-ownership="none">
65445           <type name="none" c:type="void"/>
65446         </return-value>
65447         <parameters>
65448           <parameter name="path" transfer-ownership="none" allow-none="1">
65449             <doc xml:whitespace="preserve">The path of the row to highlight, or %NULL.</doc>
65450             <type name="TreePath" c:type="GtkTreePath*"/>
65451           </parameter>
65452           <parameter name="pos" transfer-ownership="none">
65453             <doc xml:whitespace="preserve">Specifies whether to drop before, after or into the row</doc>
65454             <type name="TreeViewDropPosition"
65455                   c:type="GtkTreeViewDropPosition"/>
65456           </parameter>
65457         </parameters>
65458       </method>
65459       <method name="set_enable_search"
65460               c:identifier="gtk_tree_view_set_enable_search">
65461         <doc xml:whitespace="preserve">If @enable_search is set, then the user can type in text to search through
65462 the tree interactively (this is sometimes called "typeahead find").
65463 Note that even if this is %FALSE, the user can still initiate a search 
65464 using the "start-interactive-search" key binding.</doc>
65465         <return-value transfer-ownership="none">
65466           <type name="none" c:type="void"/>
65467         </return-value>
65468         <parameters>
65469           <parameter name="enable_search" transfer-ownership="none">
65470             <doc xml:whitespace="preserve">%TRUE, if the user can search interactively</doc>
65471             <type name="gboolean" c:type="gboolean"/>
65472           </parameter>
65473         </parameters>
65474       </method>
65475       <method name="set_enable_tree_lines"
65476               c:identifier="gtk_tree_view_set_enable_tree_lines"
65477               version="2.10">
65478         <doc xml:whitespace="preserve">Sets whether to draw lines interconnecting the expanders in @tree_view.
65479 This does not have any visible effects for lists.</doc>
65480         <return-value transfer-ownership="none">
65481           <type name="none" c:type="void"/>
65482         </return-value>
65483         <parameters>
65484           <parameter name="enabled" transfer-ownership="none">
65485             <doc xml:whitespace="preserve">%TRUE to enable tree line drawing, %FALSE otherwise.</doc>
65486             <type name="gboolean" c:type="gboolean"/>
65487           </parameter>
65488         </parameters>
65489       </method>
65490       <method name="set_expander_column"
65491               c:identifier="gtk_tree_view_set_expander_column">
65492         <doc xml:whitespace="preserve">Sets the column to draw the expander arrow at. It must be in @tree_view.  
65493 If @column is %NULL, then the expander arrow is always at the first 
65494 visible column.
65495 If you do not want expander arrow to appear in your tree, set the 
65496 expander column to a hidden column.</doc>
65497         <return-value transfer-ownership="none">
65498           <type name="none" c:type="void"/>
65499         </return-value>
65500         <parameters>
65501           <parameter name="column" transfer-ownership="none">
65502             <doc xml:whitespace="preserve">%NULL, or the column to draw the expander arrow at.</doc>
65503             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65504           </parameter>
65505         </parameters>
65506       </method>
65507       <method name="set_fixed_height_mode"
65508               c:identifier="gtk_tree_view_set_fixed_height_mode"
65509               version="2.6 ">
65510         <doc xml:whitespace="preserve">Enables or disables the fixed height mode of @tree_view. 
65511 Fixed height mode speeds up #GtkTreeView by assuming that all 
65512 rows have the same height. 
65513 Only enable this option if all rows are the same height and all
65514 columns are of type %GTK_TREE_VIEW_COLUMN_FIXED.</doc>
65515         <return-value transfer-ownership="none">
65516           <type name="none" c:type="void"/>
65517         </return-value>
65518         <parameters>
65519           <parameter name="enable" transfer-ownership="none">
65520             <doc xml:whitespace="preserve">%TRUE to enable fixed height mode</doc>
65521             <type name="gboolean" c:type="gboolean"/>
65522           </parameter>
65523         </parameters>
65524       </method>
65525       <method name="set_grid_lines"
65526               c:identifier="gtk_tree_view_set_grid_lines"
65527               version="2.10">
65528         <doc xml:whitespace="preserve">Sets which grid lines to draw in @tree_view.</doc>
65529         <return-value transfer-ownership="none">
65530           <type name="none" c:type="void"/>
65531         </return-value>
65532         <parameters>
65533           <parameter name="grid_lines" transfer-ownership="none">
65534             <doc xml:whitespace="preserve">a #GtkTreeViewGridLines value indicating which grid lines to enable.</doc>
65535             <type name="TreeViewGridLines" c:type="GtkTreeViewGridLines"/>
65536           </parameter>
65537         </parameters>
65538       </method>
65539       <method name="set_hadjustment"
65540               c:identifier="gtk_tree_view_set_hadjustment">
65541         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the current horizontal aspect.</doc>
65542         <return-value transfer-ownership="none">
65543           <type name="none" c:type="void"/>
65544         </return-value>
65545         <parameters>
65546           <parameter name="adjustment"
65547                      transfer-ownership="none"
65548                      allow-none="1">
65549             <doc xml:whitespace="preserve">The #GtkAdjustment to set, or %NULL</doc>
65550             <type name="Adjustment" c:type="GtkAdjustment*"/>
65551           </parameter>
65552         </parameters>
65553       </method>
65554       <method name="set_headers_clickable"
65555               c:identifier="gtk_tree_view_set_headers_clickable">
65556         <doc xml:whitespace="preserve">Allow the column title buttons to be clicked.</doc>
65557         <return-value transfer-ownership="none">
65558           <type name="none" c:type="void"/>
65559         </return-value>
65560         <parameters>
65561           <parameter name="setting" transfer-ownership="none">
65562             <doc xml:whitespace="preserve">%TRUE if the columns are clickable.</doc>
65563             <type name="gboolean" c:type="gboolean"/>
65564           </parameter>
65565         </parameters>
65566       </method>
65567       <method name="set_headers_visible"
65568               c:identifier="gtk_tree_view_set_headers_visible">
65569         <doc xml:whitespace="preserve">Sets the visibility state of the headers.</doc>
65570         <return-value transfer-ownership="none">
65571           <type name="none" c:type="void"/>
65572         </return-value>
65573         <parameters>
65574           <parameter name="headers_visible" transfer-ownership="none">
65575             <doc xml:whitespace="preserve">%TRUE if the headers are visible</doc>
65576             <type name="gboolean" c:type="gboolean"/>
65577           </parameter>
65578         </parameters>
65579       </method>
65580       <method name="set_hover_expand"
65581               c:identifier="gtk_tree_view_set_hover_expand"
65582               version="2.6">
65583         <doc xml:whitespace="preserve">Enables of disables the hover expansion mode of @tree_view.
65584 Hover expansion makes rows expand or collapse if the pointer 
65585 moves over them.</doc>
65586         <return-value transfer-ownership="none">
65587           <type name="none" c:type="void"/>
65588         </return-value>
65589         <parameters>
65590           <parameter name="expand" transfer-ownership="none">
65591             <doc xml:whitespace="preserve">%TRUE to enable hover selection mode</doc>
65592             <type name="gboolean" c:type="gboolean"/>
65593           </parameter>
65594         </parameters>
65595       </method>
65596       <method name="set_hover_selection"
65597               c:identifier="gtk_tree_view_set_hover_selection"
65598               version="2.6">
65599         <doc xml:whitespace="preserve">Enables of disables the hover selection mode of @tree_view.
65600 Hover selection makes the selected row follow the pointer.
65601 Currently, this works only for the selection modes 
65602 %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE.</doc>
65603         <return-value transfer-ownership="none">
65604           <type name="none" c:type="void"/>
65605         </return-value>
65606         <parameters>
65607           <parameter name="hover" transfer-ownership="none">
65608             <doc xml:whitespace="preserve">%TRUE to enable hover selection mode</doc>
65609             <type name="gboolean" c:type="gboolean"/>
65610           </parameter>
65611         </parameters>
65612       </method>
65613       <method name="set_level_indentation"
65614               c:identifier="gtk_tree_view_set_level_indentation"
65615               version="2.12">
65616         <doc xml:whitespace="preserve">Sets the amount of extra indentation for child levels to use in @tree_view
65617 in addition to the default indentation.  The value should be specified in
65618 pixels, a value of 0 disables this feature and in this case only the default
65619 indentation will be used.
65620 This does not have any visible effects for lists.</doc>
65621         <return-value transfer-ownership="none">
65622           <type name="none" c:type="void"/>
65623         </return-value>
65624         <parameters>
65625           <parameter name="indentation" transfer-ownership="none">
65626             <doc xml:whitespace="preserve">the amount, in pixels, of extra indentation in @tree_view.</doc>
65627             <type name="gint" c:type="gint"/>
65628           </parameter>
65629         </parameters>
65630       </method>
65631       <method name="set_model" c:identifier="gtk_tree_view_set_model">
65632         <doc xml:whitespace="preserve">Sets the model for a #GtkTreeView.  If the @tree_view already has a model
65633 set, it will remove it before setting the new model.  If @model is %NULL,
65634 then it will unset the old model.</doc>
65635         <return-value transfer-ownership="none">
65636           <type name="none" c:type="void"/>
65637         </return-value>
65638         <parameters>
65639           <parameter name="model" transfer-ownership="none" allow-none="1">
65640             <doc xml:whitespace="preserve">The model.</doc>
65641             <type name="TreeModel" c:type="GtkTreeModel*"/>
65642           </parameter>
65643         </parameters>
65644       </method>
65645       <method name="set_reorderable"
65646               c:identifier="gtk_tree_view_set_reorderable">
65647         <doc xml:whitespace="preserve">This function is a convenience function to allow you to reorder
65648 models that support the #GtkDragSourceIface and the
65649 #GtkDragDestIface.  Both #GtkTreeStore and #GtkListStore support
65650 these.  If @reorderable is %TRUE, then the user can reorder the
65651 model by dragging and dropping rows. The developer can listen to
65652 these changes by connecting to the model's row_inserted and
65653 row_deleted signals. The reordering is implemented by setting up
65654 the tree view as a drag source and destination. Therefore, drag and
65655 drop can not be used in a reorderable view for any other purpose.
65656 This function does not give you any degree of control over the order -- any
65657 reordering is allowed.  If more control is needed, you should probably
65658 handle drag and drop manually.</doc>
65659         <return-value transfer-ownership="none">
65660           <type name="none" c:type="void"/>
65661         </return-value>
65662         <parameters>
65663           <parameter name="reorderable" transfer-ownership="none">
65664             <doc xml:whitespace="preserve">%TRUE, if the tree can be reordered.</doc>
65665             <type name="gboolean" c:type="gboolean"/>
65666           </parameter>
65667         </parameters>
65668       </method>
65669       <method name="set_row_separator_func"
65670               c:identifier="gtk_tree_view_set_row_separator_func"
65671               version="2.6">
65672         <doc xml:whitespace="preserve">Sets the row separator function, which is used to determine
65673 whether a row should be drawn as a separator. If the row separator
65674 function is %NULL, no separators are drawn. This is the default value.</doc>
65675         <return-value transfer-ownership="none">
65676           <type name="none" c:type="void"/>
65677         </return-value>
65678         <parameters>
65679           <parameter name="func"
65680                      transfer-ownership="none"
65681                      allow-none="1"
65682                      scope="notified"
65683                      closure="1"
65684                      destroy="2">
65685             <doc xml:whitespace="preserve">a #GtkTreeViewRowSeparatorFunc</doc>
65686             <type name="TreeViewRowSeparatorFunc"
65687                   c:type="GtkTreeViewRowSeparatorFunc"/>
65688           </parameter>
65689           <parameter name="data" transfer-ownership="none" allow-none="1">
65690             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
65691             <type name="gpointer" c:type="gpointer"/>
65692           </parameter>
65693           <parameter name="destroy"
65694                      transfer-ownership="none"
65695                      allow-none="1"
65696                      scope="async">
65697             <doc xml:whitespace="preserve">destroy notifier for @data, or %NULL</doc>
65698             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65699           </parameter>
65700         </parameters>
65701       </method>
65702       <method name="set_rubber_banding"
65703               c:identifier="gtk_tree_view_set_rubber_banding"
65704               version="2.10">
65705         <doc xml:whitespace="preserve">Enables or disables rubber banding in @tree_view.  If the selection mode
65706 is #GTK_SELECTION_MULTIPLE, rubber banding will allow the user to select
65707 multiple rows by dragging the mouse.</doc>
65708         <return-value transfer-ownership="none">
65709           <type name="none" c:type="void"/>
65710         </return-value>
65711         <parameters>
65712           <parameter name="enable" transfer-ownership="none">
65713             <doc xml:whitespace="preserve">%TRUE to enable rubber banding</doc>
65714             <type name="gboolean" c:type="gboolean"/>
65715           </parameter>
65716         </parameters>
65717       </method>
65718       <method name="set_rules_hint"
65719               c:identifier="gtk_tree_view_set_rules_hint">
65720         <return-value transfer-ownership="none">
65721           <type name="none" c:type="void"/>
65722         </return-value>
65723         <parameters>
65724           <parameter name="setting" transfer-ownership="none">
65725             <type name="gboolean" c:type="gboolean"/>
65726           </parameter>
65727         </parameters>
65728       </method>
65729       <method name="set_search_column"
65730               c:identifier="gtk_tree_view_set_search_column">
65731         <doc xml:whitespace="preserve">Sets @column as the column where the interactive search code should
65732 search in for the current model. 
65733 If the search column is set, users can use the "start-interactive-search"
65734 key binding to bring up search popup. The enable-search property controls
65735 whether simply typing text will also start an interactive search.
65736 Note that @column refers to a column of the current model. The search 
65737 column is reset to -1 when the model is changed.</doc>
65738         <return-value transfer-ownership="none">
65739           <type name="none" c:type="void"/>
65740         </return-value>
65741         <parameters>
65742           <parameter name="column" transfer-ownership="none">
65743             <doc xml:whitespace="preserve">the column of the model to search in, or -1 to disable searching</doc>
65744             <type name="gint" c:type="gint"/>
65745           </parameter>
65746         </parameters>
65747       </method>
65748       <method name="set_search_entry"
65749               c:identifier="gtk_tree_view_set_search_entry"
65750               version="2.10">
65751         <doc xml:whitespace="preserve">Sets the entry which the interactive search code will use for this
65752 in our interface at all time at a fixed position.  Passing %NULL for
65753 entry again.</doc>
65754         <return-value transfer-ownership="none">
65755           <type name="none" c:type="void"/>
65756         </return-value>
65757         <parameters>
65758           <parameter name="entry" transfer-ownership="none" allow-none="1">
65759             <doc xml:whitespace="preserve">the entry the interactive search code of @tree_view should use or %NULL</doc>
65760             <type name="Entry" c:type="GtkEntry*"/>
65761           </parameter>
65762         </parameters>
65763       </method>
65764       <method name="set_search_equal_func"
65765               c:identifier="gtk_tree_view_set_search_equal_func">
65766         <doc xml:whitespace="preserve">Sets the compare function for the interactive search capabilities; note
65767 that somewhat like strcmp() returning 0 for equality
65768 #GtkTreeViewSearchEqualFunc returns %FALSE on matches.</doc>
65769         <return-value transfer-ownership="none">
65770           <type name="none" c:type="void"/>
65771         </return-value>
65772         <parameters>
65773           <parameter name="search_equal_func"
65774                      transfer-ownership="none"
65775                      scope="notified"
65776                      closure="1"
65777                      destroy="2">
65778             <doc xml:whitespace="preserve">the compare function to use during the search</doc>
65779             <type name="TreeViewSearchEqualFunc"
65780                   c:type="GtkTreeViewSearchEqualFunc"/>
65781           </parameter>
65782           <parameter name="search_user_data"
65783                      transfer-ownership="none"
65784                      allow-none="1">
65785             <doc xml:whitespace="preserve">user data to pass to @search_equal_func, or %NULL</doc>
65786             <type name="gpointer" c:type="gpointer"/>
65787           </parameter>
65788           <parameter name="search_destroy"
65789                      transfer-ownership="none"
65790                      allow-none="1"
65791                      scope="async">
65792             <doc xml:whitespace="preserve">Destroy notifier for @search_user_data, or %NULL</doc>
65793             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65794           </parameter>
65795         </parameters>
65796       </method>
65797       <method name="set_search_position_func"
65798               c:identifier="gtk_tree_view_set_search_position_func"
65799               version="2.10">
65800         <doc xml:whitespace="preserve">Sets the function to use when positioning the search dialog.</doc>
65801         <return-value transfer-ownership="none">
65802           <type name="none" c:type="void"/>
65803         </return-value>
65804         <parameters>
65805           <parameter name="func"
65806                      transfer-ownership="none"
65807                      allow-none="1"
65808                      scope="notified"
65809                      closure="1"
65810                      destroy="2">
65811             <doc xml:whitespace="preserve">the function to use to position the search dialog, or %NULL to use the default search position function</doc>
65812             <type name="TreeViewSearchPositionFunc"
65813                   c:type="GtkTreeViewSearchPositionFunc"/>
65814           </parameter>
65815           <parameter name="data" transfer-ownership="none" allow-none="1">
65816             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
65817             <type name="gpointer" c:type="gpointer"/>
65818           </parameter>
65819           <parameter name="destroy"
65820                      transfer-ownership="none"
65821                      allow-none="1"
65822                      scope="async">
65823             <doc xml:whitespace="preserve">Destroy notifier for @data, or %NULL</doc>
65824             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
65825           </parameter>
65826         </parameters>
65827       </method>
65828       <method name="set_show_expanders"
65829               c:identifier="gtk_tree_view_set_show_expanders"
65830               version="2.12">
65831         <doc xml:whitespace="preserve">Sets whether to draw and enable expanders and indent child rows in
65832 and there will be no way to expand and collapse rows by default.  Also
65833 note that hiding the expanders will disable the default indentation.  You
65834 can set a custom indentation in this case using
65835 gtk_tree_view_set_level_indentation().
65836 This does not have any visible effects for lists.</doc>
65837         <return-value transfer-ownership="none">
65838           <type name="none" c:type="void"/>
65839         </return-value>
65840         <parameters>
65841           <parameter name="enabled" transfer-ownership="none">
65842             <doc xml:whitespace="preserve">%TRUE to enable expander drawing, %FALSE otherwise.</doc>
65843             <type name="gboolean" c:type="gboolean"/>
65844           </parameter>
65845         </parameters>
65846       </method>
65847       <method name="set_tooltip_cell"
65848               c:identifier="gtk_tree_view_set_tooltip_cell"
65849               version="2.12">
65850         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to the area @path, @column and @cell have
65851 in common.  For example if @path is %NULL and @column is set, the tip
65852 area will be set to the full area covered by @column.  See also
65853 gtk_tooltip_set_tip_area().
65854 Note that if @path is not specified and @cell is set and part of a column
65855 containing the expander, the tooltip might not show and hide at the correct
65856 position.  In such cases @path must be set to the current node under the
65857 mouse cursor for this function to operate correctly.
65858 See also gtk_tree_view_set_tooltip_column() for a simpler alternative.</doc>
65859         <return-value transfer-ownership="none">
65860           <type name="none" c:type="void"/>
65861         </return-value>
65862         <parameters>
65863           <parameter name="tooltip" transfer-ownership="none">
65864             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
65865             <type name="Tooltip" c:type="GtkTooltip*"/>
65866           </parameter>
65867           <parameter name="path" transfer-ownership="none" allow-none="1">
65868             <doc xml:whitespace="preserve">a #GtkTreePath or %NULL</doc>
65869             <type name="TreePath" c:type="GtkTreePath*"/>
65870           </parameter>
65871           <parameter name="column" transfer-ownership="none" allow-none="1">
65872             <doc xml:whitespace="preserve">a #GtkTreeViewColumn or %NULL</doc>
65873             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
65874           </parameter>
65875           <parameter name="cell" transfer-ownership="none" allow-none="1">
65876             <doc xml:whitespace="preserve">a #GtkCellRenderer or %NULL</doc>
65877             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
65878           </parameter>
65879         </parameters>
65880       </method>
65881       <method name="set_tooltip_column"
65882               c:identifier="gtk_tree_view_set_tooltip_column"
65883               version="2.12">
65884         <doc xml:whitespace="preserve">If you only plan to have simple (text-only) tooltips on full rows, you
65885 can use this function to have #GtkTreeView handle these automatically
65886 for you. @column should be set to the column in @tree_view's model
65887 containing the tooltip texts, or -1 to disable this feature.
65888 When enabled, #GtkWidget::has-tooltip will be set to %TRUE and
65889 Note that the signal handler sets the text with gtk_tooltip_set_markup(),
65890 so &amp;amp;, &amp;lt;, etc have to be escaped in the text.</doc>
65891         <return-value transfer-ownership="none">
65892           <type name="none" c:type="void"/>
65893         </return-value>
65894         <parameters>
65895           <parameter name="column" transfer-ownership="none">
65896             <doc xml:whitespace="preserve">an integer, which is a valid column number for @tree_view's model</doc>
65897             <type name="gint" c:type="gint"/>
65898           </parameter>
65899         </parameters>
65900       </method>
65901       <method name="set_tooltip_row"
65902               c:identifier="gtk_tree_view_set_tooltip_row"
65903               version="2.12">
65904         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to be the area covered by the row at @path.
65905 See also gtk_tree_view_set_tooltip_column() for a simpler alternative.
65906 See also gtk_tooltip_set_tip_area().</doc>
65907         <return-value transfer-ownership="none">
65908           <type name="none" c:type="void"/>
65909         </return-value>
65910         <parameters>
65911           <parameter name="tooltip" transfer-ownership="none">
65912             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
65913             <type name="Tooltip" c:type="GtkTooltip*"/>
65914           </parameter>
65915           <parameter name="path" transfer-ownership="none">
65916             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
65917             <type name="TreePath" c:type="GtkTreePath*"/>
65918           </parameter>
65919         </parameters>
65920       </method>
65921       <method name="set_vadjustment"
65922               c:identifier="gtk_tree_view_set_vadjustment">
65923         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the current vertical aspect.</doc>
65924         <return-value transfer-ownership="none">
65925           <type name="none" c:type="void"/>
65926         </return-value>
65927         <parameters>
65928           <parameter name="adjustment"
65929                      transfer-ownership="none"
65930                      allow-none="1">
65931             <doc xml:whitespace="preserve">The #GtkAdjustment to set, or %NULL</doc>
65932             <type name="Adjustment" c:type="GtkAdjustment*"/>
65933           </parameter>
65934         </parameters>
65935       </method>
65936       <method name="unset_rows_drag_dest"
65937               c:identifier="gtk_tree_view_unset_rows_drag_dest">
65938         <doc xml:whitespace="preserve">Undoes the effect of
65939 gtk_tree_view_enable_model_drag_dest(). Calling this method sets
65940 #GtkTreeView:reorderable to %FALSE.</doc>
65941         <return-value transfer-ownership="none">
65942           <type name="none" c:type="void"/>
65943         </return-value>
65944       </method>
65945       <method name="unset_rows_drag_source"
65946               c:identifier="gtk_tree_view_unset_rows_drag_source">
65947         <doc xml:whitespace="preserve">Undoes the effect of
65948 gtk_tree_view_enable_model_drag_source(). Calling this method sets
65949 #GtkTreeView:reorderable to %FALSE.</doc>
65950         <return-value transfer-ownership="none">
65951           <type name="none" c:type="void"/>
65952         </return-value>
65953       </method>
65954       <property name="enable-grid-lines"
65955                 writable="1"
65956                 transfer-ownership="none">
65957         <type name="TreeViewGridLines"/>
65958       </property>
65959       <property name="enable-search" writable="1" transfer-ownership="none">
65960         <type name="gboolean"/>
65961       </property>
65962       <property name="enable-tree-lines"
65963                 writable="1"
65964                 transfer-ownership="none">
65965         <type name="gboolean"/>
65966       </property>
65967       <property name="expander-column" writable="1" transfer-ownership="none">
65968         <type name="TreeViewColumn"/>
65969       </property>
65970       <property name="fixed-height-mode"
65971                 version="2.4"
65972                 writable="1"
65973                 transfer-ownership="none">
65974         <doc xml:whitespace="preserve">Setting the ::fixed-height-mode property to %TRUE speeds up 
65975 #GtkTreeView by assuming that all rows have the same height. 
65976 Only enable this option if all rows are the same height.  
65977 Please see gtk_tree_view_set_fixed_height_mode() for more 
65978 information on this option.</doc>
65979         <type name="gboolean"/>
65980       </property>
65981       <property name="hadjustment" writable="1" transfer-ownership="none">
65982         <type name="Adjustment"/>
65983       </property>
65984       <property name="headers-clickable"
65985                 writable="1"
65986                 transfer-ownership="none">
65987         <type name="gboolean"/>
65988       </property>
65989       <property name="headers-visible" writable="1" transfer-ownership="none">
65990         <type name="gboolean"/>
65991       </property>
65992       <property name="hover-expand"
65993                 version="2.6"
65994                 writable="1"
65995                 transfer-ownership="none">
65996         <doc xml:whitespace="preserve">Enables or disables the hover expansion mode of @tree_view.
65997 Hover expansion makes rows expand or collapse if the pointer moves 
65998 over them.
65999 This mode is primarily intended for treeviews in popups, e.g.
66000 in #GtkComboBox or #GtkEntryCompletion.</doc>
66001         <type name="gboolean"/>
66002       </property>
66003       <property name="hover-selection"
66004                 version="2.6"
66005                 writable="1"
66006                 transfer-ownership="none">
66007         <doc xml:whitespace="preserve">Enables or disables the hover selection mode of @tree_view.
66008 Hover selection makes the selected row follow the pointer.
66009 Currently, this works only for the selection modes 
66010 %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE.
66011 This mode is primarily intended for treeviews in popups, e.g.
66012 in #GtkComboBox or #GtkEntryCompletion.</doc>
66013         <type name="gboolean"/>
66014       </property>
66015       <property name="level-indentation"
66016                 version="2.12"
66017                 writable="1"
66018                 transfer-ownership="none">
66019         <doc xml:whitespace="preserve">Extra indentation for each level.</doc>
66020         <type name="gint"/>
66021       </property>
66022       <property name="model" writable="1" transfer-ownership="none">
66023         <type name="TreeModel"/>
66024       </property>
66025       <property name="reorderable" writable="1" transfer-ownership="none">
66026         <type name="gboolean"/>
66027       </property>
66028       <property name="rubber-banding" writable="1" transfer-ownership="none">
66029         <type name="gboolean"/>
66030       </property>
66031       <property name="rules-hint" writable="1" transfer-ownership="none">
66032         <type name="gboolean"/>
66033       </property>
66034       <property name="search-column" writable="1" transfer-ownership="none">
66035         <type name="gint"/>
66036       </property>
66037       <property name="show-expanders"
66038                 version="2.12"
66039                 writable="1"
66040                 transfer-ownership="none">
66041         <doc xml:whitespace="preserve">%TRUE if the view has expanders.</doc>
66042         <type name="gboolean"/>
66043       </property>
66044       <property name="tooltip-column" writable="1" transfer-ownership="none">
66045         <type name="gint"/>
66046       </property>
66047       <property name="vadjustment" writable="1" transfer-ownership="none">
66048         <type name="Adjustment"/>
66049       </property>
66050       <field name="parent">
66051         <type name="Container" c:type="GtkContainer"/>
66052       </field>
66053       <field name="priv" readable="0" private="1">
66054         <type name="TreeViewPrivate" c:type="GtkTreeViewPrivate*"/>
66055       </field>
66056       <glib:signal name="columns-changed">
66057         <doc xml:whitespace="preserve">The number of columns of the treeview has changed.</doc>
66058         <return-value transfer-ownership="none">
66059           <type name="none"/>
66060         </return-value>
66061       </glib:signal>
66062       <glib:signal name="cursor-changed">
66063         <doc xml:whitespace="preserve">The position of the cursor (focused cell) has changed.</doc>
66064         <return-value transfer-ownership="none">
66065           <type name="none"/>
66066         </return-value>
66067       </glib:signal>
66068       <glib:signal name="expand-collapse-cursor-row">
66069         <return-value transfer-ownership="none">
66070           <type name="gboolean"/>
66071         </return-value>
66072         <parameters>
66073           <parameter name="object" transfer-ownership="none">
66074             <type name="gboolean"/>
66075           </parameter>
66076           <parameter name="p0" transfer-ownership="none">
66077             <type name="gboolean"/>
66078           </parameter>
66079           <parameter name="p1" transfer-ownership="none">
66080             <type name="gboolean"/>
66081           </parameter>
66082         </parameters>
66083       </glib:signal>
66084       <glib:signal name="move-cursor">
66085         <return-value transfer-ownership="none">
66086           <type name="gboolean"/>
66087         </return-value>
66088         <parameters>
66089           <parameter name="object" transfer-ownership="none">
66090             <type name="MovementStep"/>
66091           </parameter>
66092           <parameter name="p0" transfer-ownership="none">
66093             <type name="gint"/>
66094           </parameter>
66095         </parameters>
66096       </glib:signal>
66097       <glib:signal name="row-activated">
66098         <doc xml:whitespace="preserve">The "row-activated" signal is emitted when the method
66099 gtk_tree_view_row_activated() is called or the user double clicks 
66100 a treeview row. It is also emitted when a non-editable row is 
66101 Enter is pressed.
66102 For selection handling refer to the &lt;link linkend="TreeWidget"&gt;tree 
66103 widget conceptual overview&lt;/link&gt; as well as #GtkTreeSelection.</doc>
66104         <return-value transfer-ownership="none">
66105           <type name="none"/>
66106         </return-value>
66107         <parameters>
66108           <parameter name="object" transfer-ownership="none">
66109             <doc xml:whitespace="preserve">the #GtkTreePath for the activated row</doc>
66110             <type name="TreePath"/>
66111           </parameter>
66112           <parameter name="p0" transfer-ownership="none">
66113             <doc xml:whitespace="preserve">the #GtkTreeViewColumn in which the activation occurred</doc>
66114             <type name="TreeViewColumn"/>
66115           </parameter>
66116         </parameters>
66117       </glib:signal>
66118       <glib:signal name="row-collapsed">
66119         <doc xml:whitespace="preserve">The given row has been collapsed (child nodes are hidden).</doc>
66120         <return-value transfer-ownership="none">
66121           <type name="none"/>
66122         </return-value>
66123         <parameters>
66124           <parameter name="object" transfer-ownership="none">
66125             <doc xml:whitespace="preserve">the tree iter of the collapsed row</doc>
66126             <type name="TreeIter"/>
66127           </parameter>
66128           <parameter name="p0" transfer-ownership="none">
66129             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
66130             <type name="TreePath"/>
66131           </parameter>
66132         </parameters>
66133       </glib:signal>
66134       <glib:signal name="row-expanded">
66135         <doc xml:whitespace="preserve">The given row has been expanded (child nodes are shown).</doc>
66136         <return-value transfer-ownership="none">
66137           <type name="none"/>
66138         </return-value>
66139         <parameters>
66140           <parameter name="object" transfer-ownership="none">
66141             <doc xml:whitespace="preserve">the tree iter of the expanded row</doc>
66142             <type name="TreeIter"/>
66143           </parameter>
66144           <parameter name="p0" transfer-ownership="none">
66145             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
66146             <type name="TreePath"/>
66147           </parameter>
66148         </parameters>
66149       </glib:signal>
66150       <glib:signal name="select-all">
66151         <return-value transfer-ownership="none">
66152           <type name="gboolean"/>
66153         </return-value>
66154       </glib:signal>
66155       <glib:signal name="select-cursor-parent">
66156         <return-value transfer-ownership="none">
66157           <type name="gboolean"/>
66158         </return-value>
66159       </glib:signal>
66160       <glib:signal name="select-cursor-row">
66161         <return-value transfer-ownership="none">
66162           <type name="gboolean"/>
66163         </return-value>
66164         <parameters>
66165           <parameter name="object" transfer-ownership="none">
66166             <type name="gboolean"/>
66167           </parameter>
66168         </parameters>
66169       </glib:signal>
66170       <glib:signal name="set-scroll-adjustments">
66171         <return-value transfer-ownership="none">
66172           <type name="none"/>
66173         </return-value>
66174         <parameters>
66175           <parameter name="object" transfer-ownership="none">
66176             <type name="Adjustment"/>
66177           </parameter>
66178           <parameter name="p0" transfer-ownership="none">
66179             <type name="Adjustment"/>
66180           </parameter>
66181         </parameters>
66182       </glib:signal>
66183       <glib:signal name="start-interactive-search">
66184         <return-value transfer-ownership="none">
66185           <type name="gboolean"/>
66186         </return-value>
66187       </glib:signal>
66188       <glib:signal name="test-collapse-row">
66189         <doc xml:whitespace="preserve">The given row is about to be collapsed (hide its children nodes). Use this
66190 signal if you need to control the collapsibility of individual rows.</doc>
66191         <return-value transfer-ownership="none">
66192           <doc xml:whitespace="preserve">%FALSE to allow collapsing, %TRUE to reject</doc>
66193           <type name="gboolean"/>
66194         </return-value>
66195         <parameters>
66196           <parameter name="object" transfer-ownership="none">
66197             <doc xml:whitespace="preserve">the tree iter of the row to collapse</doc>
66198             <type name="TreeIter"/>
66199           </parameter>
66200           <parameter name="p0" transfer-ownership="none">
66201             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
66202             <type name="TreePath"/>
66203           </parameter>
66204         </parameters>
66205       </glib:signal>
66206       <glib:signal name="test-expand-row">
66207         <doc xml:whitespace="preserve">The given row is about to be expanded (show its children nodes). Use this
66208 signal if you need to control the expandability of individual rows.</doc>
66209         <return-value transfer-ownership="none">
66210           <doc xml:whitespace="preserve">%FALSE to allow expansion, %TRUE to reject</doc>
66211           <type name="gboolean"/>
66212         </return-value>
66213         <parameters>
66214           <parameter name="object" transfer-ownership="none">
66215             <doc xml:whitespace="preserve">the tree iter of the row to expand</doc>
66216             <type name="TreeIter"/>
66217           </parameter>
66218           <parameter name="p0" transfer-ownership="none">
66219             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
66220             <type name="TreePath"/>
66221           </parameter>
66222         </parameters>
66223       </glib:signal>
66224       <glib:signal name="toggle-cursor-row">
66225         <return-value transfer-ownership="none">
66226           <type name="gboolean"/>
66227         </return-value>
66228       </glib:signal>
66229       <glib:signal name="unselect-all">
66230         <return-value transfer-ownership="none">
66231           <type name="gboolean"/>
66232         </return-value>
66233       </glib:signal>
66234     </class>
66235     <record name="TreeViewClass"
66236             c:type="GtkTreeViewClass"
66237             glib:is-gtype-struct-for="TreeView">
66238       <field name="parent_class">
66239         <type name="ContainerClass" c:type="GtkContainerClass"/>
66240       </field>
66241       <field name="set_scroll_adjustments">
66242         <callback name="set_scroll_adjustments">
66243           <return-value transfer-ownership="none">
66244             <type name="none" c:type="void"/>
66245           </return-value>
66246           <parameters>
66247             <parameter name="tree_view" transfer-ownership="none">
66248               <type name="TreeView" c:type="GtkTreeView*"/>
66249             </parameter>
66250             <parameter name="hadjustment" transfer-ownership="none">
66251               <type name="Adjustment" c:type="GtkAdjustment*"/>
66252             </parameter>
66253             <parameter name="vadjustment" transfer-ownership="none">
66254               <type name="Adjustment" c:type="GtkAdjustment*"/>
66255             </parameter>
66256           </parameters>
66257         </callback>
66258       </field>
66259       <field name="row_activated">
66260         <callback name="row_activated">
66261           <return-value transfer-ownership="none">
66262             <type name="none" c:type="void"/>
66263           </return-value>
66264           <parameters>
66265             <parameter name="tree_view" transfer-ownership="none">
66266               <type name="TreeView" c:type="GtkTreeView*"/>
66267             </parameter>
66268             <parameter name="path" transfer-ownership="none">
66269               <type name="TreePath" c:type="GtkTreePath*"/>
66270             </parameter>
66271             <parameter name="column" transfer-ownership="none">
66272               <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
66273             </parameter>
66274           </parameters>
66275         </callback>
66276       </field>
66277       <field name="test_expand_row">
66278         <callback name="test_expand_row">
66279           <return-value transfer-ownership="none">
66280             <type name="gboolean" c:type="gboolean"/>
66281           </return-value>
66282           <parameters>
66283             <parameter name="tree_view" transfer-ownership="none">
66284               <type name="TreeView" c:type="GtkTreeView*"/>
66285             </parameter>
66286             <parameter name="iter" transfer-ownership="none">
66287               <type name="TreeIter" c:type="GtkTreeIter*"/>
66288             </parameter>
66289             <parameter name="path" transfer-ownership="none">
66290               <type name="TreePath" c:type="GtkTreePath*"/>
66291             </parameter>
66292           </parameters>
66293         </callback>
66294       </field>
66295       <field name="test_collapse_row">
66296         <callback name="test_collapse_row">
66297           <return-value transfer-ownership="none">
66298             <type name="gboolean" c:type="gboolean"/>
66299           </return-value>
66300           <parameters>
66301             <parameter name="tree_view" transfer-ownership="none">
66302               <type name="TreeView" c:type="GtkTreeView*"/>
66303             </parameter>
66304             <parameter name="iter" transfer-ownership="none">
66305               <type name="TreeIter" c:type="GtkTreeIter*"/>
66306             </parameter>
66307             <parameter name="path" transfer-ownership="none">
66308               <type name="TreePath" c:type="GtkTreePath*"/>
66309             </parameter>
66310           </parameters>
66311         </callback>
66312       </field>
66313       <field name="row_expanded">
66314         <callback name="row_expanded">
66315           <return-value transfer-ownership="none">
66316             <type name="none" c:type="void"/>
66317           </return-value>
66318           <parameters>
66319             <parameter name="tree_view" transfer-ownership="none">
66320               <type name="TreeView" c:type="GtkTreeView*"/>
66321             </parameter>
66322             <parameter name="iter" transfer-ownership="none">
66323               <type name="TreeIter" c:type="GtkTreeIter*"/>
66324             </parameter>
66325             <parameter name="path" transfer-ownership="none">
66326               <type name="TreePath" c:type="GtkTreePath*"/>
66327             </parameter>
66328           </parameters>
66329         </callback>
66330       </field>
66331       <field name="row_collapsed">
66332         <callback name="row_collapsed">
66333           <return-value transfer-ownership="none">
66334             <type name="none" c:type="void"/>
66335           </return-value>
66336           <parameters>
66337             <parameter name="tree_view" transfer-ownership="none">
66338               <type name="TreeView" c:type="GtkTreeView*"/>
66339             </parameter>
66340             <parameter name="iter" transfer-ownership="none">
66341               <type name="TreeIter" c:type="GtkTreeIter*"/>
66342             </parameter>
66343             <parameter name="path" transfer-ownership="none">
66344               <type name="TreePath" c:type="GtkTreePath*"/>
66345             </parameter>
66346           </parameters>
66347         </callback>
66348       </field>
66349       <field name="columns_changed">
66350         <callback name="columns_changed">
66351           <return-value transfer-ownership="none">
66352             <type name="none" c:type="void"/>
66353           </return-value>
66354           <parameters>
66355             <parameter name="tree_view" transfer-ownership="none">
66356               <type name="TreeView" c:type="GtkTreeView*"/>
66357             </parameter>
66358           </parameters>
66359         </callback>
66360       </field>
66361       <field name="cursor_changed">
66362         <callback name="cursor_changed">
66363           <return-value transfer-ownership="none">
66364             <type name="none" c:type="void"/>
66365           </return-value>
66366           <parameters>
66367             <parameter name="tree_view" transfer-ownership="none">
66368               <type name="TreeView" c:type="GtkTreeView*"/>
66369             </parameter>
66370           </parameters>
66371         </callback>
66372       </field>
66373       <field name="move_cursor">
66374         <callback name="move_cursor">
66375           <return-value transfer-ownership="none">
66376             <type name="gboolean" c:type="gboolean"/>
66377           </return-value>
66378           <parameters>
66379             <parameter name="tree_view" transfer-ownership="none">
66380               <type name="TreeView" c:type="GtkTreeView*"/>
66381             </parameter>
66382             <parameter name="step" transfer-ownership="none">
66383               <type name="MovementStep" c:type="GtkMovementStep"/>
66384             </parameter>
66385             <parameter name="count" transfer-ownership="none">
66386               <type name="gint" c:type="gint"/>
66387             </parameter>
66388           </parameters>
66389         </callback>
66390       </field>
66391       <field name="select_all">
66392         <callback name="select_all">
66393           <return-value transfer-ownership="none">
66394             <type name="gboolean" c:type="gboolean"/>
66395           </return-value>
66396           <parameters>
66397             <parameter name="tree_view" transfer-ownership="none">
66398               <type name="TreeView" c:type="GtkTreeView*"/>
66399             </parameter>
66400           </parameters>
66401         </callback>
66402       </field>
66403       <field name="unselect_all">
66404         <callback name="unselect_all">
66405           <return-value transfer-ownership="none">
66406             <type name="gboolean" c:type="gboolean"/>
66407           </return-value>
66408           <parameters>
66409             <parameter name="tree_view" transfer-ownership="none">
66410               <type name="TreeView" c:type="GtkTreeView*"/>
66411             </parameter>
66412           </parameters>
66413         </callback>
66414       </field>
66415       <field name="select_cursor_row">
66416         <callback name="select_cursor_row">
66417           <return-value transfer-ownership="none">
66418             <type name="gboolean" c:type="gboolean"/>
66419           </return-value>
66420           <parameters>
66421             <parameter name="tree_view" transfer-ownership="none">
66422               <type name="TreeView" c:type="GtkTreeView*"/>
66423             </parameter>
66424             <parameter name="start_editing" transfer-ownership="none">
66425               <type name="gboolean" c:type="gboolean"/>
66426             </parameter>
66427           </parameters>
66428         </callback>
66429       </field>
66430       <field name="toggle_cursor_row">
66431         <callback name="toggle_cursor_row">
66432           <return-value transfer-ownership="none">
66433             <type name="gboolean" c:type="gboolean"/>
66434           </return-value>
66435           <parameters>
66436             <parameter name="tree_view" transfer-ownership="none">
66437               <type name="TreeView" c:type="GtkTreeView*"/>
66438             </parameter>
66439           </parameters>
66440         </callback>
66441       </field>
66442       <field name="expand_collapse_cursor_row">
66443         <callback name="expand_collapse_cursor_row">
66444           <return-value transfer-ownership="none">
66445             <type name="gboolean" c:type="gboolean"/>
66446           </return-value>
66447           <parameters>
66448             <parameter name="tree_view" transfer-ownership="none">
66449               <type name="TreeView" c:type="GtkTreeView*"/>
66450             </parameter>
66451             <parameter name="logical" transfer-ownership="none">
66452               <type name="gboolean" c:type="gboolean"/>
66453             </parameter>
66454             <parameter name="expand" transfer-ownership="none">
66455               <type name="gboolean" c:type="gboolean"/>
66456             </parameter>
66457             <parameter name="open_all" transfer-ownership="none">
66458               <type name="gboolean" c:type="gboolean"/>
66459             </parameter>
66460           </parameters>
66461         </callback>
66462       </field>
66463       <field name="select_cursor_parent">
66464         <callback name="select_cursor_parent">
66465           <return-value transfer-ownership="none">
66466             <type name="gboolean" c:type="gboolean"/>
66467           </return-value>
66468           <parameters>
66469             <parameter name="tree_view" transfer-ownership="none">
66470               <type name="TreeView" c:type="GtkTreeView*"/>
66471             </parameter>
66472           </parameters>
66473         </callback>
66474       </field>
66475       <field name="start_interactive_search">
66476         <callback name="start_interactive_search">
66477           <return-value transfer-ownership="none">
66478             <type name="gboolean" c:type="gboolean"/>
66479           </return-value>
66480           <parameters>
66481             <parameter name="tree_view" transfer-ownership="none">
66482               <type name="TreeView" c:type="GtkTreeView*"/>
66483             </parameter>
66484           </parameters>
66485         </callback>
66486       </field>
66487       <field name="_gtk_reserved0" introspectable="0">
66488         <callback name="_gtk_reserved0">
66489           <return-value transfer-ownership="none">
66490             <type name="none" c:type="void"/>
66491           </return-value>
66492         </callback>
66493       </field>
66494       <field name="_gtk_reserved1" introspectable="0">
66495         <callback name="_gtk_reserved1">
66496           <return-value transfer-ownership="none">
66497             <type name="none" c:type="void"/>
66498           </return-value>
66499         </callback>
66500       </field>
66501       <field name="_gtk_reserved2" introspectable="0">
66502         <callback name="_gtk_reserved2">
66503           <return-value transfer-ownership="none">
66504             <type name="none" c:type="void"/>
66505           </return-value>
66506         </callback>
66507       </field>
66508       <field name="_gtk_reserved3" introspectable="0">
66509         <callback name="_gtk_reserved3">
66510           <return-value transfer-ownership="none">
66511             <type name="none" c:type="void"/>
66512           </return-value>
66513         </callback>
66514       </field>
66515       <field name="_gtk_reserved4" introspectable="0">
66516         <callback name="_gtk_reserved4">
66517           <return-value transfer-ownership="none">
66518             <type name="none" c:type="void"/>
66519           </return-value>
66520         </callback>
66521       </field>
66522     </record>
66523     <class name="TreeViewColumn"
66524            c:symbol-prefix="tree_view_column"
66525            c:type="GtkTreeViewColumn"
66526            parent="Object"
66527            glib:type-name="GtkTreeViewColumn"
66528            glib:get-type="gtk_tree_view_column_get_type"
66529            glib:type-struct="TreeViewColumnClass">
66530       <implements name="Buildable"/>
66531       <implements name="CellLayout"/>
66532       <constructor name="new" c:identifier="gtk_tree_view_column_new">
66533         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn.</doc>
66534         <return-value transfer-ownership="none">
66535           <doc xml:whitespace="preserve">A newly created #GtkTreeViewColumn.</doc>
66536           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
66537         </return-value>
66538       </constructor>
66539       <constructor name="new_with_attributes"
66540                    c:identifier="gtk_tree_view_column_new_with_attributes"
66541                    introspectable="0">
66542         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn with a number of default values.  This is
66543 equivalent to calling gtk_tree_view_column_set_title(),
66544 gtk_tree_view_column_pack_start(), and
66545 gtk_tree_view_column_set_attributes() on the newly created #GtkTreeViewColumn.
66546 Here's a simple example:
66547 |[
66548 enum { TEXT_COLUMN, COLOR_COLUMN, N_COLUMNS };
66549 ...
66550 {
66551 GtkTreeViewColumn *column;
66552 GtkCellRenderer   *renderer = gtk_cell_renderer_text_new ();
66553 column = gtk_tree_view_column_new_with_attributes ("Title",
66554 renderer,
66555 "text", TEXT_COLUMN,
66556 "foreground", COLOR_COLUMN,
66557 NULL);
66558 }
66559 ]|</doc>
66560         <return-value transfer-ownership="none">
66561           <doc xml:whitespace="preserve">A newly created #GtkTreeViewColumn.</doc>
66562           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
66563         </return-value>
66564         <parameters>
66565           <parameter name="title" transfer-ownership="none">
66566             <doc xml:whitespace="preserve">The title to set the header to.</doc>
66567             <type name="utf8" c:type="gchar*"/>
66568           </parameter>
66569           <parameter name="cell" transfer-ownership="none">
66570             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
66571             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66572           </parameter>
66573           <parameter transfer-ownership="none">
66574             <varargs>
66575             </varargs>
66576           </parameter>
66577         </parameters>
66578       </constructor>
66579       <method name="add_attribute"
66580               c:identifier="gtk_tree_view_column_add_attribute">
66581         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @tree_column.  The @column is the
66582 column of the model to get a value from, and the @attribute is the
66583 parameter on @cell_renderer to be set from the value. So for example
66584 if column 2 of the model contains strings, you could have the
66585 "text" attribute of a #GtkCellRendererText get its values from
66586 column 2.</doc>
66587         <return-value transfer-ownership="none">
66588           <type name="none" c:type="void"/>
66589         </return-value>
66590         <parameters>
66591           <parameter name="cell_renderer" transfer-ownership="none">
66592             <doc xml:whitespace="preserve">the #GtkCellRenderer to set attributes on</doc>
66593             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66594           </parameter>
66595           <parameter name="attribute" transfer-ownership="none">
66596             <doc xml:whitespace="preserve">An attribute on the renderer</doc>
66597             <type name="utf8" c:type="gchar*"/>
66598           </parameter>
66599           <parameter name="column" transfer-ownership="none">
66600             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
66601             <type name="gint" c:type="gint"/>
66602           </parameter>
66603         </parameters>
66604       </method>
66605       <method name="cell_get_position"
66606               c:identifier="gtk_tree_view_column_cell_get_position">
66607         <doc xml:whitespace="preserve">Obtains the horizontal position and size of a cell in a column. If the
66608 cell is not found in the column, @start_pos and @width are not changed and
66609 %FALSE is returned.</doc>
66610         <return-value transfer-ownership="none">
66611           <doc xml:whitespace="preserve">%TRUE if @cell belongs to @tree_column.</doc>
66612           <type name="gboolean" c:type="gboolean"/>
66613         </return-value>
66614         <parameters>
66615           <parameter name="cell_renderer" transfer-ownership="none">
66616             <doc xml:whitespace="preserve">a #GtkCellRenderer</doc>
66617             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66618           </parameter>
66619           <parameter name="start_pos" transfer-ownership="none">
66620             <doc xml:whitespace="preserve">return location for the horizontal position of @cell within</doc>
66621             <type name="gint" c:type="gint*"/>
66622           </parameter>
66623           <parameter name="width" transfer-ownership="none">
66624             <doc xml:whitespace="preserve">return location for the width of @cell, may be %NULL</doc>
66625             <type name="gint" c:type="gint*"/>
66626           </parameter>
66627         </parameters>
66628       </method>
66629       <method name="cell_get_size"
66630               c:identifier="gtk_tree_view_column_cell_get_size">
66631         <doc xml:whitespace="preserve">Obtains the width and height needed to render the column.  This is used
66632 primarily by the #GtkTreeView.</doc>
66633         <return-value transfer-ownership="none">
66634           <type name="none" c:type="void"/>
66635         </return-value>
66636         <parameters>
66637           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
66638             <doc xml:whitespace="preserve">The area a cell in the column will be allocated, or %NULL</doc>
66639             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
66640           </parameter>
66641           <parameter name="x_offset" transfer-ownership="none" allow-none="1">
66642             <doc xml:whitespace="preserve">location to return x offset of a cell relative to @cell_area, or %NULL</doc>
66643             <type name="gint" c:type="gint*"/>
66644           </parameter>
66645           <parameter name="y_offset" transfer-ownership="none" allow-none="1">
66646             <doc xml:whitespace="preserve">location to return y offset of a cell relative to @cell_area, or %NULL</doc>
66647             <type name="gint" c:type="gint*"/>
66648           </parameter>
66649           <parameter name="width" transfer-ownership="none" allow-none="1">
66650             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
66651             <type name="gint" c:type="gint*"/>
66652           </parameter>
66653           <parameter name="height" transfer-ownership="none" allow-none="1">
66654             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
66655             <type name="gint" c:type="gint*"/>
66656           </parameter>
66657         </parameters>
66658       </method>
66659       <method name="cell_is_visible"
66660               c:identifier="gtk_tree_view_column_cell_is_visible">
66661         <doc xml:whitespace="preserve">Returns %TRUE if any of the cells packed into the @tree_column are visible.
66662 For this to be meaningful, you must first initialize the cells with
66663 gtk_tree_view_column_cell_set_cell_data()</doc>
66664         <return-value transfer-ownership="none">
66665           <doc xml:whitespace="preserve">%TRUE, if any of the cells packed into the @tree_column are currently visible</doc>
66666           <type name="gboolean" c:type="gboolean"/>
66667         </return-value>
66668       </method>
66669       <method name="cell_set_cell_data"
66670               c:identifier="gtk_tree_view_column_cell_set_cell_data">
66671         <doc xml:whitespace="preserve">Sets the cell renderer based on the @tree_model and @iter.  That is, for
66672 every attribute mapping in @tree_column, it will get a value from the set
66673 column on the @iter, and use that value to set the attribute on the cell
66674 renderer.  This is used primarily by the #GtkTreeView.</doc>
66675         <return-value transfer-ownership="none">
66676           <type name="none" c:type="void"/>
66677         </return-value>
66678         <parameters>
66679           <parameter name="tree_model" transfer-ownership="none">
66680             <doc xml:whitespace="preserve">The #GtkTreeModel to to get the cell renderers attributes from.</doc>
66681             <type name="TreeModel" c:type="GtkTreeModel*"/>
66682           </parameter>
66683           <parameter name="iter" transfer-ownership="none">
66684             <doc xml:whitespace="preserve">The #GtkTreeIter to to get the cell renderer's attributes from.</doc>
66685             <type name="TreeIter" c:type="GtkTreeIter*"/>
66686           </parameter>
66687           <parameter name="is_expander" transfer-ownership="none">
66688             <doc xml:whitespace="preserve">%TRUE, if the row has children</doc>
66689             <type name="gboolean" c:type="gboolean"/>
66690           </parameter>
66691           <parameter name="is_expanded" transfer-ownership="none">
66692             <doc xml:whitespace="preserve">%TRUE, if the row has visible children</doc>
66693             <type name="gboolean" c:type="gboolean"/>
66694           </parameter>
66695         </parameters>
66696       </method>
66697       <method name="clear" c:identifier="gtk_tree_view_column_clear">
66698         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on the @tree_column.</doc>
66699         <return-value transfer-ownership="none">
66700           <type name="none" c:type="void"/>
66701         </return-value>
66702       </method>
66703       <method name="clear_attributes"
66704               c:identifier="gtk_tree_view_column_clear_attributes">
66705         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
66706 gtk_tree_view_column_set_attributes().</doc>
66707         <return-value transfer-ownership="none">
66708           <type name="none" c:type="void"/>
66709         </return-value>
66710         <parameters>
66711           <parameter name="cell_renderer" transfer-ownership="none">
66712             <doc xml:whitespace="preserve">a #GtkCellRenderer to clear the attribute mapping on.</doc>
66713             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66714           </parameter>
66715         </parameters>
66716       </method>
66717       <method name="clicked" c:identifier="gtk_tree_view_column_clicked">
66718         <doc xml:whitespace="preserve">Emits the "clicked" signal on the column.  This function will only work if</doc>
66719         <return-value transfer-ownership="none">
66720           <type name="none" c:type="void"/>
66721         </return-value>
66722       </method>
66723       <method name="focus_cell"
66724               c:identifier="gtk_tree_view_column_focus_cell"
66725               version="2.2">
66726         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @cell, if the column contains
66727 2 or more editable and activatable cells.</doc>
66728         <return-value transfer-ownership="none">
66729           <type name="none" c:type="void"/>
66730         </return-value>
66731         <parameters>
66732           <parameter name="cell" transfer-ownership="none">
66733             <doc xml:whitespace="preserve">A #GtkCellRenderer</doc>
66734             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66735           </parameter>
66736         </parameters>
66737       </method>
66738       <method name="get_alignment"
66739               c:identifier="gtk_tree_view_column_get_alignment">
66740         <doc xml:whitespace="preserve">Returns the current x alignment of @tree_column.  This value can range
66741 between 0.0 and 1.0.</doc>
66742         <return-value transfer-ownership="none">
66743           <doc xml:whitespace="preserve">The current alignent of @tree_column.</doc>
66744           <type name="gfloat" c:type="gfloat"/>
66745         </return-value>
66746       </method>
66747       <method name="get_clickable"
66748               c:identifier="gtk_tree_view_column_get_clickable">
66749         <doc xml:whitespace="preserve">Returns %TRUE if the user can click on the header for the column.</doc>
66750         <return-value transfer-ownership="none">
66751           <doc xml:whitespace="preserve">%TRUE if user can click the column header.</doc>
66752           <type name="gboolean" c:type="gboolean"/>
66753         </return-value>
66754       </method>
66755       <method name="get_expand"
66756               c:identifier="gtk_tree_view_column_get_expand"
66757               version="2.4">
66758         <doc xml:whitespace="preserve">Return %TRUE if the column expands to take any available space.</doc>
66759         <return-value transfer-ownership="none">
66760           <doc xml:whitespace="preserve">%TRUE, if the column expands</doc>
66761           <type name="gboolean" c:type="gboolean"/>
66762         </return-value>
66763       </method>
66764       <method name="get_fixed_width"
66765               c:identifier="gtk_tree_view_column_get_fixed_width">
66766         <doc xml:whitespace="preserve">Gets the fixed width of the column.  This value is only meaning may not be
66767 the actual width of the column on the screen, just what is requested.</doc>
66768         <return-value transfer-ownership="none">
66769           <doc xml:whitespace="preserve">the fixed width of the column</doc>
66770           <type name="gint" c:type="gint"/>
66771         </return-value>
66772       </method>
66773       <method name="get_max_width"
66774               c:identifier="gtk_tree_view_column_get_max_width">
66775         <doc xml:whitespace="preserve">Returns the maximum width in pixels of the @tree_column, or -1 if no maximum
66776 width is set.</doc>
66777         <return-value transfer-ownership="none">
66778           <doc xml:whitespace="preserve">The maximum width of the @tree_column.</doc>
66779           <type name="gint" c:type="gint"/>
66780         </return-value>
66781       </method>
66782       <method name="get_min_width"
66783               c:identifier="gtk_tree_view_column_get_min_width">
66784         <doc xml:whitespace="preserve">Returns the minimum width in pixels of the @tree_column, or -1 if no minimum
66785 width is set.</doc>
66786         <return-value transfer-ownership="none">
66787           <doc xml:whitespace="preserve">The minimum width of the @tree_column.</doc>
66788           <type name="gint" c:type="gint"/>
66789         </return-value>
66790       </method>
66791       <method name="get_reorderable"
66792               c:identifier="gtk_tree_view_column_get_reorderable">
66793         <doc xml:whitespace="preserve">Returns %TRUE if the @tree_column can be reordered by the user.</doc>
66794         <return-value transfer-ownership="none">
66795           <doc xml:whitespace="preserve">%TRUE if the @tree_column can be reordered by the user.</doc>
66796           <type name="gboolean" c:type="gboolean"/>
66797         </return-value>
66798       </method>
66799       <method name="get_resizable"
66800               c:identifier="gtk_tree_view_column_get_resizable">
66801         <doc xml:whitespace="preserve">Returns %TRUE if the @tree_column can be resized by the end user.</doc>
66802         <return-value transfer-ownership="none">
66803           <doc xml:whitespace="preserve">%TRUE, if the @tree_column can be resized.</doc>
66804           <type name="gboolean" c:type="gboolean"/>
66805         </return-value>
66806       </method>
66807       <method name="get_sizing" c:identifier="gtk_tree_view_column_get_sizing">
66808         <doc xml:whitespace="preserve">Returns the current type of @tree_column.</doc>
66809         <return-value transfer-ownership="none">
66810           <doc xml:whitespace="preserve">The type of @tree_column.</doc>
66811           <type name="TreeViewColumnSizing" c:type="GtkTreeViewColumnSizing"/>
66812         </return-value>
66813       </method>
66814       <method name="get_sort_column_id"
66815               c:identifier="gtk_tree_view_column_get_sort_column_id">
66816         <doc xml:whitespace="preserve">Gets the logical @sort_column_id that the model sorts on when this
66817 column is selected for sorting.
66818 See gtk_tree_view_column_set_sort_column_id().
66819 this column can't be used for sorting.</doc>
66820         <return-value transfer-ownership="none">
66821           <doc xml:whitespace="preserve">the current @sort_column_id for this column, or -1 if</doc>
66822           <type name="gint" c:type="gint"/>
66823         </return-value>
66824       </method>
66825       <method name="get_sort_indicator"
66826               c:identifier="gtk_tree_view_column_get_sort_indicator">
66827         <doc xml:whitespace="preserve">Gets the value set by gtk_tree_view_column_set_sort_indicator().</doc>
66828         <return-value transfer-ownership="none">
66829           <doc xml:whitespace="preserve">whether the sort indicator arrow is displayed</doc>
66830           <type name="gboolean" c:type="gboolean"/>
66831         </return-value>
66832       </method>
66833       <method name="get_sort_order"
66834               c:identifier="gtk_tree_view_column_get_sort_order">
66835         <doc xml:whitespace="preserve">Gets the value set by gtk_tree_view_column_set_sort_order().</doc>
66836         <return-value transfer-ownership="none">
66837           <doc xml:whitespace="preserve">the sort order the sort indicator is indicating</doc>
66838           <type name="SortType" c:type="GtkSortType"/>
66839         </return-value>
66840       </method>
66841       <method name="get_spacing"
66842               c:identifier="gtk_tree_view_column_get_spacing">
66843         <doc xml:whitespace="preserve">Returns the spacing of @tree_column.</doc>
66844         <return-value transfer-ownership="none">
66845           <doc xml:whitespace="preserve">the spacing of @tree_column.</doc>
66846           <type name="gint" c:type="gint"/>
66847         </return-value>
66848       </method>
66849       <method name="get_title" c:identifier="gtk_tree_view_column_get_title">
66850         <doc xml:whitespace="preserve">Returns the title of the widget.
66851 modified or freed.</doc>
66852         <return-value transfer-ownership="none">
66853           <doc xml:whitespace="preserve">the title of the column. This string should not be</doc>
66854           <type name="utf8" c:type="gchar*"/>
66855         </return-value>
66856       </method>
66857       <method name="get_tree_view"
66858               c:identifier="gtk_tree_view_column_get_tree_view"
66859               version="2.12">
66860         <doc xml:whitespace="preserve">Returns the #GtkTreeView wherein @tree_column has been inserted.
66861 If @column is currently not inserted in any tree view, %NULL is
66862 returned.
66863 been inserted if any, %NULL otherwise.</doc>
66864         <return-value transfer-ownership="none">
66865           <doc xml:whitespace="preserve">The tree view wherein @column has</doc>
66866           <type name="Widget" c:type="GtkWidget*"/>
66867         </return-value>
66868       </method>
66869       <method name="get_visible"
66870               c:identifier="gtk_tree_view_column_get_visible">
66871         <doc xml:whitespace="preserve">Returns %TRUE if @tree_column is visible.
66872 the tree will show the column.</doc>
66873         <return-value transfer-ownership="none">
66874           <doc xml:whitespace="preserve">whether the column is visible or not.  If it is visible, then</doc>
66875           <type name="gboolean" c:type="gboolean"/>
66876         </return-value>
66877       </method>
66878       <method name="get_widget" c:identifier="gtk_tree_view_column_get_widget">
66879         <doc xml:whitespace="preserve">Returns the #GtkWidget in the button on the column header.
66880 If a custom widget has not been set then %NULL is returned.
66881 header, or %NULL</doc>
66882         <return-value transfer-ownership="none">
66883           <doc xml:whitespace="preserve">The #GtkWidget in the column</doc>
66884           <type name="Widget" c:type="GtkWidget*"/>
66885         </return-value>
66886       </method>
66887       <method name="get_width" c:identifier="gtk_tree_view_column_get_width">
66888         <doc xml:whitespace="preserve">Returns the current size of @tree_column in pixels.</doc>
66889         <return-value transfer-ownership="none">
66890           <doc xml:whitespace="preserve">The current width of @tree_column.</doc>
66891           <type name="gint" c:type="gint"/>
66892         </return-value>
66893       </method>
66894       <method name="pack_end" c:identifier="gtk_tree_view_column_pack_end">
66895         <doc xml:whitespace="preserve">Adds the @cell to end of the column. If @expand is %FALSE, then the @cell
66896 is allocated no more space than it needs. Any unused space is divided
66897 evenly between cells for which @expand is %TRUE.</doc>
66898         <return-value transfer-ownership="none">
66899           <type name="none" c:type="void"/>
66900         </return-value>
66901         <parameters>
66902           <parameter name="cell" transfer-ownership="none">
66903             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
66904             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66905           </parameter>
66906           <parameter name="expand" transfer-ownership="none">
66907             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @tree_column.</doc>
66908             <type name="gboolean" c:type="gboolean"/>
66909           </parameter>
66910         </parameters>
66911       </method>
66912       <method name="pack_start" c:identifier="gtk_tree_view_column_pack_start">
66913         <doc xml:whitespace="preserve">Packs the @cell into the beginning of the column. If @expand is %FALSE, then
66914 the @cell is allocated no more space than it needs. Any unused space is divided
66915 evenly between cells for which @expand is %TRUE.</doc>
66916         <return-value transfer-ownership="none">
66917           <type name="none" c:type="void"/>
66918         </return-value>
66919         <parameters>
66920           <parameter name="cell" transfer-ownership="none">
66921             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
66922             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66923           </parameter>
66924           <parameter name="expand" transfer-ownership="none">
66925             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @tree_column.</doc>
66926             <type name="gboolean" c:type="gboolean"/>
66927           </parameter>
66928         </parameters>
66929       </method>
66930       <method name="queue_resize"
66931               c:identifier="gtk_tree_view_column_queue_resize"
66932               version="2.8">
66933         <doc xml:whitespace="preserve">Flags the column, and the cell renderers added to this column, to have
66934 their sizes renegotiated.</doc>
66935         <return-value transfer-ownership="none">
66936           <type name="none" c:type="void"/>
66937         </return-value>
66938       </method>
66939       <method name="set_alignment"
66940               c:identifier="gtk_tree_view_column_set_alignment">
66941         <doc xml:whitespace="preserve">Sets the alignment of the title or custom widget inside the column header.
66942 The alignment determines its location inside the button -- 0.0 for left, 0.5
66943 for center, 1.0 for right.</doc>
66944         <return-value transfer-ownership="none">
66945           <type name="none" c:type="void"/>
66946         </return-value>
66947         <parameters>
66948           <parameter name="xalign" transfer-ownership="none">
66949             <doc xml:whitespace="preserve">The alignment, which is between [0.0 and 1.0] inclusive.</doc>
66950             <type name="gfloat" c:type="gfloat"/>
66951           </parameter>
66952         </parameters>
66953       </method>
66954       <method name="set_attributes"
66955               c:identifier="gtk_tree_view_column_set_attributes"
66956               introspectable="0">
66957         <doc xml:whitespace="preserve">Sets the attributes in the list as the attributes of @tree_column.
66958 The attributes should be in attribute/column order, as in
66959 gtk_tree_view_column_add_attribute(). All existing attributes
66960 are removed, and replaced with the new attributes.</doc>
66961         <return-value transfer-ownership="none">
66962           <type name="none" c:type="void"/>
66963         </return-value>
66964         <parameters>
66965           <parameter name="cell_renderer" transfer-ownership="none">
66966             <doc xml:whitespace="preserve">the #GtkCellRenderer we're setting the attributes of</doc>
66967             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66968           </parameter>
66969           <parameter transfer-ownership="none">
66970             <varargs>
66971             </varargs>
66972           </parameter>
66973         </parameters>
66974       </method>
66975       <method name="set_cell_data_func"
66976               c:identifier="gtk_tree_view_column_set_cell_data_func">
66977         <doc xml:whitespace="preserve">Sets the #GtkTreeViewColumnFunc to use for the column.  This
66978 function is used instead of the standard attributes mapping for
66979 setting the column value, and should set the value of @tree_column's
66980 cell renderer as appropriate.  @func may be %NULL to remove an
66981 older one.</doc>
66982         <return-value transfer-ownership="none">
66983           <type name="none" c:type="void"/>
66984         </return-value>
66985         <parameters>
66986           <parameter name="cell_renderer" transfer-ownership="none">
66987             <doc xml:whitespace="preserve">A #GtkCellRenderer</doc>
66988             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
66989           </parameter>
66990           <parameter name="func"
66991                      transfer-ownership="none"
66992                      scope="notified"
66993                      closure="2"
66994                      destroy="3">
66995             <doc xml:whitespace="preserve">The #GtkTreeViewColumnFunc to use.</doc>
66996             <type name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc"/>
66997           </parameter>
66998           <parameter name="func_data" transfer-ownership="none">
66999             <doc xml:whitespace="preserve">The user data for @func.</doc>
67000             <type name="gpointer" c:type="gpointer"/>
67001           </parameter>
67002           <parameter name="destroy" transfer-ownership="none" scope="async">
67003             <doc xml:whitespace="preserve">The destroy notification for @func_data</doc>
67004             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
67005           </parameter>
67006         </parameters>
67007       </method>
67008       <method name="set_clickable"
67009               c:identifier="gtk_tree_view_column_set_clickable">
67010         <doc xml:whitespace="preserve">Sets the header to be active if @active is %TRUE.  When the header is active,
67011 then it can take keyboard focus, and can be clicked.</doc>
67012         <return-value transfer-ownership="none">
67013           <type name="none" c:type="void"/>
67014         </return-value>
67015         <parameters>
67016           <parameter name="clickable" transfer-ownership="none">
67017             <doc xml:whitespace="preserve">%TRUE if the header is active.</doc>
67018             <type name="gboolean" c:type="gboolean"/>
67019           </parameter>
67020         </parameters>
67021       </method>
67022       <method name="set_expand"
67023               c:identifier="gtk_tree_view_column_set_expand"
67024               version="2.4">
67025         <doc xml:whitespace="preserve">Sets the column to take available extra space.  This space is shared equally
67026 amongst all columns that have the expand set to %TRUE.  If no column has this
67027 option set, then the last column gets all extra space.  By default, every
67028 column is created with this %FALSE.</doc>
67029         <return-value transfer-ownership="none">
67030           <type name="none" c:type="void"/>
67031         </return-value>
67032         <parameters>
67033           <parameter name="expand" transfer-ownership="none">
67034             <doc xml:whitespace="preserve">%TRUE if the column should take available extra space, %FALSE if not</doc>
67035             <type name="gboolean" c:type="gboolean"/>
67036           </parameter>
67037         </parameters>
67038       </method>
67039       <method name="set_fixed_width"
67040               c:identifier="gtk_tree_view_column_set_fixed_width">
67041         <doc xml:whitespace="preserve">Sets the size of the column in pixels.  This is meaningful only if the sizing
67042 type is #GTK_TREE_VIEW_COLUMN_FIXED.  The size of the column is clamped to
67043 the min/max width for the column.  Please note that the min/max width of the
67044 column doesn't actually affect the "fixed_width" property of the widget, just
67045 the actual size when displayed.</doc>
67046         <return-value transfer-ownership="none">
67047           <type name="none" c:type="void"/>
67048         </return-value>
67049         <parameters>
67050           <parameter name="fixed_width" transfer-ownership="none">
67051             <doc xml:whitespace="preserve">The size to set @tree_column to. Must be greater than 0.</doc>
67052             <type name="gint" c:type="gint"/>
67053           </parameter>
67054         </parameters>
67055       </method>
67056       <method name="set_max_width"
67057               c:identifier="gtk_tree_view_column_set_max_width">
67058         <doc xml:whitespace="preserve">Sets the maximum width of the @tree_column.  If @max_width is -1, then the
67059 maximum width is unset.  Note, the column can actually be wider than max
67060 width if it's the last column in a view.  In this case, the column expands to
67061 fill any extra space.</doc>
67062         <return-value transfer-ownership="none">
67063           <type name="none" c:type="void"/>
67064         </return-value>
67065         <parameters>
67066           <parameter name="max_width" transfer-ownership="none">
67067             <doc xml:whitespace="preserve">The maximum width of the column in pixels, or -1.</doc>
67068             <type name="gint" c:type="gint"/>
67069           </parameter>
67070         </parameters>
67071       </method>
67072       <method name="set_min_width"
67073               c:identifier="gtk_tree_view_column_set_min_width">
67074         <doc xml:whitespace="preserve">Sets the minimum width of the @tree_column.  If @min_width is -1, then the
67075 minimum width is unset.</doc>
67076         <return-value transfer-ownership="none">
67077           <type name="none" c:type="void"/>
67078         </return-value>
67079         <parameters>
67080           <parameter name="min_width" transfer-ownership="none">
67081             <doc xml:whitespace="preserve">The minimum width of the column in pixels, or -1.</doc>
67082             <type name="gint" c:type="gint"/>
67083           </parameter>
67084         </parameters>
67085       </method>
67086       <method name="set_reorderable"
67087               c:identifier="gtk_tree_view_column_set_reorderable">
67088         <doc xml:whitespace="preserve">If @reorderable is %TRUE, then the column can be reordered by the end user
67089 dragging the header.</doc>
67090         <return-value transfer-ownership="none">
67091           <type name="none" c:type="void"/>
67092         </return-value>
67093         <parameters>
67094           <parameter name="reorderable" transfer-ownership="none">
67095             <doc xml:whitespace="preserve">%TRUE, if the column can be reordered.</doc>
67096             <type name="gboolean" c:type="gboolean"/>
67097           </parameter>
67098         </parameters>
67099       </method>
67100       <method name="set_resizable"
67101               c:identifier="gtk_tree_view_column_set_resizable">
67102         <doc xml:whitespace="preserve">If @resizable is %TRUE, then the user can explicitly resize the column by
67103 grabbing the outer edge of the column button.  If resizable is %TRUE and
67104 sizing mode of the column is #GTK_TREE_VIEW_COLUMN_AUTOSIZE, then the sizing
67105 mode is changed to #GTK_TREE_VIEW_COLUMN_GROW_ONLY.</doc>
67106         <return-value transfer-ownership="none">
67107           <type name="none" c:type="void"/>
67108         </return-value>
67109         <parameters>
67110           <parameter name="resizable" transfer-ownership="none">
67111             <doc xml:whitespace="preserve">%TRUE, if the column can be resized</doc>
67112             <type name="gboolean" c:type="gboolean"/>
67113           </parameter>
67114         </parameters>
67115       </method>
67116       <method name="set_sizing" c:identifier="gtk_tree_view_column_set_sizing">
67117         <doc xml:whitespace="preserve">Sets the growth behavior of @tree_column to @type.</doc>
67118         <return-value transfer-ownership="none">
67119           <type name="none" c:type="void"/>
67120         </return-value>
67121         <parameters>
67122           <parameter name="type" transfer-ownership="none">
67123             <doc xml:whitespace="preserve">The #GtkTreeViewColumnSizing.</doc>
67124             <type name="TreeViewColumnSizing"
67125                   c:type="GtkTreeViewColumnSizing"/>
67126           </parameter>
67127         </parameters>
67128       </method>
67129       <method name="set_sort_column_id"
67130               c:identifier="gtk_tree_view_column_set_sort_column_id">
67131         <doc xml:whitespace="preserve">Sets the logical @sort_column_id that this column sorts on when this column 
67132 is selected for sorting.  Doing so makes the column header clickable.</doc>
67133         <return-value transfer-ownership="none">
67134           <type name="none" c:type="void"/>
67135         </return-value>
67136         <parameters>
67137           <parameter name="sort_column_id" transfer-ownership="none">
67138             <doc xml:whitespace="preserve">The @sort_column_id of the model to sort on.</doc>
67139             <type name="gint" c:type="gint"/>
67140           </parameter>
67141         </parameters>
67142       </method>
67143       <method name="set_sort_indicator"
67144               c:identifier="gtk_tree_view_column_set_sort_indicator">
67145         <doc xml:whitespace="preserve">Call this function with a @setting of %TRUE to display an arrow in
67146 the header button indicating the column is sorted. Call
67147 gtk_tree_view_column_set_sort_order() to change the direction of
67148 the arrow.</doc>
67149         <return-value transfer-ownership="none">
67150           <type name="none" c:type="void"/>
67151         </return-value>
67152         <parameters>
67153           <parameter name="setting" transfer-ownership="none">
67154             <doc xml:whitespace="preserve">%TRUE to display an indicator that the column is sorted</doc>
67155             <type name="gboolean" c:type="gboolean"/>
67156           </parameter>
67157         </parameters>
67158       </method>
67159       <method name="set_sort_order"
67160               c:identifier="gtk_tree_view_column_set_sort_order">
67161         <doc xml:whitespace="preserve">Changes the appearance of the sort indicator. 
67162 This &lt;emphasis&gt;does not&lt;/emphasis&gt; actually sort the model.  Use
67163 gtk_tree_view_column_set_sort_column_id() if you want automatic sorting
67164 support.  This function is primarily for custom sorting behavior, and should
67165 be used in conjunction with gtk_tree_sortable_set_sort_column() to do
67166 that. For custom models, the mechanism will vary. 
67167 The sort indicator changes direction to indicate normal sort or reverse sort.
67168 Note that you must have the sort indicator enabled to see anything when 
67169 calling this function; see gtk_tree_view_column_set_sort_indicator().</doc>
67170         <return-value transfer-ownership="none">
67171           <type name="none" c:type="void"/>
67172         </return-value>
67173         <parameters>
67174           <parameter name="order" transfer-ownership="none">
67175             <doc xml:whitespace="preserve">sort order that the sort indicator should indicate</doc>
67176             <type name="SortType" c:type="GtkSortType"/>
67177           </parameter>
67178         </parameters>
67179       </method>
67180       <method name="set_spacing"
67181               c:identifier="gtk_tree_view_column_set_spacing">
67182         <doc xml:whitespace="preserve">Sets the spacing field of @tree_column, which is the number of pixels to
67183 place between cell renderers packed into it.</doc>
67184         <return-value transfer-ownership="none">
67185           <type name="none" c:type="void"/>
67186         </return-value>
67187         <parameters>
67188           <parameter name="spacing" transfer-ownership="none">
67189             <doc xml:whitespace="preserve">distance between cell renderers in pixels.</doc>
67190             <type name="gint" c:type="gint"/>
67191           </parameter>
67192         </parameters>
67193       </method>
67194       <method name="set_title" c:identifier="gtk_tree_view_column_set_title">
67195         <doc xml:whitespace="preserve">Sets the title of the @tree_column.  If a custom widget has been set, then
67196 this value is ignored.</doc>
67197         <return-value transfer-ownership="none">
67198           <type name="none" c:type="void"/>
67199         </return-value>
67200         <parameters>
67201           <parameter name="title" transfer-ownership="none">
67202             <doc xml:whitespace="preserve">The title of the @tree_column.</doc>
67203             <type name="utf8" c:type="gchar*"/>
67204           </parameter>
67205         </parameters>
67206       </method>
67207       <method name="set_visible"
67208               c:identifier="gtk_tree_view_column_set_visible">
67209         <doc xml:whitespace="preserve">Sets the visibility of @tree_column.</doc>
67210         <return-value transfer-ownership="none">
67211           <type name="none" c:type="void"/>
67212         </return-value>
67213         <parameters>
67214           <parameter name="visible" transfer-ownership="none">
67215             <doc xml:whitespace="preserve">%TRUE if the @tree_column is visible.</doc>
67216             <type name="gboolean" c:type="gboolean"/>
67217           </parameter>
67218         </parameters>
67219       </method>
67220       <method name="set_widget" c:identifier="gtk_tree_view_column_set_widget">
67221         <doc xml:whitespace="preserve">Sets the widget in the header to be @widget.  If widget is %NULL, then the
67222 header button is set with a #GtkLabel set to the title of @tree_column.</doc>
67223         <return-value transfer-ownership="none">
67224           <type name="none" c:type="void"/>
67225         </return-value>
67226         <parameters>
67227           <parameter name="widget" transfer-ownership="none" allow-none="1">
67228             <doc xml:whitespace="preserve">A child #GtkWidget, or %NULL.</doc>
67229             <type name="Widget" c:type="GtkWidget*"/>
67230           </parameter>
67231         </parameters>
67232       </method>
67233       <property name="alignment" writable="1" transfer-ownership="none">
67234         <type name="gfloat"/>
67235       </property>
67236       <property name="clickable" writable="1" transfer-ownership="none">
67237         <type name="gboolean"/>
67238       </property>
67239       <property name="expand" writable="1" transfer-ownership="none">
67240         <type name="gboolean"/>
67241       </property>
67242       <property name="fixed-width" writable="1" transfer-ownership="none">
67243         <type name="gint"/>
67244       </property>
67245       <property name="max-width" writable="1" transfer-ownership="none">
67246         <type name="gint"/>
67247       </property>
67248       <property name="min-width" writable="1" transfer-ownership="none">
67249         <type name="gint"/>
67250       </property>
67251       <property name="reorderable" writable="1" transfer-ownership="none">
67252         <type name="gboolean"/>
67253       </property>
67254       <property name="resizable" writable="1" transfer-ownership="none">
67255         <type name="gboolean"/>
67256       </property>
67257       <property name="sizing" writable="1" transfer-ownership="none">
67258         <type name="TreeViewColumnSizing"/>
67259       </property>
67260       <property name="sort-column-id"
67261                 version="2.18"
67262                 writable="1"
67263                 transfer-ownership="none">
67264         <doc xml:whitespace="preserve">Logical sort column ID this column sorts on when selected for sorting. Setting the sort column ID makes the column header
67265 clickable. Set to %-1 to make the column unsortable.</doc>
67266         <type name="gint"/>
67267       </property>
67268       <property name="sort-indicator" writable="1" transfer-ownership="none">
67269         <type name="gboolean"/>
67270       </property>
67271       <property name="sort-order" writable="1" transfer-ownership="none">
67272         <type name="SortType"/>
67273       </property>
67274       <property name="spacing" writable="1" transfer-ownership="none">
67275         <type name="gint"/>
67276       </property>
67277       <property name="title" writable="1" transfer-ownership="none">
67278         <type name="utf8"/>
67279       </property>
67280       <property name="visible" writable="1" transfer-ownership="none">
67281         <type name="gboolean"/>
67282       </property>
67283       <property name="widget" writable="1" transfer-ownership="none">
67284         <type name="Widget"/>
67285       </property>
67286       <property name="width" transfer-ownership="none">
67287         <type name="gint"/>
67288       </property>
67289       <field name="parent">
67290         <type name="Object" c:type="GtkObject"/>
67291       </field>
67292       <field name="tree_view">
67293         <type name="Widget" c:type="GtkWidget*"/>
67294       </field>
67295       <field name="button">
67296         <type name="Widget" c:type="GtkWidget*"/>
67297       </field>
67298       <field name="child">
67299         <type name="Widget" c:type="GtkWidget*"/>
67300       </field>
67301       <field name="arrow">
67302         <type name="Widget" c:type="GtkWidget*"/>
67303       </field>
67304       <field name="alignment">
67305         <type name="Widget" c:type="GtkWidget*"/>
67306       </field>
67307       <field name="window">
67308         <type name="Gdk.Window" c:type="GdkWindow*"/>
67309       </field>
67310       <field name="editable_widget">
67311         <type name="CellEditable" c:type="GtkCellEditable*"/>
67312       </field>
67313       <field name="xalign">
67314         <type name="gfloat" c:type="gfloat"/>
67315       </field>
67316       <field name="property_changed_signal">
67317         <type name="guint" c:type="guint"/>
67318       </field>
67319       <field name="spacing">
67320         <type name="gint" c:type="gint"/>
67321       </field>
67322       <field name="column_type">
67323         <type name="TreeViewColumnSizing" c:type="GtkTreeViewColumnSizing"/>
67324       </field>
67325       <field name="requested_width">
67326         <type name="gint" c:type="gint"/>
67327       </field>
67328       <field name="button_request">
67329         <type name="gint" c:type="gint"/>
67330       </field>
67331       <field name="resized_width">
67332         <type name="gint" c:type="gint"/>
67333       </field>
67334       <field name="width">
67335         <type name="gint" c:type="gint"/>
67336       </field>
67337       <field name="fixed_width">
67338         <type name="gint" c:type="gint"/>
67339       </field>
67340       <field name="min_width">
67341         <type name="gint" c:type="gint"/>
67342       </field>
67343       <field name="max_width">
67344         <type name="gint" c:type="gint"/>
67345       </field>
67346       <field name="drag_x">
67347         <type name="gint" c:type="gint"/>
67348       </field>
67349       <field name="drag_y">
67350         <type name="gint" c:type="gint"/>
67351       </field>
67352       <field name="title">
67353         <type name="utf8" c:type="gchar*"/>
67354       </field>
67355       <field name="cell_list">
67356         <type name="GLib.List" c:type="GList*">
67357           <type name="gpointer" c:type="gpointer"/>
67358         </type>
67359       </field>
67360       <field name="sort_clicked_signal">
67361         <type name="guint" c:type="guint"/>
67362       </field>
67363       <field name="sort_column_changed_signal">
67364         <type name="guint" c:type="guint"/>
67365       </field>
67366       <field name="sort_column_id">
67367         <type name="gint" c:type="gint"/>
67368       </field>
67369       <field name="sort_order">
67370         <type name="SortType" c:type="GtkSortType"/>
67371       </field>
67372       <field name="visible" bits="1">
67373         <type name="guint" c:type="guint"/>
67374       </field>
67375       <field name="resizable" bits="1">
67376         <type name="guint" c:type="guint"/>
67377       </field>
67378       <field name="clickable" bits="1">
67379         <type name="guint" c:type="guint"/>
67380       </field>
67381       <field name="dirty" bits="1">
67382         <type name="guint" c:type="guint"/>
67383       </field>
67384       <field name="show_sort_indicator" bits="1">
67385         <type name="guint" c:type="guint"/>
67386       </field>
67387       <field name="maybe_reordered" bits="1">
67388         <type name="guint" c:type="guint"/>
67389       </field>
67390       <field name="reorderable" bits="1">
67391         <type name="guint" c:type="guint"/>
67392       </field>
67393       <field name="use_resized_width" bits="1">
67394         <type name="guint" c:type="guint"/>
67395       </field>
67396       <field name="expand" bits="1">
67397         <type name="guint" c:type="guint"/>
67398       </field>
67399       <glib:signal name="clicked">
67400         <return-value transfer-ownership="none">
67401           <type name="none"/>
67402         </return-value>
67403       </glib:signal>
67404     </class>
67405     <record name="TreeViewColumnClass"
67406             c:type="GtkTreeViewColumnClass"
67407             glib:is-gtype-struct-for="TreeViewColumn">
67408       <field name="parent_class">
67409         <type name="ObjectClass" c:type="GtkObjectClass"/>
67410       </field>
67411       <field name="clicked">
67412         <callback name="clicked">
67413           <return-value transfer-ownership="none">
67414             <type name="none" c:type="void"/>
67415           </return-value>
67416           <parameters>
67417             <parameter name="tree_column" transfer-ownership="none">
67418               <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
67419             </parameter>
67420           </parameters>
67421         </callback>
67422       </field>
67423       <field name="_gtk_reserved1" introspectable="0">
67424         <callback name="_gtk_reserved1">
67425           <return-value transfer-ownership="none">
67426             <type name="none" c:type="void"/>
67427           </return-value>
67428         </callback>
67429       </field>
67430       <field name="_gtk_reserved2" introspectable="0">
67431         <callback name="_gtk_reserved2">
67432           <return-value transfer-ownership="none">
67433             <type name="none" c:type="void"/>
67434           </return-value>
67435         </callback>
67436       </field>
67437       <field name="_gtk_reserved3" introspectable="0">
67438         <callback name="_gtk_reserved3">
67439           <return-value transfer-ownership="none">
67440             <type name="none" c:type="void"/>
67441           </return-value>
67442         </callback>
67443       </field>
67444       <field name="_gtk_reserved4" introspectable="0">
67445         <callback name="_gtk_reserved4">
67446           <return-value transfer-ownership="none">
67447             <type name="none" c:type="void"/>
67448           </return-value>
67449         </callback>
67450       </field>
67451     </record>
67452     <callback name="TreeViewColumnDropFunc" c:type="GtkTreeViewColumnDropFunc">
67453       <return-value transfer-ownership="none">
67454         <type name="gboolean" c:type="gboolean"/>
67455       </return-value>
67456       <parameters>
67457         <parameter name="tree_view" transfer-ownership="none">
67458           <type name="TreeView" c:type="GtkTreeView*"/>
67459         </parameter>
67460         <parameter name="column" transfer-ownership="none">
67461           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
67462         </parameter>
67463         <parameter name="prev_column" transfer-ownership="none">
67464           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
67465         </parameter>
67466         <parameter name="next_column" transfer-ownership="none">
67467           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
67468         </parameter>
67469         <parameter name="data" transfer-ownership="none">
67470           <type name="gpointer" c:type="gpointer"/>
67471         </parameter>
67472       </parameters>
67473     </callback>
67474     <enumeration name="TreeViewColumnSizing"
67475                  glib:type-name="GtkTreeViewColumnSizing"
67476                  glib:get-type="gtk_tree_view_column_sizing_get_type"
67477                  c:type="GtkTreeViewColumnSizing">
67478       <member name="grow_only"
67479               value="0"
67480               c:identifier="GTK_TREE_VIEW_COLUMN_GROW_ONLY"
67481               glib:nick="grow-only"/>
67482       <member name="autosize"
67483               value="1"
67484               c:identifier="GTK_TREE_VIEW_COLUMN_AUTOSIZE"
67485               glib:nick="autosize"/>
67486       <member name="fixed"
67487               value="2"
67488               c:identifier="GTK_TREE_VIEW_COLUMN_FIXED"
67489               glib:nick="fixed"/>
67490     </enumeration>
67491     <enumeration name="TreeViewDropPosition"
67492                  glib:type-name="GtkTreeViewDropPosition"
67493                  glib:get-type="gtk_tree_view_drop_position_get_type"
67494                  c:type="GtkTreeViewDropPosition">
67495       <member name="before"
67496               value="0"
67497               c:identifier="GTK_TREE_VIEW_DROP_BEFORE"
67498               glib:nick="before"/>
67499       <member name="after"
67500               value="1"
67501               c:identifier="GTK_TREE_VIEW_DROP_AFTER"
67502               glib:nick="after"/>
67503       <member name="into_or_before"
67504               value="2"
67505               c:identifier="GTK_TREE_VIEW_DROP_INTO_OR_BEFORE"
67506               glib:nick="into-or-before"/>
67507       <member name="into_or_after"
67508               value="3"
67509               c:identifier="GTK_TREE_VIEW_DROP_INTO_OR_AFTER"
67510               glib:nick="into-or-after"/>
67511     </enumeration>
67512     <enumeration name="TreeViewGridLines"
67513                  glib:type-name="GtkTreeViewGridLines"
67514                  glib:get-type="gtk_tree_view_grid_lines_get_type"
67515                  c:type="GtkTreeViewGridLines">
67516       <member name="none"
67517               value="0"
67518               c:identifier="GTK_TREE_VIEW_GRID_LINES_NONE"
67519               glib:nick="none"/>
67520       <member name="horizontal"
67521               value="1"
67522               c:identifier="GTK_TREE_VIEW_GRID_LINES_HORIZONTAL"
67523               glib:nick="horizontal"/>
67524       <member name="vertical"
67525               value="2"
67526               c:identifier="GTK_TREE_VIEW_GRID_LINES_VERTICAL"
67527               glib:nick="vertical"/>
67528       <member name="both"
67529               value="3"
67530               c:identifier="GTK_TREE_VIEW_GRID_LINES_BOTH"
67531               glib:nick="both"/>
67532     </enumeration>
67533     <callback name="TreeViewMappingFunc" c:type="GtkTreeViewMappingFunc">
67534       <return-value transfer-ownership="none">
67535         <type name="none" c:type="void"/>
67536       </return-value>
67537       <parameters>
67538         <parameter name="tree_view" transfer-ownership="none">
67539           <type name="TreeView" c:type="GtkTreeView*"/>
67540         </parameter>
67541         <parameter name="path" transfer-ownership="none">
67542           <type name="TreePath" c:type="GtkTreePath*"/>
67543         </parameter>
67544         <parameter name="user_data" transfer-ownership="none" closure="2">
67545           <type name="gpointer" c:type="gpointer"/>
67546         </parameter>
67547       </parameters>
67548     </callback>
67549     <record name="TreeViewPrivate" c:type="GtkTreeViewPrivate" disguised="1">
67550     </record>
67551     <callback name="TreeViewRowSeparatorFunc"
67552               c:type="GtkTreeViewRowSeparatorFunc">
67553       <return-value transfer-ownership="none">
67554         <type name="gboolean" c:type="gboolean"/>
67555       </return-value>
67556       <parameters>
67557         <parameter name="model" transfer-ownership="none">
67558           <type name="TreeModel" c:type="GtkTreeModel*"/>
67559         </parameter>
67560         <parameter name="iter" transfer-ownership="none">
67561           <type name="TreeIter" c:type="GtkTreeIter*"/>
67562         </parameter>
67563         <parameter name="data" transfer-ownership="none">
67564           <type name="gpointer" c:type="gpointer"/>
67565         </parameter>
67566       </parameters>
67567     </callback>
67568     <callback name="TreeViewSearchEqualFunc"
67569               c:type="GtkTreeViewSearchEqualFunc">
67570       <return-value transfer-ownership="none">
67571         <type name="gboolean" c:type="gboolean"/>
67572       </return-value>
67573       <parameters>
67574         <parameter name="model" transfer-ownership="none">
67575           <type name="TreeModel" c:type="GtkTreeModel*"/>
67576         </parameter>
67577         <parameter name="column" transfer-ownership="none">
67578           <type name="gint" c:type="gint"/>
67579         </parameter>
67580         <parameter name="key" transfer-ownership="none">
67581           <type name="utf8" c:type="gchar*"/>
67582         </parameter>
67583         <parameter name="iter" transfer-ownership="none">
67584           <type name="TreeIter" c:type="GtkTreeIter*"/>
67585         </parameter>
67586         <parameter name="search_data" transfer-ownership="none">
67587           <type name="gpointer" c:type="gpointer"/>
67588         </parameter>
67589       </parameters>
67590     </callback>
67591     <callback name="TreeViewSearchPositionFunc"
67592               c:type="GtkTreeViewSearchPositionFunc">
67593       <return-value transfer-ownership="none">
67594         <type name="none" c:type="void"/>
67595       </return-value>
67596       <parameters>
67597         <parameter name="tree_view" transfer-ownership="none">
67598           <type name="TreeView" c:type="GtkTreeView*"/>
67599         </parameter>
67600         <parameter name="search_dialog" transfer-ownership="none">
67601           <type name="Widget" c:type="GtkWidget*"/>
67602         </parameter>
67603         <parameter name="user_data" transfer-ownership="none" closure="2">
67604           <type name="gpointer" c:type="gpointer"/>
67605         </parameter>
67606       </parameters>
67607     </callback>
67608     <class name="UIManager"
67609            c:symbol-prefix="ui_manager"
67610            c:type="GtkUIManager"
67611            parent="GObject.Object"
67612            glib:type-name="GtkUIManager"
67613            glib:get-type="gtk_ui_manager_get_type"
67614            glib:type-struct="UIManagerClass">
67615       <implements name="Buildable"/>
67616       <constructor name="new" c:identifier="gtk_ui_manager_new" version="2.4">
67617         <doc xml:whitespace="preserve">Creates a new ui manager object.</doc>
67618         <return-value transfer-ownership="full">
67619           <doc xml:whitespace="preserve">a new ui manager object.</doc>
67620           <type name="UIManager" c:type="GtkUIManager*"/>
67621         </return-value>
67622       </constructor>
67623       <virtual-method name="get_action" invoker="get_action" version="2.4">
67624         <doc xml:whitespace="preserve">Looks up an action by following a path. See gtk_ui_manager_get_widget()
67625 for more information about paths.
67626 or %NULL if no widget was found.</doc>
67627         <return-value transfer-ownership="none">
67628           <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
67629           <type name="Action" c:type="GtkAction*"/>
67630         </return-value>
67631         <parameters>
67632           <parameter name="path" transfer-ownership="none">
67633             <doc xml:whitespace="preserve">a path</doc>
67634             <type name="utf8" c:type="gchar*"/>
67635           </parameter>
67636         </parameters>
67637       </virtual-method>
67638       <virtual-method name="get_widget" invoker="get_widget" version="2.4">
67639         <doc xml:whitespace="preserve">Looks up a widget by following a path. 
67640 The path consists of the names specified in the XML description of the UI. 
67641 separated by '/'. Elements which don't have a name or action attribute in 
67642 the XML (e.g. &amp;lt;popup&amp;gt;) can be addressed by their XML element name 
67643 (e.g. "popup"). The root element ("/ui") can be omitted in the path.
67644 Note that the widget found by following a path that ends in a &amp;lt;menu&amp;gt;
67645 element is the menuitem to which the menu is attached, not the menu itmanager.
67646 Also note that the widgets constructed by a ui manager are not tied to 
67647 the lifecycle of the ui manager. If you add the widgets returned by this 
67648 function to some container or explicitly ref them, they will survive the
67649 destruction of the ui manager.
67650 was found.</doc>
67651         <return-value transfer-ownership="none">
67652           <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
67653           <type name="Widget" c:type="GtkWidget*"/>
67654         </return-value>
67655         <parameters>
67656           <parameter name="path" transfer-ownership="none">
67657             <doc xml:whitespace="preserve">a path</doc>
67658             <type name="utf8" c:type="gchar*"/>
67659           </parameter>
67660         </parameters>
67661       </virtual-method>
67662       <method name="add_ui" c:identifier="gtk_ui_manager_add_ui" version="2.4">
67663         <doc xml:whitespace="preserve">Adds a UI element to the current contents of @manager. 
67664 If @type is %GTK_UI_MANAGER_AUTO, GTK+ inserts a menuitem, toolitem or 
67665 separator if such an element can be inserted at the place determined by 
67666 the place determined by @path.
67667 If @path points to a menuitem or toolitem, the new element will be inserted
67668 before or after this item, depending on @top.</doc>
67669         <return-value transfer-ownership="none">
67670           <type name="none" c:type="void"/>
67671         </return-value>
67672         <parameters>
67673           <parameter name="merge_id" transfer-ownership="none">
67674             <doc xml:whitespace="preserve">the merge id for the merged UI, see gtk_ui_manager_new_merge_id()</doc>
67675             <type name="guint" c:type="guint"/>
67676           </parameter>
67677           <parameter name="path" transfer-ownership="none">
67678             <doc xml:whitespace="preserve">a path</doc>
67679             <type name="utf8" c:type="gchar*"/>
67680           </parameter>
67681           <parameter name="name" transfer-ownership="none">
67682             <doc xml:whitespace="preserve">the name for the added UI element</doc>
67683             <type name="utf8" c:type="gchar*"/>
67684           </parameter>
67685           <parameter name="action" transfer-ownership="none" allow-none="1">
67686             <doc xml:whitespace="preserve">the name of the action to be proxied, or %NULL to add a separator</doc>
67687             <type name="utf8" c:type="gchar*"/>
67688           </parameter>
67689           <parameter name="type" transfer-ownership="none">
67690             <doc xml:whitespace="preserve">the type of UI element to add.</doc>
67691             <type name="UIManagerItemType" c:type="GtkUIManagerItemType"/>
67692           </parameter>
67693           <parameter name="top" transfer-ownership="none">
67694             <doc xml:whitespace="preserve">if %TRUE, the UI element is added before its siblings, otherwise it is added after its siblings.</doc>
67695             <type name="gboolean" c:type="gboolean"/>
67696           </parameter>
67697         </parameters>
67698       </method>
67699       <method name="add_ui_from_file"
67700               c:identifier="gtk_ui_manager_add_ui_from_file"
67701               version="2.4"
67702               throws="1">
67703         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; and 
67704 merges it with the current contents of @manager. 
67705 to unmerge the UI with gtk_ui_manager_remove_ui(). If an error occurred,
67706 the return value is 0.</doc>
67707         <return-value transfer-ownership="none">
67708           <doc xml:whitespace="preserve">The merge id for the merged UI. The merge id can be used</doc>
67709           <type name="guint" c:type="guint"/>
67710         </return-value>
67711         <parameters>
67712           <parameter name="filename" transfer-ownership="none">
67713             <doc xml:whitespace="preserve">the name of the file to parse</doc>
67714             <type name="utf8" c:type="gchar*"/>
67715           </parameter>
67716         </parameters>
67717       </method>
67718       <method name="add_ui_from_string"
67719               c:identifier="gtk_ui_manager_add_ui_from_string"
67720               version="2.4"
67721               throws="1">
67722         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; and 
67723 merges it with the current contents of @manager. An enclosing &amp;lt;ui&amp;gt; 
67724 element is added if it is missing.
67725 to unmerge the UI with gtk_ui_manager_remove_ui(). If an error occurred,
67726 the return value is 0.</doc>
67727         <return-value transfer-ownership="none">
67728           <doc xml:whitespace="preserve">The merge id for the merged UI. The merge id can be used</doc>
67729           <type name="guint" c:type="guint"/>
67730         </return-value>
67731         <parameters>
67732           <parameter name="buffer" transfer-ownership="none">
67733             <doc xml:whitespace="preserve">the string to parse</doc>
67734             <type name="utf8" c:type="gchar*"/>
67735           </parameter>
67736           <parameter name="length" transfer-ownership="none">
67737             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
67738             <type name="glong" c:type="gssize"/>
67739           </parameter>
67740         </parameters>
67741       </method>
67742       <method name="ensure_update"
67743               c:identifier="gtk_ui_manager_ensure_update"
67744               version="2.4">
67745         <doc xml:whitespace="preserve">Makes sure that all pending updates to the UI have been completed.
67746 This may occasionally be necessary, since #GtkUIManager updates the 
67747 UI in an idle function. A typical example where this function is
67748 useful is to enforce that the menubar and toolbar have been added to 
67749 the main window before showing it:
67750 |[
67751 gtk_container_add (GTK_CONTAINER (window), vbox); 
67752 g_signal_connect (merge, "add-widget", 
67753 G_CALLBACK (add_widget), vbox);
67754 gtk_ui_manager_add_ui_from_file (merge, "my-menus");
67755 gtk_ui_manager_add_ui_from_file (merge, "my-toolbars");
67756 gtk_ui_manager_ensure_update (merge);  
67757 gtk_widget_show (window);
67758 ]|</doc>
67759         <return-value transfer-ownership="none">
67760           <type name="none" c:type="void"/>
67761         </return-value>
67762       </method>
67763       <method name="get_accel_group"
67764               c:identifier="gtk_ui_manager_get_accel_group"
67765               version="2.4">
67766         <doc xml:whitespace="preserve">Returns the #GtkAccelGroup associated with @manager.</doc>
67767         <return-value transfer-ownership="none">
67768           <doc xml:whitespace="preserve">the #GtkAccelGroup.</doc>
67769           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
67770         </return-value>
67771       </method>
67772       <method name="get_action"
67773               c:identifier="gtk_ui_manager_get_action"
67774               version="2.4">
67775         <doc xml:whitespace="preserve">Looks up an action by following a path. See gtk_ui_manager_get_widget()
67776 for more information about paths.
67777 or %NULL if no widget was found.</doc>
67778         <return-value transfer-ownership="none">
67779           <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
67780           <type name="Action" c:type="GtkAction*"/>
67781         </return-value>
67782         <parameters>
67783           <parameter name="path" transfer-ownership="none">
67784             <doc xml:whitespace="preserve">a path</doc>
67785             <type name="utf8" c:type="gchar*"/>
67786           </parameter>
67787         </parameters>
67788       </method>
67789       <method name="get_action_groups"
67790               c:identifier="gtk_ui_manager_get_action_groups"
67791               version="2.4">
67792         <doc xml:whitespace="preserve">Returns the list of action groups associated with @manager.
67793 action groups. The list is owned by GTK+
67794 and should not be modified.</doc>
67795         <return-value transfer-ownership="none">
67796           <doc xml:whitespace="preserve">a #GList of</doc>
67797           <type name="GLib.List" c:type="GList*">
67798             <type name="ActionGroup"/>
67799           </type>
67800         </return-value>
67801       </method>
67802       <method name="get_add_tearoffs"
67803               c:identifier="gtk_ui_manager_get_add_tearoffs"
67804               version="2.4">
67805         <doc xml:whitespace="preserve">Returns whether menus generated by this #GtkUIManager
67806 will have tearoff menu items.</doc>
67807         <return-value transfer-ownership="none">
67808           <doc xml:whitespace="preserve">whether tearoff menu items are added</doc>
67809           <type name="gboolean" c:type="gboolean"/>
67810         </return-value>
67811       </method>
67812       <method name="get_toplevels"
67813               c:identifier="gtk_ui_manager_get_toplevels"
67814               version="2.4">
67815         <doc xml:whitespace="preserve">Obtains a list of all toplevel widgets of the requested types.
67816 all toplevel widgets of the requested types.  Free the returned list with g_slist_free().</doc>
67817         <return-value transfer-ownership="container">
67818           <doc xml:whitespace="preserve">a newly-allocated #GSList of</doc>
67819           <type name="GLib.SList" c:type="GSList*">
67820             <type name="Widget"/>
67821           </type>
67822         </return-value>
67823         <parameters>
67824           <parameter name="types" transfer-ownership="none">
67825             <doc xml:whitespace="preserve">specifies the types of toplevel widgets to include. Allowed types are #GTK_UI_MANAGER_MENUBAR, #GTK_UI_MANAGER_TOOLBAR and #GTK_UI_MANAGER_POPUP.</doc>
67826             <type name="UIManagerItemType" c:type="GtkUIManagerItemType"/>
67827           </parameter>
67828         </parameters>
67829       </method>
67830       <method name="get_ui" c:identifier="gtk_ui_manager_get_ui" version="2.4">
67831         <doc xml:whitespace="preserve">Creates a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; of the merged UI.
67832 the merged UI.</doc>
67833         <return-value transfer-ownership="full">
67834           <doc xml:whitespace="preserve">A newly allocated string containing an XML representation of</doc>
67835           <type name="utf8" c:type="gchar*"/>
67836         </return-value>
67837       </method>
67838       <method name="get_widget"
67839               c:identifier="gtk_ui_manager_get_widget"
67840               version="2.4">
67841         <doc xml:whitespace="preserve">Looks up a widget by following a path. 
67842 The path consists of the names specified in the XML description of the UI. 
67843 separated by '/'. Elements which don't have a name or action attribute in 
67844 the XML (e.g. &amp;lt;popup&amp;gt;) can be addressed by their XML element name 
67845 (e.g. "popup"). The root element ("/ui") can be omitted in the path.
67846 Note that the widget found by following a path that ends in a &amp;lt;menu&amp;gt;
67847 element is the menuitem to which the menu is attached, not the menu itmanager.
67848 Also note that the widgets constructed by a ui manager are not tied to 
67849 the lifecycle of the ui manager. If you add the widgets returned by this 
67850 function to some container or explicitly ref them, they will survive the
67851 destruction of the ui manager.
67852 was found.</doc>
67853         <return-value transfer-ownership="none">
67854           <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
67855           <type name="Widget" c:type="GtkWidget*"/>
67856         </return-value>
67857         <parameters>
67858           <parameter name="path" transfer-ownership="none">
67859             <doc xml:whitespace="preserve">a path</doc>
67860             <type name="utf8" c:type="gchar*"/>
67861           </parameter>
67862         </parameters>
67863       </method>
67864       <method name="insert_action_group"
67865               c:identifier="gtk_ui_manager_insert_action_group"
67866               version="2.4">
67867         <doc xml:whitespace="preserve">Inserts an action group into the list of action groups associated 
67868 with @manager. Actions in earlier groups hide actions with the same 
67869 name in later groups.</doc>
67870         <return-value transfer-ownership="none">
67871           <type name="none" c:type="void"/>
67872         </return-value>
67873         <parameters>
67874           <parameter name="action_group" transfer-ownership="none">
67875             <doc xml:whitespace="preserve">the action group to be inserted</doc>
67876             <type name="ActionGroup" c:type="GtkActionGroup*"/>
67877           </parameter>
67878           <parameter name="pos" transfer-ownership="none">
67879             <doc xml:whitespace="preserve">the position at which the group will be inserted.</doc>
67880             <type name="gint" c:type="gint"/>
67881           </parameter>
67882         </parameters>
67883       </method>
67884       <method name="new_merge_id"
67885               c:identifier="gtk_ui_manager_new_merge_id"
67886               version="2.4">
67887         <doc xml:whitespace="preserve">Returns an unused merge id, suitable for use with 
67888 gtk_ui_manager_add_ui().</doc>
67889         <return-value transfer-ownership="none">
67890           <doc xml:whitespace="preserve">an unused merge id.</doc>
67891           <type name="guint" c:type="guint"/>
67892         </return-value>
67893       </method>
67894       <method name="remove_action_group"
67895               c:identifier="gtk_ui_manager_remove_action_group"
67896               version="2.4">
67897         <doc xml:whitespace="preserve">Removes an action group from the list of action groups associated 
67898 with @manager.</doc>
67899         <return-value transfer-ownership="none">
67900           <type name="none" c:type="void"/>
67901         </return-value>
67902         <parameters>
67903           <parameter name="action_group" transfer-ownership="none">
67904             <doc xml:whitespace="preserve">the action group to be removed</doc>
67905             <type name="ActionGroup" c:type="GtkActionGroup*"/>
67906           </parameter>
67907         </parameters>
67908       </method>
67909       <method name="remove_ui"
67910               c:identifier="gtk_ui_manager_remove_ui"
67911               version="2.4">
67912         <doc xml:whitespace="preserve">Unmerges the part of @manager&lt;!-- --&gt;s content identified by @merge_id.</doc>
67913         <return-value transfer-ownership="none">
67914           <type name="none" c:type="void"/>
67915         </return-value>
67916         <parameters>
67917           <parameter name="merge_id" transfer-ownership="none">
67918             <doc xml:whitespace="preserve">a merge id as returned by gtk_ui_manager_add_ui_from_string()</doc>
67919             <type name="guint" c:type="guint"/>
67920           </parameter>
67921         </parameters>
67922       </method>
67923       <method name="set_add_tearoffs"
67924               c:identifier="gtk_ui_manager_set_add_tearoffs"
67925               version="2.4">
67926         <doc xml:whitespace="preserve">Sets the "add_tearoffs" property, which controls whether menus 
67927 generated by this #GtkUIManager will have tearoff menu items. 
67928 Note that this only affects regular menus. Generated popup 
67929 menus never have tearoff menu items.</doc>
67930         <return-value transfer-ownership="none">
67931           <type name="none" c:type="void"/>
67932         </return-value>
67933         <parameters>
67934           <parameter name="add_tearoffs" transfer-ownership="none">
67935             <doc xml:whitespace="preserve">whether tearoff menu items are added</doc>
67936             <type name="gboolean" c:type="gboolean"/>
67937           </parameter>
67938         </parameters>
67939       </method>
67940       <property name="add-tearoffs"
67941                 version="2.4"
67942                 writable="1"
67943                 transfer-ownership="none">
67944         <doc xml:whitespace="preserve">The "add-tearoffs" property controls whether generated menus 
67945 have tearoff menu items. 
67946 Note that this only affects regular menus. Generated popup 
67947 menus never have tearoff menu items.</doc>
67948         <type name="gboolean"/>
67949       </property>
67950       <property name="ui" transfer-ownership="none">
67951         <type name="utf8"/>
67952       </property>
67953       <field name="parent">
67954         <type name="GObject.Object" c:type="GObject"/>
67955       </field>
67956       <field name="private_data">
67957         <type name="UIManagerPrivate" c:type="GtkUIManagerPrivate*"/>
67958       </field>
67959       <glib:signal name="actions-changed" version="2.4">
67960         <doc xml:whitespace="preserve">The ::actions-changed signal is emitted whenever the set of actions
67961 changes.</doc>
67962         <return-value transfer-ownership="none">
67963           <type name="none"/>
67964         </return-value>
67965       </glib:signal>
67966       <glib:signal name="add-widget" version="2.4">
67967         <doc xml:whitespace="preserve">The ::add-widget signal is emitted for each generated menubar and toolbar.
67968 It is not emitted for generated popup menus, which can be obtained by 
67969 gtk_ui_manager_get_widget().</doc>
67970         <return-value transfer-ownership="none">
67971           <type name="none"/>
67972         </return-value>
67973         <parameters>
67974           <parameter name="object" transfer-ownership="none">
67975             <doc xml:whitespace="preserve">the added widget</doc>
67976             <type name="Widget"/>
67977           </parameter>
67978         </parameters>
67979       </glib:signal>
67980       <glib:signal name="connect-proxy" version="2.4">
67981         <doc xml:whitespace="preserve">The ::connect-proxy signal is emitted after connecting a proxy to
67982 an action in the group. 
67983 This is intended for simple customizations for which a custom action
67984 class would be too clumsy, e.g. showing tooltips for menuitems in the
67985 statusbar.</doc>
67986         <return-value transfer-ownership="none">
67987           <type name="none"/>
67988         </return-value>
67989         <parameters>
67990           <parameter name="object" transfer-ownership="none">
67991             <doc xml:whitespace="preserve">the action</doc>
67992             <type name="Action"/>
67993           </parameter>
67994           <parameter name="p0" transfer-ownership="none">
67995             <doc xml:whitespace="preserve">the proxy</doc>
67996             <type name="Widget"/>
67997           </parameter>
67998         </parameters>
67999       </glib:signal>
68000       <glib:signal name="disconnect-proxy" version="2.4">
68001         <doc xml:whitespace="preserve">The ::disconnect-proxy signal is emitted after disconnecting a proxy
68002 from an action in the group.</doc>
68003         <return-value transfer-ownership="none">
68004           <type name="none"/>
68005         </return-value>
68006         <parameters>
68007           <parameter name="object" transfer-ownership="none">
68008             <doc xml:whitespace="preserve">the action</doc>
68009             <type name="Action"/>
68010           </parameter>
68011           <parameter name="p0" transfer-ownership="none">
68012             <doc xml:whitespace="preserve">the proxy</doc>
68013             <type name="Widget"/>
68014           </parameter>
68015         </parameters>
68016       </glib:signal>
68017       <glib:signal name="post-activate" version="2.4">
68018         <doc xml:whitespace="preserve">The ::post-activate signal is emitted just after the @action
68019 is activated.
68020 This is intended for applications to get notification
68021 just after any action is activated.</doc>
68022         <return-value transfer-ownership="none">
68023           <type name="none"/>
68024         </return-value>
68025         <parameters>
68026           <parameter name="object" transfer-ownership="none">
68027             <doc xml:whitespace="preserve">the action</doc>
68028             <type name="Action"/>
68029           </parameter>
68030         </parameters>
68031       </glib:signal>
68032       <glib:signal name="pre-activate" version="2.4">
68033         <doc xml:whitespace="preserve">The ::pre-activate signal is emitted just before the @action
68034 is activated.
68035 This is intended for applications to get notification
68036 just before any action is activated.</doc>
68037         <return-value transfer-ownership="none">
68038           <type name="none"/>
68039         </return-value>
68040         <parameters>
68041           <parameter name="object" transfer-ownership="none">
68042             <doc xml:whitespace="preserve">the action</doc>
68043             <type name="Action"/>
68044           </parameter>
68045         </parameters>
68046       </glib:signal>
68047     </class>
68048     <record name="UIManagerClass"
68049             c:type="GtkUIManagerClass"
68050             glib:is-gtype-struct-for="UIManager">
68051       <field name="parent_class">
68052         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
68053       </field>
68054       <field name="add_widget">
68055         <callback name="add_widget">
68056           <return-value transfer-ownership="none">
68057             <type name="none" c:type="void"/>
68058           </return-value>
68059           <parameters>
68060             <parameter name="manager" transfer-ownership="none">
68061               <type name="UIManager" c:type="GtkUIManager*"/>
68062             </parameter>
68063             <parameter name="widget" transfer-ownership="none">
68064               <type name="Widget" c:type="GtkWidget*"/>
68065             </parameter>
68066           </parameters>
68067         </callback>
68068       </field>
68069       <field name="actions_changed">
68070         <callback name="actions_changed">
68071           <return-value transfer-ownership="none">
68072             <type name="none" c:type="void"/>
68073           </return-value>
68074           <parameters>
68075             <parameter name="manager" transfer-ownership="none">
68076               <type name="UIManager" c:type="GtkUIManager*"/>
68077             </parameter>
68078           </parameters>
68079         </callback>
68080       </field>
68081       <field name="connect_proxy">
68082         <callback name="connect_proxy">
68083           <return-value transfer-ownership="none">
68084             <type name="none" c:type="void"/>
68085           </return-value>
68086           <parameters>
68087             <parameter name="manager" transfer-ownership="none">
68088               <type name="UIManager" c:type="GtkUIManager*"/>
68089             </parameter>
68090             <parameter name="action" transfer-ownership="none">
68091               <type name="Action" c:type="GtkAction*"/>
68092             </parameter>
68093             <parameter name="proxy" transfer-ownership="none">
68094               <type name="Widget" c:type="GtkWidget*"/>
68095             </parameter>
68096           </parameters>
68097         </callback>
68098       </field>
68099       <field name="disconnect_proxy">
68100         <callback name="disconnect_proxy">
68101           <return-value transfer-ownership="none">
68102             <type name="none" c:type="void"/>
68103           </return-value>
68104           <parameters>
68105             <parameter name="manager" transfer-ownership="none">
68106               <type name="UIManager" c:type="GtkUIManager*"/>
68107             </parameter>
68108             <parameter name="action" transfer-ownership="none">
68109               <type name="Action" c:type="GtkAction*"/>
68110             </parameter>
68111             <parameter name="proxy" transfer-ownership="none">
68112               <type name="Widget" c:type="GtkWidget*"/>
68113             </parameter>
68114           </parameters>
68115         </callback>
68116       </field>
68117       <field name="pre_activate">
68118         <callback name="pre_activate">
68119           <return-value transfer-ownership="none">
68120             <type name="none" c:type="void"/>
68121           </return-value>
68122           <parameters>
68123             <parameter name="manager" transfer-ownership="none">
68124               <type name="UIManager" c:type="GtkUIManager*"/>
68125             </parameter>
68126             <parameter name="action" transfer-ownership="none">
68127               <type name="Action" c:type="GtkAction*"/>
68128             </parameter>
68129           </parameters>
68130         </callback>
68131       </field>
68132       <field name="post_activate">
68133         <callback name="post_activate">
68134           <return-value transfer-ownership="none">
68135             <type name="none" c:type="void"/>
68136           </return-value>
68137           <parameters>
68138             <parameter name="manager" transfer-ownership="none">
68139               <type name="UIManager" c:type="GtkUIManager*"/>
68140             </parameter>
68141             <parameter name="action" transfer-ownership="none">
68142               <type name="Action" c:type="GtkAction*"/>
68143             </parameter>
68144           </parameters>
68145         </callback>
68146       </field>
68147       <field name="get_widget">
68148         <callback name="get_widget">
68149           <return-value transfer-ownership="none">
68150             <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
68151             <type name="Widget" c:type="GtkWidget*"/>
68152           </return-value>
68153           <parameters>
68154             <parameter name="manager" transfer-ownership="none">
68155               <type name="UIManager" c:type="GtkUIManager*"/>
68156             </parameter>
68157             <parameter name="path" transfer-ownership="none">
68158               <doc xml:whitespace="preserve">a path</doc>
68159               <type name="utf8" c:type="gchar*"/>
68160             </parameter>
68161           </parameters>
68162         </callback>
68163       </field>
68164       <field name="get_action">
68165         <callback name="get_action">
68166           <return-value transfer-ownership="none">
68167             <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
68168             <type name="Action" c:type="GtkAction*"/>
68169           </return-value>
68170           <parameters>
68171             <parameter name="manager" transfer-ownership="none">
68172               <type name="UIManager" c:type="GtkUIManager*"/>
68173             </parameter>
68174             <parameter name="path" transfer-ownership="none">
68175               <doc xml:whitespace="preserve">a path</doc>
68176               <type name="utf8" c:type="gchar*"/>
68177             </parameter>
68178           </parameters>
68179         </callback>
68180       </field>
68181       <field name="_gtk_reserved1" introspectable="0">
68182         <callback name="_gtk_reserved1">
68183           <return-value transfer-ownership="none">
68184             <type name="none" c:type="void"/>
68185           </return-value>
68186         </callback>
68187       </field>
68188       <field name="_gtk_reserved2" introspectable="0">
68189         <callback name="_gtk_reserved2">
68190           <return-value transfer-ownership="none">
68191             <type name="none" c:type="void"/>
68192           </return-value>
68193         </callback>
68194       </field>
68195     </record>
68196     <bitfield name="UIManagerItemType"
68197               glib:type-name="GtkUIManagerItemType"
68198               glib:get-type="gtk_ui_manager_item_type_get_type"
68199               c:type="GtkUIManagerItemType">
68200       <member name="auto"
68201               value="0"
68202               c:identifier="GTK_UI_MANAGER_AUTO"
68203               glib:nick="auto"/>
68204       <member name="menubar"
68205               value="1"
68206               c:identifier="GTK_UI_MANAGER_MENUBAR"
68207               glib:nick="menubar"/>
68208       <member name="menu"
68209               value="2"
68210               c:identifier="GTK_UI_MANAGER_MENU"
68211               glib:nick="menu"/>
68212       <member name="toolbar"
68213               value="4"
68214               c:identifier="GTK_UI_MANAGER_TOOLBAR"
68215               glib:nick="toolbar"/>
68216       <member name="placeholder"
68217               value="8"
68218               c:identifier="GTK_UI_MANAGER_PLACEHOLDER"
68219               glib:nick="placeholder"/>
68220       <member name="popup"
68221               value="16"
68222               c:identifier="GTK_UI_MANAGER_POPUP"
68223               glib:nick="popup"/>
68224       <member name="menuitem"
68225               value="32"
68226               c:identifier="GTK_UI_MANAGER_MENUITEM"
68227               glib:nick="menuitem"/>
68228       <member name="toolitem"
68229               value="64"
68230               c:identifier="GTK_UI_MANAGER_TOOLITEM"
68231               glib:nick="toolitem"/>
68232       <member name="separator"
68233               value="128"
68234               c:identifier="GTK_UI_MANAGER_SEPARATOR"
68235               glib:nick="separator"/>
68236       <member name="accelerator"
68237               value="256"
68238               c:identifier="GTK_UI_MANAGER_ACCELERATOR"
68239               glib:nick="accelerator"/>
68240       <member name="popup_with_accels"
68241               value="512"
68242               c:identifier="GTK_UI_MANAGER_POPUP_WITH_ACCELS"
68243               glib:nick="popup-with-accels"/>
68244     </bitfield>
68245     <record name="UIManagerPrivate" c:type="GtkUIManagerPrivate" disguised="1">
68246     </record>
68247     <enumeration name="Unit"
68248                  glib:type-name="GtkUnit"
68249                  glib:get-type="gtk_unit_get_type"
68250                  c:type="GtkUnit">
68251       <member name="pixel"
68252               value="0"
68253               c:identifier="GTK_UNIT_PIXEL"
68254               glib:nick="pixel"/>
68255       <member name="points"
68256               value="1"
68257               c:identifier="GTK_UNIT_POINTS"
68258               glib:nick="points"/>
68259       <member name="inch"
68260               value="2"
68261               c:identifier="GTK_UNIT_INCH"
68262               glib:nick="inch"/>
68263       <member name="mm" value="3" c:identifier="GTK_UNIT_MM" glib:nick="mm"/>
68264     </enumeration>
68265     <enumeration name="UpdateType"
68266                  glib:type-name="GtkUpdateType"
68267                  glib:get-type="gtk_update_type_get_type"
68268                  c:type="GtkUpdateType">
68269       <member name="continuous"
68270               value="0"
68271               c:identifier="GTK_UPDATE_CONTINUOUS"
68272               glib:nick="continuous"/>
68273       <member name="discontinuous"
68274               value="1"
68275               c:identifier="GTK_UPDATE_DISCONTINUOUS"
68276               glib:nick="discontinuous"/>
68277       <member name="delayed"
68278               value="2"
68279               c:identifier="GTK_UPDATE_DELAYED"
68280               glib:nick="delayed"/>
68281     </enumeration>
68282     <class name="VBox"
68283            c:symbol-prefix="vbox"
68284            c:type="GtkVBox"
68285            parent="Box"
68286            glib:type-name="GtkVBox"
68287            glib:get-type="gtk_vbox_get_type"
68288            glib:type-struct="VBoxClass">
68289       <implements name="Atk.ImplementorIface"/>
68290       <implements name="Buildable"/>
68291       <implements name="Orientable"/>
68292       <implements name="SizeRequest"/>
68293       <constructor name="new" c:identifier="gtk_vbox_new">
68294         <doc xml:whitespace="preserve">Creates a new #GtkVBox.</doc>
68295         <return-value transfer-ownership="none">
68296           <doc xml:whitespace="preserve">a new #GtkVBox.</doc>
68297           <type name="Widget" c:type="GtkWidget*"/>
68298         </return-value>
68299         <parameters>
68300           <parameter name="homogeneous" transfer-ownership="none">
68301             <doc xml:whitespace="preserve">%TRUE if all children are to be given equal space allotments.</doc>
68302             <type name="gboolean" c:type="gboolean"/>
68303           </parameter>
68304           <parameter name="spacing" transfer-ownership="none">
68305             <doc xml:whitespace="preserve">the number of pixels to place by default between children.</doc>
68306             <type name="gint" c:type="gint"/>
68307           </parameter>
68308         </parameters>
68309       </constructor>
68310       <field name="box">
68311         <type name="Box" c:type="GtkBox"/>
68312       </field>
68313     </class>
68314     <record name="VBoxClass"
68315             c:type="GtkVBoxClass"
68316             glib:is-gtype-struct-for="VBox">
68317       <field name="parent_class">
68318         <type name="BoxClass" c:type="GtkBoxClass"/>
68319       </field>
68320     </record>
68321     <class name="VButtonBox"
68322            c:symbol-prefix="vbutton_box"
68323            c:type="GtkVButtonBox"
68324            parent="ButtonBox"
68325            glib:type-name="GtkVButtonBox"
68326            glib:get-type="gtk_vbutton_box_get_type"
68327            glib:type-struct="VButtonBoxClass">
68328       <implements name="Atk.ImplementorIface"/>
68329       <implements name="Buildable"/>
68330       <implements name="Orientable"/>
68331       <implements name="SizeRequest"/>
68332       <constructor name="new" c:identifier="gtk_vbutton_box_new">
68333         <doc xml:whitespace="preserve">Creates a new vertical button box.</doc>
68334         <return-value transfer-ownership="none">
68335           <doc xml:whitespace="preserve">a new button box #GtkWidget.</doc>
68336           <type name="Widget" c:type="GtkWidget*"/>
68337         </return-value>
68338       </constructor>
68339       <field name="button_box">
68340         <type name="ButtonBox" c:type="GtkButtonBox"/>
68341       </field>
68342     </class>
68343     <record name="VButtonBoxClass"
68344             c:type="GtkVButtonBoxClass"
68345             glib:is-gtype-struct-for="VButtonBox">
68346       <field name="parent_class">
68347         <type name="ButtonBoxClass" c:type="GtkButtonBoxClass"/>
68348       </field>
68349     </record>
68350     <class name="VPaned"
68351            c:symbol-prefix="vpaned"
68352            c:type="GtkVPaned"
68353            parent="Paned"
68354            glib:type-name="GtkVPaned"
68355            glib:get-type="gtk_vpaned_get_type"
68356            glib:type-struct="VPanedClass">
68357       <implements name="Atk.ImplementorIface"/>
68358       <implements name="Buildable"/>
68359       <implements name="Orientable"/>
68360       <implements name="SizeRequest"/>
68361       <constructor name="new" c:identifier="gtk_vpaned_new">
68362         <doc xml:whitespace="preserve">Create a new #GtkVPaned</doc>
68363         <return-value transfer-ownership="none">
68364           <doc xml:whitespace="preserve">the new #GtkVPaned</doc>
68365           <type name="Widget" c:type="GtkWidget*"/>
68366         </return-value>
68367       </constructor>
68368       <field name="paned">
68369         <type name="Paned" c:type="GtkPaned"/>
68370       </field>
68371     </class>
68372     <record name="VPanedClass"
68373             c:type="GtkVPanedClass"
68374             glib:is-gtype-struct-for="VPaned">
68375       <field name="parent_class">
68376         <type name="PanedClass" c:type="GtkPanedClass"/>
68377       </field>
68378     </record>
68379     <class name="VRuler"
68380            c:symbol-prefix="vruler"
68381            c:type="GtkVRuler"
68382            parent="Ruler"
68383            glib:type-name="GtkVRuler"
68384            glib:get-type="gtk_vruler_get_type"
68385            glib:type-struct="VRulerClass">
68386       <implements name="Atk.ImplementorIface"/>
68387       <implements name="Buildable"/>
68388       <implements name="Orientable"/>
68389       <implements name="SizeRequest"/>
68390       <constructor name="new" c:identifier="gtk_vruler_new">
68391         <doc xml:whitespace="preserve">Creates a new vertical ruler</doc>
68392         <return-value transfer-ownership="none">
68393           <doc xml:whitespace="preserve">a new #GtkVRuler.</doc>
68394           <type name="Widget" c:type="GtkWidget*"/>
68395         </return-value>
68396       </constructor>
68397       <field name="ruler">
68398         <type name="Ruler" c:type="GtkRuler"/>
68399       </field>
68400     </class>
68401     <record name="VRulerClass"
68402             c:type="GtkVRulerClass"
68403             glib:is-gtype-struct-for="VRuler">
68404       <field name="parent_class">
68405         <type name="RulerClass" c:type="GtkRulerClass"/>
68406       </field>
68407     </record>
68408     <class name="VScale"
68409            c:symbol-prefix="vscale"
68410            c:type="GtkVScale"
68411            parent="Scale"
68412            glib:type-name="GtkVScale"
68413            glib:get-type="gtk_vscale_get_type"
68414            glib:type-struct="VScaleClass">
68415       <doc xml:whitespace="preserve">The #GtkVScale struct contains private data only, and
68416 should be accessed using the functions below.</doc>
68417       <implements name="Atk.ImplementorIface"/>
68418       <implements name="Buildable"/>
68419       <implements name="Orientable"/>
68420       <implements name="SizeRequest"/>
68421       <constructor name="new" c:identifier="gtk_vscale_new">
68422         <doc xml:whitespace="preserve">Creates a new #GtkVScale.</doc>
68423         <return-value transfer-ownership="none">
68424           <doc xml:whitespace="preserve">a new #GtkVScale.</doc>
68425           <type name="Widget" c:type="GtkWidget*"/>
68426         </return-value>
68427         <parameters>
68428           <parameter name="adjustment" transfer-ownership="none">
68429             <doc xml:whitespace="preserve">the #GtkAdjustment which sets the range of the scale.</doc>
68430             <type name="Adjustment" c:type="GtkAdjustment*"/>
68431           </parameter>
68432         </parameters>
68433       </constructor>
68434       <constructor name="new_with_range"
68435                    c:identifier="gtk_vscale_new_with_range">
68436         <doc xml:whitespace="preserve">Creates a new vertical scale widget that lets the user input a
68437 number between @min and @max (including @min and @max) with the
68438 increment @step.  @step must be nonzero; it's the distance the
68439 slider moves when using the arrow keys to adjust the scale value.
68440 Note that the way in which the precision is derived works best if @step
68441 is a power of ten. If the resulting precision is not suitable for your
68442 needs, use gtk_scale_set_digits() to correct it.</doc>
68443         <return-value transfer-ownership="none">
68444           <doc xml:whitespace="preserve">a new #GtkVScale</doc>
68445           <type name="Widget" c:type="GtkWidget*"/>
68446         </return-value>
68447         <parameters>
68448           <parameter name="min" transfer-ownership="none">
68449             <doc xml:whitespace="preserve">minimum value</doc>
68450             <type name="gdouble" c:type="gdouble"/>
68451           </parameter>
68452           <parameter name="max" transfer-ownership="none">
68453             <doc xml:whitespace="preserve">maximum value</doc>
68454             <type name="gdouble" c:type="gdouble"/>
68455           </parameter>
68456           <parameter name="step" transfer-ownership="none">
68457             <doc xml:whitespace="preserve">step increment (tick size) used with keyboard shortcuts</doc>
68458             <type name="gdouble" c:type="gdouble"/>
68459           </parameter>
68460         </parameters>
68461       </constructor>
68462       <field name="scale">
68463         <type name="Scale" c:type="GtkScale"/>
68464       </field>
68465     </class>
68466     <record name="VScaleClass"
68467             c:type="GtkVScaleClass"
68468             glib:is-gtype-struct-for="VScale">
68469       <field name="parent_class">
68470         <type name="ScaleClass" c:type="GtkScaleClass"/>
68471       </field>
68472     </record>
68473     <class name="VScrollbar"
68474            c:symbol-prefix="vscrollbar"
68475            c:type="GtkVScrollbar"
68476            parent="Scrollbar"
68477            glib:type-name="GtkVScrollbar"
68478            glib:get-type="gtk_vscrollbar_get_type"
68479            glib:type-struct="VScrollbarClass">
68480       <doc xml:whitespace="preserve">The #GtkVScrollbar struct contains private data and should be accessed
68481 using the functions below.</doc>
68482       <implements name="Atk.ImplementorIface"/>
68483       <implements name="Buildable"/>
68484       <implements name="Orientable"/>
68485       <implements name="SizeRequest"/>
68486       <constructor name="new" c:identifier="gtk_vscrollbar_new">
68487         <doc xml:whitespace="preserve">Creates a new vertical scrollbar.</doc>
68488         <return-value transfer-ownership="none">
68489           <doc xml:whitespace="preserve">the new #GtkVScrollbar</doc>
68490           <type name="Widget" c:type="GtkWidget*"/>
68491         </return-value>
68492         <parameters>
68493           <parameter name="adjustment"
68494                      transfer-ownership="none"
68495                      allow-none="1">
68496             <doc xml:whitespace="preserve">the #GtkAdjustment to use, or %NULL to create a new adjustment</doc>
68497             <type name="Adjustment" c:type="GtkAdjustment*"/>
68498           </parameter>
68499         </parameters>
68500       </constructor>
68501       <field name="scrollbar">
68502         <type name="Scrollbar" c:type="GtkScrollbar"/>
68503       </field>
68504     </class>
68505     <record name="VScrollbarClass"
68506             c:type="GtkVScrollbarClass"
68507             glib:is-gtype-struct-for="VScrollbar">
68508       <field name="parent_class">
68509         <type name="ScrollbarClass" c:type="GtkScrollbarClass"/>
68510       </field>
68511     </record>
68512     <class name="VSeparator"
68513            c:symbol-prefix="vseparator"
68514            c:type="GtkVSeparator"
68515            parent="Separator"
68516            glib:type-name="GtkVSeparator"
68517            glib:get-type="gtk_vseparator_get_type"
68518            glib:type-struct="VSeparatorClass">
68519       <doc xml:whitespace="preserve">The #GtkVSeparator struct contains private data only, and
68520 should be accessed using the functions below.</doc>
68521       <implements name="Atk.ImplementorIface"/>
68522       <implements name="Buildable"/>
68523       <implements name="Orientable"/>
68524       <implements name="SizeRequest"/>
68525       <constructor name="new" c:identifier="gtk_vseparator_new">
68526         <doc xml:whitespace="preserve">Creates a new #GtkVSeparator.</doc>
68527         <return-value transfer-ownership="none">
68528           <doc xml:whitespace="preserve">a new #GtkVSeparator.</doc>
68529           <type name="Widget" c:type="GtkWidget*"/>
68530         </return-value>
68531       </constructor>
68532       <field name="separator">
68533         <type name="Separator" c:type="GtkSeparator"/>
68534       </field>
68535     </class>
68536     <record name="VSeparatorClass"
68537             c:type="GtkVSeparatorClass"
68538             glib:is-gtype-struct-for="VSeparator">
68539       <field name="parent_class">
68540         <type name="SeparatorClass" c:type="GtkSeparatorClass"/>
68541       </field>
68542     </record>
68543     <class name="Viewport"
68544            c:symbol-prefix="viewport"
68545            c:type="GtkViewport"
68546            parent="Bin"
68547            glib:type-name="GtkViewport"
68548            glib:get-type="gtk_viewport_get_type"
68549            glib:type-struct="ViewportClass">
68550       <implements name="Atk.ImplementorIface"/>
68551       <implements name="Buildable"/>
68552       <implements name="SizeRequest"/>
68553       <constructor name="new" c:identifier="gtk_viewport_new">
68554         <doc xml:whitespace="preserve">Creates a new #GtkViewport with the given adjustments.</doc>
68555         <return-value transfer-ownership="none">
68556           <doc xml:whitespace="preserve">a new #GtkViewport.</doc>
68557           <type name="Widget" c:type="GtkWidget*"/>
68558         </return-value>
68559         <parameters>
68560           <parameter name="hadjustment" transfer-ownership="none">
68561             <doc xml:whitespace="preserve">horizontal adjustment.</doc>
68562             <type name="Adjustment" c:type="GtkAdjustment*"/>
68563           </parameter>
68564           <parameter name="vadjustment" transfer-ownership="none">
68565             <doc xml:whitespace="preserve">vertical adjustment.</doc>
68566             <type name="Adjustment" c:type="GtkAdjustment*"/>
68567           </parameter>
68568         </parameters>
68569       </constructor>
68570       <method name="get_bin_window"
68571               c:identifier="gtk_viewport_get_bin_window"
68572               version="2.20">
68573         <doc xml:whitespace="preserve">Gets the bin window of the #GtkViewport.</doc>
68574         <return-value transfer-ownership="none">
68575           <doc xml:whitespace="preserve">a #GdkWindow</doc>
68576           <type name="Gdk.Window" c:type="GdkWindow*"/>
68577         </return-value>
68578       </method>
68579       <method name="get_hadjustment"
68580               c:identifier="gtk_viewport_get_hadjustment">
68581         <doc xml:whitespace="preserve">Returns the horizontal adjustment of the viewport.</doc>
68582         <return-value transfer-ownership="none">
68583           <doc xml:whitespace="preserve">the horizontal adjustment of @viewport.</doc>
68584           <type name="Adjustment" c:type="GtkAdjustment*"/>
68585         </return-value>
68586       </method>
68587       <method name="get_shadow_type"
68588               c:identifier="gtk_viewport_get_shadow_type">
68589         <doc xml:whitespace="preserve">Gets the shadow type of the #GtkViewport. See
68590 gtk_viewport_set_shadow_type().</doc>
68591         <return-value transfer-ownership="none">
68592           <doc xml:whitespace="preserve">the shadow type</doc>
68593           <type name="ShadowType" c:type="GtkShadowType"/>
68594         </return-value>
68595       </method>
68596       <method name="get_vadjustment"
68597               c:identifier="gtk_viewport_get_vadjustment">
68598         <doc xml:whitespace="preserve">Returns the vertical adjustment of the viewport.</doc>
68599         <return-value transfer-ownership="none">
68600           <doc xml:whitespace="preserve">the vertical adjustment of @viewport.</doc>
68601           <type name="Adjustment" c:type="GtkAdjustment*"/>
68602         </return-value>
68603       </method>
68604       <method name="get_view_window"
68605               c:identifier="gtk_viewport_get_view_window"
68606               version="2.22">
68607         <doc xml:whitespace="preserve">Gets the view window of the #GtkViewport.</doc>
68608         <return-value transfer-ownership="none">
68609           <doc xml:whitespace="preserve">a #GdkWindow</doc>
68610           <type name="Gdk.Window" c:type="GdkWindow*"/>
68611         </return-value>
68612       </method>
68613       <method name="set_hadjustment"
68614               c:identifier="gtk_viewport_set_hadjustment">
68615         <doc xml:whitespace="preserve">Sets the horizontal adjustment of the viewport.</doc>
68616         <return-value transfer-ownership="none">
68617           <type name="none" c:type="void"/>
68618         </return-value>
68619         <parameters>
68620           <parameter name="adjustment"
68621                      transfer-ownership="none"
68622                      allow-none="1">
68623             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
68624             <type name="Adjustment" c:type="GtkAdjustment*"/>
68625           </parameter>
68626         </parameters>
68627       </method>
68628       <method name="set_shadow_type"
68629               c:identifier="gtk_viewport_set_shadow_type">
68630         <return-value transfer-ownership="none">
68631           <type name="none" c:type="void"/>
68632         </return-value>
68633         <parameters>
68634           <parameter name="type" transfer-ownership="none">
68635             <type name="ShadowType" c:type="GtkShadowType"/>
68636           </parameter>
68637         </parameters>
68638       </method>
68639       <method name="set_vadjustment"
68640               c:identifier="gtk_viewport_set_vadjustment">
68641         <doc xml:whitespace="preserve">Sets the vertical adjustment of the viewport.</doc>
68642         <return-value transfer-ownership="none">
68643           <type name="none" c:type="void"/>
68644         </return-value>
68645         <parameters>
68646           <parameter name="adjustment"
68647                      transfer-ownership="none"
68648                      allow-none="1">
68649             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
68650             <type name="Adjustment" c:type="GtkAdjustment*"/>
68651           </parameter>
68652         </parameters>
68653       </method>
68654       <property name="hadjustment"
68655                 writable="1"
68656                 construct="1"
68657                 transfer-ownership="none">
68658         <type name="Adjustment"/>
68659       </property>
68660       <property name="shadow-type" writable="1" transfer-ownership="none">
68661         <type name="ShadowType"/>
68662       </property>
68663       <property name="vadjustment"
68664                 writable="1"
68665                 construct="1"
68666                 transfer-ownership="none">
68667         <type name="Adjustment"/>
68668       </property>
68669       <field name="bin">
68670         <type name="Bin" c:type="GtkBin"/>
68671       </field>
68672       <field name="priv" readable="0" private="1">
68673         <type name="ViewportPrivate" c:type="GtkViewportPrivate*"/>
68674       </field>
68675       <glib:signal name="set-scroll-adjustments">
68676         <return-value transfer-ownership="none">
68677           <type name="none"/>
68678         </return-value>
68679         <parameters>
68680           <parameter name="object" transfer-ownership="none">
68681             <type name="Adjustment"/>
68682           </parameter>
68683           <parameter name="p0" transfer-ownership="none">
68684             <type name="Adjustment"/>
68685           </parameter>
68686         </parameters>
68687       </glib:signal>
68688     </class>
68689     <record name="ViewportClass"
68690             c:type="GtkViewportClass"
68691             glib:is-gtype-struct-for="Viewport">
68692       <field name="parent_class">
68693         <type name="BinClass" c:type="GtkBinClass"/>
68694       </field>
68695       <field name="set_scroll_adjustments">
68696         <callback name="set_scroll_adjustments">
68697           <return-value transfer-ownership="none">
68698             <type name="none" c:type="void"/>
68699           </return-value>
68700           <parameters>
68701             <parameter name="viewport" transfer-ownership="none">
68702               <type name="Viewport" c:type="GtkViewport*"/>
68703             </parameter>
68704             <parameter name="hadjustment" transfer-ownership="none">
68705               <type name="Adjustment" c:type="GtkAdjustment*"/>
68706             </parameter>
68707             <parameter name="vadjustment" transfer-ownership="none">
68708               <type name="Adjustment" c:type="GtkAdjustment*"/>
68709             </parameter>
68710           </parameters>
68711         </callback>
68712       </field>
68713     </record>
68714     <record name="ViewportPrivate" c:type="GtkViewportPrivate" disguised="1">
68715     </record>
68716     <class name="VolumeButton"
68717            c:symbol-prefix="volume_button"
68718            c:type="GtkVolumeButton"
68719            parent="ScaleButton"
68720            glib:type-name="GtkVolumeButton"
68721            glib:get-type="gtk_volume_button_get_type"
68722            glib:type-struct="VolumeButtonClass">
68723       <implements name="Atk.ImplementorIface"/>
68724       <implements name="Activatable"/>
68725       <implements name="Buildable"/>
68726       <implements name="Orientable"/>
68727       <implements name="SizeRequest"/>
68728       <constructor name="new" c:identifier="gtk_volume_button_new">
68729         <return-value transfer-ownership="none">
68730           <type name="Widget" c:type="GtkWidget*"/>
68731         </return-value>
68732       </constructor>
68733       <field name="parent">
68734         <type name="ScaleButton" c:type="GtkScaleButton"/>
68735       </field>
68736     </class>
68737     <record name="VolumeButtonClass"
68738             c:type="GtkVolumeButtonClass"
68739             glib:is-gtype-struct-for="VolumeButton">
68740       <field name="parent_class">
68741         <type name="ScaleButtonClass" c:type="GtkScaleButtonClass"/>
68742       </field>
68743       <field name="_gtk_reserved1" introspectable="0">
68744         <callback name="_gtk_reserved1">
68745           <return-value transfer-ownership="none">
68746             <type name="none" c:type="void"/>
68747           </return-value>
68748         </callback>
68749       </field>
68750       <field name="_gtk_reserved2" introspectable="0">
68751         <callback name="_gtk_reserved2">
68752           <return-value transfer-ownership="none">
68753             <type name="none" c:type="void"/>
68754           </return-value>
68755         </callback>
68756       </field>
68757       <field name="_gtk_reserved3" introspectable="0">
68758         <callback name="_gtk_reserved3">
68759           <return-value transfer-ownership="none">
68760             <type name="none" c:type="void"/>
68761           </return-value>
68762         </callback>
68763       </field>
68764       <field name="_gtk_reserved4" introspectable="0">
68765         <callback name="_gtk_reserved4">
68766           <return-value transfer-ownership="none">
68767             <type name="none" c:type="void"/>
68768           </return-value>
68769         </callback>
68770       </field>
68771     </record>
68772     <class name="Widget"
68773            c:symbol-prefix="widget"
68774            c:type="GtkWidget"
68775            parent="Object"
68776            abstract="1"
68777            glib:type-name="GtkWidget"
68778            glib:get-type="gtk_widget_get_type"
68779            glib:type-struct="WidgetClass">
68780       <implements name="Atk.ImplementorIface"/>
68781       <implements name="Buildable"/>
68782       <implements name="SizeRequest"/>
68783       <constructor name="new" c:identifier="gtk_widget_new" introspectable="0">
68784         <doc xml:whitespace="preserve">This is a convenience function for creating a widget and setting
68785 its properties in one go. For example you might write:
68786 &lt;literal&gt;gtk_widget_new (GTK_TYPE_LABEL, "label", "Hello World", "xalign",
68787 0.0, NULL)&lt;/literal&gt; to create a left-aligned label. Equivalent to
68788 g_object_new(), but returns a widget so you don't have to
68789 cast the object yourself.</doc>
68790         <return-value transfer-ownership="none">
68791           <doc xml:whitespace="preserve">a new #GtkWidget of type @widget_type</doc>
68792           <type name="Widget" c:type="GtkWidget*"/>
68793         </return-value>
68794         <parameters>
68795           <parameter name="type" transfer-ownership="none">
68796             <doc xml:whitespace="preserve">type ID of the widget to create</doc>
68797             <type name="GType" c:type="GType"/>
68798           </parameter>
68799           <parameter name="first_property_name" transfer-ownership="none">
68800             <doc xml:whitespace="preserve">name of first property to set</doc>
68801             <type name="utf8" c:type="gchar*"/>
68802           </parameter>
68803           <parameter transfer-ownership="none">
68804             <varargs>
68805             </varargs>
68806           </parameter>
68807         </parameters>
68808       </constructor>
68809       <function name="get_default_colormap"
68810                 c:identifier="gtk_widget_get_default_colormap">
68811         <doc xml:whitespace="preserve">Obtains the default colormap used to create widgets.</doc>
68812         <return-value transfer-ownership="none">
68813           <doc xml:whitespace="preserve">default widget colormap</doc>
68814           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
68815         </return-value>
68816       </function>
68817       <function name="get_default_direction"
68818                 c:identifier="gtk_widget_get_default_direction">
68819         <doc xml:whitespace="preserve">Obtains the current default reading direction. See
68820 gtk_widget_set_default_direction().</doc>
68821         <return-value transfer-ownership="none">
68822           <doc xml:whitespace="preserve">the current default direction.</doc>
68823           <type name="TextDirection" c:type="GtkTextDirection"/>
68824         </return-value>
68825       </function>
68826       <function name="get_default_style"
68827                 c:identifier="gtk_widget_get_default_style">
68828         <doc xml:whitespace="preserve">Returns the default style used by all widgets initially.
68829 by GTK+ and should not be modified or freed.</doc>
68830         <return-value transfer-ownership="none">
68831           <doc xml:whitespace="preserve">the default style. This #GtkStyle object is owned</doc>
68832           <type name="Style" c:type="GtkStyle*"/>
68833         </return-value>
68834       </function>
68835       <function name="get_default_visual"
68836                 c:identifier="gtk_widget_get_default_visual">
68837         <doc xml:whitespace="preserve">Obtains the visual of the default colormap. Not really useful;
68838 used to be useful before gdk_colormap_get_visual() existed.</doc>
68839         <return-value transfer-ownership="none">
68840           <doc xml:whitespace="preserve">visual of the default colormap</doc>
68841           <type name="Gdk.Visual" c:type="GdkVisual*"/>
68842         </return-value>
68843       </function>
68844       <function name="pop_colormap" c:identifier="gtk_widget_pop_colormap">
68845         <doc xml:whitespace="preserve">Removes a colormap pushed with gtk_widget_push_colormap().</doc>
68846         <return-value transfer-ownership="none">
68847           <type name="none" c:type="void"/>
68848         </return-value>
68849       </function>
68850       <function name="pop_composite_child"
68851                 c:identifier="gtk_widget_pop_composite_child">
68852         <doc xml:whitespace="preserve">Cancels the effect of a previous call to gtk_widget_push_composite_child().</doc>
68853         <return-value transfer-ownership="none">
68854           <type name="none" c:type="void"/>
68855         </return-value>
68856       </function>
68857       <function name="push_colormap" c:identifier="gtk_widget_push_colormap">
68858         <doc xml:whitespace="preserve">Pushes @cmap onto a global stack of colormaps; the topmost
68859 colormap on the stack will be used to create all widgets.
68860 Remove @cmap with gtk_widget_pop_colormap(). There's little
68861 reason to use this function.</doc>
68862         <return-value transfer-ownership="none">
68863           <type name="none" c:type="void"/>
68864         </return-value>
68865         <parameters>
68866           <parameter name="cmap" transfer-ownership="none">
68867             <doc xml:whitespace="preserve">a #GdkColormap</doc>
68868             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
68869           </parameter>
68870         </parameters>
68871       </function>
68872       <function name="push_composite_child"
68873                 c:identifier="gtk_widget_push_composite_child">
68874         <doc xml:whitespace="preserve">Makes all newly-created widgets as composite children until
68875 the corresponding gtk_widget_pop_composite_child() call.
68876 A composite child is a child that's an implementation detail of the
68877 container it's inside and should not be visible to people using the
68878 container. Composite children aren't treated differently by GTK (but
68879 see gtk_container_foreach() vs. gtk_container_forall()), but e.g. GUI 
68880 builders might want to treat them in a different way.
68881 Here is a simple example:
68882 |[
68883 gtk_widget_push_composite_child ();
68884 scrolled_window-&gt;hscrollbar = gtk_hscrollbar_new (hadjustment);
68885 gtk_widget_set_composite_name (scrolled_window-&gt;hscrollbar, "hscrollbar");
68886 gtk_widget_pop_composite_child ();
68887 gtk_widget_set_parent (scrolled_window-&gt;hscrollbar, 
68888 GTK_WIDGET (scrolled_window));
68889 g_object_ref (scrolled_window-&gt;hscrollbar);
68890 ]|</doc>
68891         <return-value transfer-ownership="none">
68892           <type name="none" c:type="void"/>
68893         </return-value>
68894       </function>
68895       <function name="set_default_colormap"
68896                 c:identifier="gtk_widget_set_default_colormap">
68897         <doc xml:whitespace="preserve">Sets the default colormap to use when creating widgets.
68898 gtk_widget_push_colormap() is a better function to use if
68899 you only want to affect a few widgets, rather than all widgets.</doc>
68900         <return-value transfer-ownership="none">
68901           <type name="none" c:type="void"/>
68902         </return-value>
68903         <parameters>
68904           <parameter name="colormap" transfer-ownership="none">
68905             <doc xml:whitespace="preserve">a #GdkColormap</doc>
68906             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
68907           </parameter>
68908         </parameters>
68909       </function>
68910       <function name="set_default_direction"
68911                 c:identifier="gtk_widget_set_default_direction">
68912         <doc xml:whitespace="preserve">Sets the default reading direction for widgets where the
68913 direction has not been explicitly set by gtk_widget_set_direction().</doc>
68914         <return-value transfer-ownership="none">
68915           <type name="none" c:type="void"/>
68916         </return-value>
68917         <parameters>
68918           <parameter name="dir" transfer-ownership="none">
68919             <doc xml:whitespace="preserve">the new default direction. This cannot be %GTK_TEXT_DIR_NONE.</doc>
68920             <type name="TextDirection" c:type="GtkTextDirection"/>
68921           </parameter>
68922         </parameters>
68923       </function>
68924       <virtual-method name="adjust_size_allocation">
68925         <return-value transfer-ownership="none">
68926           <type name="none" c:type="void"/>
68927         </return-value>
68928         <parameters>
68929           <parameter name="allocation" transfer-ownership="none">
68930             <type name="Allocation" c:type="GtkAllocation*"/>
68931           </parameter>
68932         </parameters>
68933       </virtual-method>
68934       <virtual-method name="adjust_size_request">
68935         <return-value transfer-ownership="none">
68936           <type name="none" c:type="void"/>
68937         </return-value>
68938         <parameters>
68939           <parameter name="orientation" transfer-ownership="none">
68940             <type name="Orientation" c:type="GtkOrientation"/>
68941           </parameter>
68942           <parameter name="for_size" transfer-ownership="none">
68943             <type name="gint" c:type="gint"/>
68944           </parameter>
68945           <parameter name="minimum_size" transfer-ownership="none">
68946             <type name="gint" c:type="gint*"/>
68947           </parameter>
68948           <parameter name="natural_size" transfer-ownership="none">
68949             <type name="gint" c:type="gint*"/>
68950           </parameter>
68951         </parameters>
68952       </virtual-method>
68953       <virtual-method name="dispatch_child_properties_changed">
68954         <return-value transfer-ownership="none">
68955           <type name="none" c:type="void"/>
68956         </return-value>
68957         <parameters>
68958           <parameter name="n_pspecs" transfer-ownership="none">
68959             <type name="guint" c:type="guint"/>
68960           </parameter>
68961           <parameter name="pspecs" transfer-ownership="none">
68962             <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
68963           </parameter>
68964         </parameters>
68965       </virtual-method>
68966       <virtual-method name="get_accessible" invoker="get_accessible">
68967         <doc xml:whitespace="preserve">Returns the accessible object that describes the widget to an
68968 assistive technology.
68969 If no accessibility library is loaded (i.e. no ATK implementation library is
68970 loaded via &lt;envar&gt;GTK_MODULES&lt;/envar&gt; or via another application library,
68971 such as libgnome), then this #AtkObject instance may be a no-op. Likewise,
68972 if no class-specific #AtkObject implementation is available for the widget
68973 instance in question, it will inherit an #AtkObject implementation from the
68974 first ancestor class for which such an implementation is defined.
68975 The documentation of the &lt;ulink url="http://developer.gnome.org/doc/API/2.0/atk/index.html"&gt;ATK&lt;/ulink&gt;
68976 library contains more information about accessible objects and their uses.</doc>
68977         <return-value transfer-ownership="none">
68978           <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
68979           <type name="Atk.Object" c:type="AtkObject*"/>
68980         </return-value>
68981       </virtual-method>
68982       <virtual-method name="hide_all" invoker="hide_all">
68983         <doc xml:whitespace="preserve">Recursively hides a widget and any child widgets.</doc>
68984         <return-value transfer-ownership="none">
68985           <type name="none" c:type="void"/>
68986         </return-value>
68987       </virtual-method>
68988       <virtual-method name="show_all" invoker="show_all">
68989         <doc xml:whitespace="preserve">Recursively shows a widget, and any child widgets (if the widget is
68990 a container).</doc>
68991         <return-value transfer-ownership="none">
68992           <type name="none" c:type="void"/>
68993         </return-value>
68994       </virtual-method>
68995       <method name="activate" c:identifier="gtk_widget_activate">
68996         <doc xml:whitespace="preserve">For widgets that can be "activated" (buttons, menu items, etc.)
68997 this function activates them. Activation is what happens when you
68998 press Enter on a widget during key navigation. If @widget isn't 
68999 activatable, the function returns %FALSE.</doc>
69000         <return-value transfer-ownership="none">
69001           <doc xml:whitespace="preserve">%TRUE if the widget was activatable</doc>
69002           <type name="gboolean" c:type="gboolean"/>
69003         </return-value>
69004       </method>
69005       <method name="add_accelerator" c:identifier="gtk_widget_add_accelerator">
69006         <return-value transfer-ownership="none">
69007           <type name="none" c:type="void"/>
69008         </return-value>
69009         <parameters>
69010           <parameter name="accel_signal" transfer-ownership="none">
69011             <type name="utf8" c:type="gchar*"/>
69012           </parameter>
69013           <parameter name="accel_group" transfer-ownership="none">
69014             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
69015           </parameter>
69016           <parameter name="accel_key" transfer-ownership="none">
69017             <type name="guint" c:type="guint"/>
69018           </parameter>
69019           <parameter name="accel_mods" transfer-ownership="none">
69020             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
69021           </parameter>
69022           <parameter name="accel_flags" transfer-ownership="none">
69023             <type name="AccelFlags" c:type="GtkAccelFlags"/>
69024           </parameter>
69025         </parameters>
69026       </method>
69027       <method name="add_device_events"
69028               c:identifier="gtk_widget_add_device_events"
69029               version="3.0">
69030         <doc xml:whitespace="preserve">Adds the device events in the bitfield @events to the event mask for</doc>
69031         <return-value transfer-ownership="none">
69032           <type name="none" c:type="void"/>
69033         </return-value>
69034         <parameters>
69035           <parameter name="device" transfer-ownership="none">
69036             <doc xml:whitespace="preserve">a #GdkDevice</doc>
69037             <type name="Gdk.Device" c:type="GdkDevice*"/>
69038           </parameter>
69039           <parameter name="events" transfer-ownership="none">
69040             <doc xml:whitespace="preserve">an event mask, see #GdkEventMask</doc>
69041             <type name="Gdk.EventMask" c:type="GdkEventMask"/>
69042           </parameter>
69043         </parameters>
69044       </method>
69045       <method name="add_events" c:identifier="gtk_widget_add_events">
69046         <doc xml:whitespace="preserve">Adds the events in the bitfield @events to the event mask for</doc>
69047         <return-value transfer-ownership="none">
69048           <type name="none" c:type="void"/>
69049         </return-value>
69050         <parameters>
69051           <parameter name="events" transfer-ownership="none">
69052             <doc xml:whitespace="preserve">an event mask, see #GdkEventMask</doc>
69053             <type name="gint" c:type="gint"/>
69054           </parameter>
69055         </parameters>
69056       </method>
69057       <method name="add_mnemonic_label"
69058               c:identifier="gtk_widget_add_mnemonic_label"
69059               version="2.4">
69060         <doc xml:whitespace="preserve">Adds a widget to the list of mnemonic labels for
69061 this widget. (See gtk_widget_list_mnemonic_labels()). Note the
69062 list of mnemonic labels for the widget is cleared when the
69063 widget is destroyed, so the caller must make sure to update
69064 its internal state at this point as well, by using a connection
69065 to the #GtkWidget::destroy signal or a weak notifier.</doc>
69066         <return-value transfer-ownership="none">
69067           <type name="none" c:type="void"/>
69068         </return-value>
69069         <parameters>
69070           <parameter name="label" transfer-ownership="none">
69071             <doc xml:whitespace="preserve">a #GtkWidget that acts as a mnemonic label for @widget</doc>
69072             <type name="Widget" c:type="GtkWidget*"/>
69073           </parameter>
69074         </parameters>
69075       </method>
69076       <method name="can_activate_accel"
69077               c:identifier="gtk_widget_can_activate_accel"
69078               version="2.4">
69079         <doc xml:whitespace="preserve">Determines whether an accelerator that activates the signal
69080 identified by @signal_id can currently be activated.
69081 This is done by emitting the #GtkWidget::can-activate-accel
69082 signal on @widget; if the signal isn't overridden by a
69083 handler or in a derived widget, then the default check is
69084 that the widget must be sensitive, and the widget and all
69085 its ancestors mapped.</doc>
69086         <return-value transfer-ownership="none">
69087           <doc xml:whitespace="preserve">%TRUE if the accelerator can be activated.</doc>
69088           <type name="gboolean" c:type="gboolean"/>
69089         </return-value>
69090         <parameters>
69091           <parameter name="signal_id" transfer-ownership="none">
69092             <doc xml:whitespace="preserve">the ID of a signal installed on @widget</doc>
69093             <type name="guint" c:type="guint"/>
69094           </parameter>
69095         </parameters>
69096       </method>
69097       <method name="child_focus" c:identifier="gtk_widget_child_focus">
69098         <doc xml:whitespace="preserve">This function is used by custom widget implementations; if you're
69099 writing an app, you'd use gtk_widget_grab_focus() to move the focus
69100 to a particular widget, and gtk_container_set_focus_chain() to
69101 change the focus tab order. So you may want to investigate those
69102 functions instead.
69103 gtk_widget_child_focus() is called by containers as the user moves
69104 around the window using keyboard shortcuts. @direction indicates
69105 what kind of motion is taking place (up, down, left, right, tab
69106 forward, tab backward). gtk_widget_child_focus() emits the
69107 #GtkWidget::focus signal; widgets override the default handler
69108 for this signal in order to implement appropriate focus behavior.
69109 The default ::focus handler for a widget should return %TRUE if
69110 moving in @direction left the focus on a focusable location inside
69111 that widget, and %FALSE if moving in @direction moved the focus
69112 outside the widget. If returning %TRUE, widgets normally
69113 call gtk_widget_grab_focus() to place the focus accordingly;
69114 if returning %FALSE, they don't modify the current focus location.</doc>
69115         <return-value transfer-ownership="none">
69116           <doc xml:whitespace="preserve">%TRUE if focus ended up inside @widget</doc>
69117           <type name="gboolean" c:type="gboolean"/>
69118         </return-value>
69119         <parameters>
69120           <parameter name="direction" transfer-ownership="none">
69121             <doc xml:whitespace="preserve">direction of focus movement</doc>
69122             <type name="DirectionType" c:type="GtkDirectionType"/>
69123           </parameter>
69124         </parameters>
69125       </method>
69126       <method name="child_notify" c:identifier="gtk_widget_child_notify">
69127         <doc xml:whitespace="preserve">Emits a #GtkWidget::child-notify signal for the 
69128 &lt;link linkend="child-properties"&gt;child property&lt;/link&gt; @child_property 
69129 on @widget.
69130 This is the analogue of g_object_notify() for child properties.</doc>
69131         <return-value transfer-ownership="none">
69132           <type name="none" c:type="void"/>
69133         </return-value>
69134         <parameters>
69135           <parameter name="child_property" transfer-ownership="none">
69136             <doc xml:whitespace="preserve">the name of a child property installed on the class of @widget&lt;!-- --&gt;'s parent</doc>
69137             <type name="utf8" c:type="gchar*"/>
69138           </parameter>
69139         </parameters>
69140       </method>
69141       <method name="class_path" c:identifier="gtk_widget_class_path">
69142         <doc xml:whitespace="preserve">Same as gtk_widget_path(), but always uses the name of a widget's type,
69143 never uses a custom name set with gtk_widget_set_name().</doc>
69144         <return-value transfer-ownership="none">
69145           <type name="none" c:type="void"/>
69146         </return-value>
69147         <parameters>
69148           <parameter name="path_length"
69149                      direction="out"
69150                      caller-allocates="0"
69151                      transfer-ownership="full"
69152                      allow-none="1">
69153             <doc xml:whitespace="preserve">location to store the length of the class path, or %NULL</doc>
69154             <type name="guint" c:type="guint*"/>
69155           </parameter>
69156           <parameter name="path"
69157                      direction="out"
69158                      caller-allocates="0"
69159                      transfer-ownership="full"
69160                      allow-none="1">
69161             <doc xml:whitespace="preserve">location to store the class path as an allocated string, or %NULL</doc>
69162             <type name="utf8" c:type="gchar**"/>
69163           </parameter>
69164           <parameter name="path_reversed"
69165                      direction="out"
69166                      caller-allocates="0"
69167                      transfer-ownership="full"
69168                      allow-none="1">
69169             <doc xml:whitespace="preserve">location to store the reverse class path as an allocated string, or %NULL</doc>
69170             <type name="utf8" c:type="gchar**"/>
69171           </parameter>
69172         </parameters>
69173       </method>
69174       <method name="create_pango_context"
69175               c:identifier="gtk_widget_create_pango_context">
69176         <doc xml:whitespace="preserve">Creates a new #PangoContext with the appropriate font map,
69177 font description, and base direction for drawing text for
69178 this widget. See also gtk_widget_get_pango_context().</doc>
69179         <return-value transfer-ownership="full">
69180           <doc xml:whitespace="preserve">the new #PangoContext</doc>
69181           <type name="Pango.Context" c:type="PangoContext*"/>
69182         </return-value>
69183       </method>
69184       <method name="create_pango_layout"
69185               c:identifier="gtk_widget_create_pango_layout">
69186         <doc xml:whitespace="preserve">Creates a new #PangoLayout with the appropriate font map,
69187 font description, and base direction for drawing text for
69188 this widget.
69189 If you keep a #PangoLayout created in this way around, in order to
69190 notify the layout of changes to the base direction or font of this
69191 widget, you must call pango_layout_context_changed() in response to
69192 the #GtkWidget::style-set and #GtkWidget::direction-changed signals
69193 for the widget.</doc>
69194         <return-value transfer-ownership="full">
69195           <doc xml:whitespace="preserve">the new #PangoLayout</doc>
69196           <type name="Pango.Layout" c:type="PangoLayout*"/>
69197         </return-value>
69198         <parameters>
69199           <parameter name="text" transfer-ownership="none">
69200             <doc xml:whitespace="preserve">text to set on the layout (can be %NULL)</doc>
69201             <type name="utf8" c:type="gchar*"/>
69202           </parameter>
69203         </parameters>
69204       </method>
69205       <method name="destroy" c:identifier="gtk_widget_destroy">
69206         <doc xml:whitespace="preserve">Destroys a widget. Equivalent to gtk_object_destroy(), except that
69207 you don't have to cast the widget to #GtkObject. When a widget is
69208 destroyed, it will break any references it holds to other objects.
69209 If the widget is inside a container, the widget will be removed
69210 from the container. If the widget is a toplevel (derived from
69211 #GtkWindow), it will be removed from the list of toplevels, and the
69212 reference GTK+ holds to it will be removed. Removing a
69213 widget from its container or the list of toplevels results in the
69214 widget being finalized, unless you've added additional references
69215 to the widget with g_object_ref().
69216 In most cases, only toplevel widgets (windows) require explicit
69217 destruction, because when you destroy a toplevel its children will
69218 be destroyed as well.</doc>
69219         <return-value transfer-ownership="none">
69220           <type name="none" c:type="void"/>
69221         </return-value>
69222       </method>
69223       <method name="destroyed" c:identifier="gtk_widget_destroyed">
69224         <doc xml:whitespace="preserve">This function sets *@widget_pointer to %NULL if @widget_pointer !=
69225 %NULL.  It's intended to be used as a callback connected to the
69226 "destroy" signal of a widget. You connect gtk_widget_destroyed()
69227 as a signal handler, and pass the address of your widget variable
69228 as user data. Then when the widget is destroyed, the variable will
69229 be set to %NULL. Useful for example to avoid multiple copies
69230 of the same dialog.</doc>
69231         <return-value transfer-ownership="none">
69232           <type name="none" c:type="void"/>
69233         </return-value>
69234         <parameters>
69235           <parameter name="widget_pointer"
69236                      direction="inout"
69237                      caller-allocates="0"
69238                      transfer-ownership="none">
69239             <doc xml:whitespace="preserve">address of a variable that contains @widget</doc>
69240             <type name="Widget" c:type="GtkWidget**"/>
69241           </parameter>
69242         </parameters>
69243       </method>
69244       <method name="device_is_shadowed"
69245               c:identifier="gtk_widget_device_is_shadowed"
69246               version="3.0">
69247         <doc xml:whitespace="preserve">Returns %TRUE if @device has been shadowed by a GTK+
69248 device grab on another widget, so it would stop sending
69249 events to @widget. This may be used in the
69250 #GtkWidget::grab-notify signal to check for specific
69251 devices. See gtk_device_grab_add().
69252 by another #GtkWidget than @widget.</doc>
69253         <return-value transfer-ownership="none">
69254           <doc xml:whitespace="preserve">%TRUE if there is an ongoing grab on @device</doc>
69255           <type name="gboolean" c:type="gboolean"/>
69256         </return-value>
69257         <parameters>
69258           <parameter name="device" transfer-ownership="none">
69259             <doc xml:whitespace="preserve">a #GdkDevice</doc>
69260             <type name="Gdk.Device" c:type="GdkDevice*"/>
69261           </parameter>
69262         </parameters>
69263       </method>
69264       <method name="ensure_style" c:identifier="gtk_widget_ensure_style">
69265         <doc xml:whitespace="preserve">Ensures that @widget has a style (@widget-&gt;style). Not a very useful
69266 function; most of the time, if you want the style, the widget is
69267 realized, and realized widgets are guaranteed to have a style
69268 already.</doc>
69269         <return-value transfer-ownership="none">
69270           <type name="none" c:type="void"/>
69271         </return-value>
69272       </method>
69273       <method name="error_bell"
69274               c:identifier="gtk_widget_error_bell"
69275               version="2.12">
69276         <doc xml:whitespace="preserve">Notifies the user about an input-related error on this widget. 
69277 If the #GtkSettings:gtk-error-bell setting is %TRUE, it calls
69278 gdk_window_beep(), otherwise it does nothing.
69279 Note that the effect of gdk_window_beep() can be configured in many
69280 ways, depending on the windowing backend and the desktop environment
69281 or window manager that is used.</doc>
69282         <return-value transfer-ownership="none">
69283           <type name="none" c:type="void"/>
69284         </return-value>
69285       </method>
69286       <method name="event" c:identifier="gtk_widget_event">
69287         <doc xml:whitespace="preserve">Rarely-used function. This function is used to emit
69288 the event signals on a widget (those signals should never
69289 be emitted without using this function to do so).
69290 If you want to synthesize an event though, don't use this function;
69291 instead, use gtk_main_do_event() so the event will behave as if
69292 it were in the event queue. Don't synthesize expose events; instead,
69293 use gdk_window_invalidate_rect() to invalidate a region of the
69294 window.
69295 the event was handled)</doc>
69296         <return-value transfer-ownership="none">
69297           <doc xml:whitespace="preserve">return from the event signal emission (%TRUE if</doc>
69298           <type name="gboolean" c:type="gboolean"/>
69299         </return-value>
69300         <parameters>
69301           <parameter name="event" transfer-ownership="none">
69302             <doc xml:whitespace="preserve">a #GdkEvent</doc>
69303             <type name="Gdk.Event" c:type="GdkEvent*"/>
69304           </parameter>
69305         </parameters>
69306       </method>
69307       <method name="freeze_child_notify"
69308               c:identifier="gtk_widget_freeze_child_notify">
69309         <doc xml:whitespace="preserve">Stops emission of #GtkWidget::child-notify signals on @widget. The 
69310 signals are queued until gtk_widget_thaw_child_notify() is called 
69311 on @widget. 
69312 This is the analogue of g_object_freeze_notify() for child properties.</doc>
69313         <return-value transfer-ownership="none">
69314           <type name="none" c:type="void"/>
69315         </return-value>
69316       </method>
69317       <method name="get_accessible" c:identifier="gtk_widget_get_accessible">
69318         <doc xml:whitespace="preserve">Returns the accessible object that describes the widget to an
69319 assistive technology.
69320 If no accessibility library is loaded (i.e. no ATK implementation library is
69321 loaded via &lt;envar&gt;GTK_MODULES&lt;/envar&gt; or via another application library,
69322 such as libgnome), then this #AtkObject instance may be a no-op. Likewise,
69323 if no class-specific #AtkObject implementation is available for the widget
69324 instance in question, it will inherit an #AtkObject implementation from the
69325 first ancestor class for which such an implementation is defined.
69326 The documentation of the &lt;ulink url="http://developer.gnome.org/doc/API/2.0/atk/index.html"&gt;ATK&lt;/ulink&gt;
69327 library contains more information about accessible objects and their uses.</doc>
69328         <return-value transfer-ownership="none">
69329           <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
69330           <type name="Atk.Object" c:type="AtkObject*"/>
69331         </return-value>
69332       </method>
69333       <method name="get_allocation"
69334               c:identifier="gtk_widget_get_allocation"
69335               version="2.18">
69336         <doc xml:whitespace="preserve">Retrieves the widget's allocation.
69337 be its "adjusted" allocation, that is, the widget's parent
69338 container typically calls gtk_widget_size_allocate() with an
69339 allocation, and that allocation is then adjusted (to handle margin
69340 and alignment for example) before assignment to the widget.
69341 gtk_widget_get_allocation() returns the adjusted allocation that
69342 was actually assigned to the widget. The adjusted allocation is
69343 guaranteed to be completely contained within the
69344 gtk_widget_size_allocate() allocation, however. So a #GtkContainer
69345 is guaranteed that its children stay inside the assigned bounds,
69346 but not that they have exactly the bounds the container assigned.
69347 There is no way to get the original allocation assigned by
69348 gtk_widget_size_allocate(), since it isn't stored; if a container
69349 implementation needs that information it will have to track it itself.</doc>
69350         <return-value transfer-ownership="none">
69351           <type name="none" c:type="void"/>
69352         </return-value>
69353         <parameters>
69354           <parameter name="allocation"
69355                      direction="out"
69356                      caller-allocates="1"
69357                      transfer-ownership="none">
69358             <doc xml:whitespace="preserve">a pointer to a #GtkAllocation to copy to</doc>
69359             <type name="Allocation" c:type="GtkAllocation*"/>
69360           </parameter>
69361         </parameters>
69362       </method>
69363       <method name="get_ancestor" c:identifier="gtk_widget_get_ancestor">
69364         <doc xml:whitespace="preserve">Gets the first ancestor of @widget with type @widget_type. For example,
69365 &lt;literal&gt;gtk_widget_get_ancestor (widget, GTK_TYPE_BOX)&lt;/literal&gt; gets 
69366 the first #GtkBox that's an ancestor of @widget. No reference will be 
69367 added to the returned widget; it should not be unreferenced. See note 
69368 about checking for a toplevel #GtkWindow in the docs for 
69369 gtk_widget_get_toplevel().
69370 Note that unlike gtk_widget_is_ancestor(), gtk_widget_get_ancestor() 
69371 considers @widget to be an ancestor of itself.</doc>
69372         <return-value transfer-ownership="none">
69373           <doc xml:whitespace="preserve">the ancestor widget, or %NULL if not found</doc>
69374           <type name="Widget" c:type="GtkWidget*"/>
69375         </return-value>
69376         <parameters>
69377           <parameter name="widget_type" transfer-ownership="none">
69378             <doc xml:whitespace="preserve">ancestor type</doc>
69379             <type name="GType" c:type="GType"/>
69380           </parameter>
69381         </parameters>
69382       </method>
69383       <method name="get_app_paintable"
69384               c:identifier="gtk_widget_get_app_paintable"
69385               version="2.18">
69386         <doc xml:whitespace="preserve">Determines whether the application intends to draw on the widget in
69387 an #GtkWidget::expose-event handler.
69388 See gtk_widget_set_app_paintable()</doc>
69389         <return-value transfer-ownership="none">
69390           <doc xml:whitespace="preserve">%TRUE if the widget is app paintable</doc>
69391           <type name="gboolean" c:type="gboolean"/>
69392         </return-value>
69393       </method>
69394       <method name="get_can_default"
69395               c:identifier="gtk_widget_get_can_default"
69396               version="2.18">
69397         <doc xml:whitespace="preserve">Determines whether @widget can be a default widget. See
69398 gtk_widget_set_can_default().</doc>
69399         <return-value transfer-ownership="none">
69400           <doc xml:whitespace="preserve">%TRUE if @widget can be a default widget, %FALSE otherwise</doc>
69401           <type name="gboolean" c:type="gboolean"/>
69402         </return-value>
69403       </method>
69404       <method name="get_can_focus"
69405               c:identifier="gtk_widget_get_can_focus"
69406               version="2.18">
69407         <doc xml:whitespace="preserve">Determines whether @widget can own the input focus. See
69408 gtk_widget_set_can_focus().</doc>
69409         <return-value transfer-ownership="none">
69410           <doc xml:whitespace="preserve">%TRUE if @widget can own the input focus, %FALSE otherwise</doc>
69411           <type name="gboolean" c:type="gboolean"/>
69412         </return-value>
69413       </method>
69414       <method name="get_child_requisition"
69415               c:identifier="gtk_widget_get_child_requisition"
69416               deprecated="Use gtk_size_request_get_size() instead."
69417               deprecated-version="3.0">
69418         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Obtains
69419 geometry on the widget (e.g. with gtk_widget_set_size_request()),
69420 in which case it returns that geometry instead of the widget's
69421 requisition.
69422 This function differs from gtk_widget_size_request() in that
69423 it retrieves the last size request value from @widget-&gt;requisition,
69424 while gtk_widget_size_request() actually calls the "size_request" method
69425 on @widget to compute the size request and fill in @widget-&gt;requisition,
69426 and only then returns @widget-&gt;requisition.
69427 Because this function does not call the "size_request" method, it
69428 can only be used when you know that @widget-&gt;requisition is
69429 up-to-date, that is, gtk_widget_size_request() has been called
69430 since the last time a resize was queued. In general, only container
69431 implementations have this information; applications should use
69432 gtk_widget_size_request().</doc>
69433         <return-value transfer-ownership="none">
69434           <type name="none" c:type="void"/>
69435         </return-value>
69436         <parameters>
69437           <parameter name="requisition"
69438                      direction="out"
69439                      caller-allocates="1"
69440                      transfer-ownership="none">
69441             <doc xml:whitespace="preserve">a #GtkRequisition to be filled in</doc>
69442             <type name="Requisition" c:type="GtkRequisition*"/>
69443           </parameter>
69444         </parameters>
69445       </method>
69446       <method name="get_child_visible"
69447               c:identifier="gtk_widget_get_child_visible">
69448         <doc xml:whitespace="preserve">Gets the value set with gtk_widget_set_child_visible().
69449 If you feel a need to use this function, your code probably
69450 needs reorganization. 
69451 This function is only useful for container implementations and
69452 never should be called by an application.</doc>
69453         <return-value transfer-ownership="none">
69454           <doc xml:whitespace="preserve">%TRUE if the widget is mapped with the parent.</doc>
69455           <type name="gboolean" c:type="gboolean"/>
69456         </return-value>
69457       </method>
69458       <method name="get_clipboard"
69459               c:identifier="gtk_widget_get_clipboard"
69460               version="2.2">
69461         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection to
69462 be used with @widget. @widget must have a #GdkDisplay
69463 associated with it, so must be attached to a toplevel
69464 window.
69465 clipboard already exists, a new one will
69466 be created. Once a clipboard object has
69467 been created, it is persistent for all time.</doc>
69468         <return-value transfer-ownership="none">
69469           <doc xml:whitespace="preserve">the appropriate clipboard object. If no</doc>
69470           <type name="Clipboard" c:type="GtkClipboard*"/>
69471         </return-value>
69472         <parameters>
69473           <parameter name="selection" transfer-ownership="none">
69474             <doc xml:whitespace="preserve">a #GdkAtom which identifies the clipboard to use. %GDK_SELECTION_CLIPBOARD gives the default clipboard. Another common value is %GDK_SELECTION_PRIMARY, which gives the primary X selection.</doc>
69475             <type name="Gdk.Atom" c:type="GdkAtom"/>
69476           </parameter>
69477         </parameters>
69478       </method>
69479       <method name="get_colormap" c:identifier="gtk_widget_get_colormap">
69480         <doc xml:whitespace="preserve">Gets the colormap that will be used to render @widget. No reference will
69481 be added to the returned colormap; it should not be unreferenced.</doc>
69482         <return-value transfer-ownership="none">
69483           <doc xml:whitespace="preserve">the colormap used by @widget</doc>
69484           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
69485         </return-value>
69486       </method>
69487       <method name="get_composite_name"
69488               c:identifier="gtk_widget_get_composite_name">
69489         <doc xml:whitespace="preserve">Obtains the composite name of a widget. 
69490 a composite child. The string should be freed when it is no 
69491 longer needed.</doc>
69492         <return-value transfer-ownership="full">
69493           <doc xml:whitespace="preserve">the composite name of @widget, or %NULL if @widget is not</doc>
69494           <type name="utf8" c:type="gchar*"/>
69495         </return-value>
69496       </method>
69497       <method name="get_device_events"
69498               c:identifier="gtk_widget_get_device_events"
69499               version="3.0">
69500         <doc xml:whitespace="preserve">Returns the events mask for the widget corresponding to an specific device. These
69501 are the events that the widget will receive when @device operates on it.</doc>
69502         <return-value transfer-ownership="none">
69503           <doc xml:whitespace="preserve">device event mask for @widget</doc>
69504           <type name="Gdk.EventMask" c:type="GdkEventMask"/>
69505         </return-value>
69506         <parameters>
69507           <parameter name="device" transfer-ownership="none">
69508             <doc xml:whitespace="preserve">a #GdkDevice</doc>
69509             <type name="Gdk.Device" c:type="GdkDevice*"/>
69510           </parameter>
69511         </parameters>
69512       </method>
69513       <method name="get_direction" c:identifier="gtk_widget_get_direction">
69514         <doc xml:whitespace="preserve">Gets the reading direction for a particular widget. See
69515 gtk_widget_set_direction().</doc>
69516         <return-value transfer-ownership="none">
69517           <doc xml:whitespace="preserve">the reading direction for the widget.</doc>
69518           <type name="TextDirection" c:type="GtkTextDirection"/>
69519         </return-value>
69520       </method>
69521       <method name="get_display"
69522               c:identifier="gtk_widget_get_display"
69523               version="2.2">
69524         <doc xml:whitespace="preserve">Get the #GdkDisplay for the toplevel window associated with
69525 this widget. This function can only be called after the widget
69526 has been added to a widget hierarchy with a #GtkWindow at the top.
69527 In general, you should only create display specific
69528 resources when a widget has been realized, and you should
69529 free those resources when the widget is unrealized.</doc>
69530         <return-value transfer-ownership="none">
69531           <doc xml:whitespace="preserve">the #GdkDisplay for the toplevel for this widget.</doc>
69532           <type name="Gdk.Display" c:type="GdkDisplay*"/>
69533         </return-value>
69534       </method>
69535       <method name="get_double_buffered"
69536               c:identifier="gtk_widget_get_double_buffered"
69537               version="2.18">
69538         <doc xml:whitespace="preserve">Determines whether the widget is double buffered.
69539 See gtk_widget_set_double_buffered()</doc>
69540         <return-value transfer-ownership="none">
69541           <doc xml:whitespace="preserve">%TRUE if the widget is double buffered</doc>
69542           <type name="gboolean" c:type="gboolean"/>
69543         </return-value>
69544       </method>
69545       <method name="get_events" c:identifier="gtk_widget_get_events">
69546         <doc xml:whitespace="preserve">Returns the event mask for the widget (a bitfield containing flags
69547 from the #GdkEventMask enumeration). These are the events that the widget
69548 will receive.</doc>
69549         <return-value transfer-ownership="none">
69550           <doc xml:whitespace="preserve">event mask for @widget</doc>
69551           <type name="gint" c:type="gint"/>
69552         </return-value>
69553       </method>
69554       <method name="get_extension_events"
69555               c:identifier="gtk_widget_get_extension_events">
69556         <doc xml:whitespace="preserve">Retrieves the extension events the widget will receive; see
69557 gdk_input_set_extension_events().</doc>
69558         <return-value transfer-ownership="none">
69559           <doc xml:whitespace="preserve">extension events for @widget</doc>
69560           <type name="Gdk.ExtensionMode" c:type="GdkExtensionMode"/>
69561         </return-value>
69562       </method>
69563       <method name="get_halign" c:identifier="gtk_widget_get_halign">
69564         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:halign property.</doc>
69565         <return-value transfer-ownership="none">
69566           <doc xml:whitespace="preserve">the horizontal alignment of @widget</doc>
69567           <type name="Align" c:type="GtkAlign"/>
69568         </return-value>
69569       </method>
69570       <method name="get_has_tooltip"
69571               c:identifier="gtk_widget_get_has_tooltip"
69572               version="2.12">
69573         <doc xml:whitespace="preserve">Returns the current value of the has-tooltip property.  See
69574 GtkWidget:has-tooltip for more information.</doc>
69575         <return-value transfer-ownership="none">
69576           <doc xml:whitespace="preserve">current value of has-tooltip on @widget.</doc>
69577           <type name="gboolean" c:type="gboolean"/>
69578         </return-value>
69579       </method>
69580       <method name="get_has_window"
69581               c:identifier="gtk_widget_get_has_window"
69582               version="2.18">
69583         <doc xml:whitespace="preserve">Determines whether @widget has a #GdkWindow of its own. See
69584 gtk_widget_set_has_window().</doc>
69585         <return-value transfer-ownership="none">
69586           <doc xml:whitespace="preserve">%TRUE if @widget has a window, %FALSE otherwise</doc>
69587           <type name="gboolean" c:type="gboolean"/>
69588         </return-value>
69589       </method>
69590       <method name="get_mapped"
69591               c:identifier="gtk_widget_get_mapped"
69592               version="2.20">
69593         <doc xml:whitespace="preserve">Whether the widget is mapped.</doc>
69594         <return-value transfer-ownership="none">
69595           <doc xml:whitespace="preserve">%TRUE if the widget is mapped, %FALSE otherwise.</doc>
69596           <type name="gboolean" c:type="gboolean"/>
69597         </return-value>
69598       </method>
69599       <method name="get_margin_bottom"
69600               c:identifier="gtk_widget_get_margin_bottom">
69601         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:margin-bottom property.</doc>
69602         <return-value transfer-ownership="none">
69603           <doc xml:whitespace="preserve">The bottom margin of @widget</doc>
69604           <type name="gint" c:type="gint"/>
69605         </return-value>
69606       </method>
69607       <method name="get_margin_left" c:identifier="gtk_widget_get_margin_left">
69608         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:margin-left property.</doc>
69609         <return-value transfer-ownership="none">
69610           <doc xml:whitespace="preserve">The left margin of @widget</doc>
69611           <type name="gint" c:type="gint"/>
69612         </return-value>
69613       </method>
69614       <method name="get_margin_right"
69615               c:identifier="gtk_widget_get_margin_right">
69616         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:margin-right property.</doc>
69617         <return-value transfer-ownership="none">
69618           <doc xml:whitespace="preserve">The left margin of @widget</doc>
69619           <type name="gint" c:type="gint"/>
69620         </return-value>
69621       </method>
69622       <method name="get_margin_top" c:identifier="gtk_widget_get_margin_top">
69623         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:margin-top property.</doc>
69624         <return-value transfer-ownership="none">
69625           <doc xml:whitespace="preserve">The top margin of @widget</doc>
69626           <type name="gint" c:type="gint"/>
69627         </return-value>
69628       </method>
69629       <method name="get_modifier_style"
69630               c:identifier="gtk_widget_get_modifier_style">
69631         <doc xml:whitespace="preserve">Returns the current modifier style for the widget. (As set by
69632 gtk_widget_modify_style().) If no style has previously set, a new
69633 #GtkRcStyle will be created with all values unset, and set as the
69634 modifier style for the widget. If you make changes to this rc
69635 style, you must call gtk_widget_modify_style(), passing in the
69636 returned rc style, to make sure that your changes take effect.
69637 normally end up destroying it, because gtk_widget_modify_style() copies
69638 the passed-in style and sets the copy as the new modifier style,
69639 thus dropping any reference to the old modifier style. Add a reference
69640 to the modifier style if you want to keep it alive.
69641 owned by the widget. If you want to keep a pointer to value this
69642 around, you must add a refcount using g_object_ref().</doc>
69643         <return-value transfer-ownership="none">
69644           <doc xml:whitespace="preserve">the modifier style for the widget. This rc style is</doc>
69645           <type name="RcStyle" c:type="GtkRcStyle*"/>
69646         </return-value>
69647       </method>
69648       <method name="get_name" c:identifier="gtk_widget_get_name">
69649         <doc xml:whitespace="preserve">Retrieves the name of a widget. See gtk_widget_set_name() for the
69650 significance of widget names.
69651 should not be modified or freed</doc>
69652         <return-value transfer-ownership="none">
69653           <doc xml:whitespace="preserve">name of the widget. This string is owned by GTK+ and</doc>
69654           <type name="utf8" c:type="gchar*"/>
69655         </return-value>
69656       </method>
69657       <method name="get_no_show_all"
69658               c:identifier="gtk_widget_get_no_show_all"
69659               version="2.4">
69660         <doc xml:whitespace="preserve">Returns the current value of the GtkWidget:no-show-all property, 
69661 which determines whether calls to gtk_widget_show_all() and 
69662 gtk_widget_hide_all() will affect this widget.</doc>
69663         <return-value transfer-ownership="none">
69664           <doc xml:whitespace="preserve">the current value of the "no-show-all" property.</doc>
69665           <type name="gboolean" c:type="gboolean"/>
69666         </return-value>
69667       </method>
69668       <method name="get_pango_context"
69669               c:identifier="gtk_widget_get_pango_context">
69670         <doc xml:whitespace="preserve">Gets a #PangoContext with the appropriate font map, font description,
69671 and base direction for this widget. Unlike the context returned
69672 by gtk_widget_create_pango_context(), this context is owned by
69673 the widget (it can be used until the screen for the widget changes
69674 or the widget is removed from its toplevel), and will be updated to
69675 match any changes to the widget's attributes.
69676 If you create and keep a #PangoLayout using this context, you must
69677 deal with changes to the context by calling pango_layout_context_changed()
69678 on the layout in response to the #GtkWidget::style-set and 
69679 #GtkWidget::direction-changed signals for the widget.</doc>
69680         <return-value transfer-ownership="none">
69681           <doc xml:whitespace="preserve">the #PangoContext for the widget.</doc>
69682           <type name="Pango.Context" c:type="PangoContext*"/>
69683         </return-value>
69684       </method>
69685       <method name="get_parent" c:identifier="gtk_widget_get_parent">
69686         <doc xml:whitespace="preserve">Returns the parent container of @widget.</doc>
69687         <return-value transfer-ownership="none">
69688           <doc xml:whitespace="preserve">the parent container of @widget, or %NULL</doc>
69689           <type name="Widget" c:type="GtkWidget*"/>
69690         </return-value>
69691       </method>
69692       <method name="get_parent_window"
69693               c:identifier="gtk_widget_get_parent_window">
69694         <doc xml:whitespace="preserve">Gets @widget's parent window.</doc>
69695         <return-value transfer-ownership="none">
69696           <doc xml:whitespace="preserve">the parent window of @widget.</doc>
69697           <type name="Gdk.Window" c:type="GdkWindow*"/>
69698         </return-value>
69699       </method>
69700       <method name="get_pointer" c:identifier="gtk_widget_get_pointer">
69701         <doc xml:whitespace="preserve">Obtains the location of the mouse pointer in widget coordinates.
69702 Widget coordinates are a bit odd; for historical reasons, they are
69703 defined as @widget-&gt;window coordinates for widgets that are not
69704 #GTK_NO_WINDOW widgets, and are relative to @widget-&gt;allocation.x,</doc>
69705         <return-value transfer-ownership="none">
69706           <type name="none" c:type="void"/>
69707         </return-value>
69708         <parameters>
69709           <parameter name="x"
69710                      direction="out"
69711                      caller-allocates="0"
69712                      transfer-ownership="full"
69713                      allow-none="1">
69714             <doc xml:whitespace="preserve">return location for the X coordinate, or %NULL</doc>
69715             <type name="gint" c:type="gint*"/>
69716           </parameter>
69717           <parameter name="y"
69718                      direction="out"
69719                      caller-allocates="0"
69720                      transfer-ownership="full"
69721                      allow-none="1">
69722             <doc xml:whitespace="preserve">return location for the Y coordinate, or %NULL</doc>
69723             <type name="gint" c:type="gint*"/>
69724           </parameter>
69725         </parameters>
69726       </method>
69727       <method name="get_realized"
69728               c:identifier="gtk_widget_get_realized"
69729               version="2.20">
69730         <doc xml:whitespace="preserve">Determines whether @widget is realized.</doc>
69731         <return-value transfer-ownership="none">
69732           <doc xml:whitespace="preserve">%TRUE if @widget is realized, %FALSE otherwise</doc>
69733           <type name="gboolean" c:type="gboolean"/>
69734         </return-value>
69735       </method>
69736       <method name="get_receives_default"
69737               c:identifier="gtk_widget_get_receives_default"
69738               version="2.18">
69739         <doc xml:whitespace="preserve">Determines whether @widget is alyways treated as default widget
69740 withing its toplevel when it has the focus, even if another widget
69741 is the default.
69742 See gtk_widget_set_receives_default().
69743 %FALSE otherwise</doc>
69744         <return-value transfer-ownership="none">
69745           <doc xml:whitespace="preserve">%TRUE if @widget acts as default widget when focussed,</doc>
69746           <type name="gboolean" c:type="gboolean"/>
69747         </return-value>
69748       </method>
69749       <method name="get_requisition"
69750               c:identifier="gtk_widget_get_requisition"
69751               version="2.20"
69752               deprecated="The #GtkRequisition cache on the widget was"
69753               deprecated-version="3.0">
69754         <doc xml:whitespace="preserve">Retrieves the widget's requisition.
69755 This function should only be used by widget implementations in
69756 order to figure whether the widget's requisition has actually
69757 changed after some internal state change (so that they can call
69758 gtk_widget_queue_resize() instead of gtk_widget_queue_draw()).
69759 Normally, gtk_widget_size_request() should be used.
69760 removed, If you need to cache sizes across requests and allocations,
69761 add an explicit cache to the widget in question instead.</doc>
69762         <return-value transfer-ownership="none">
69763           <type name="none" c:type="void"/>
69764         </return-value>
69765         <parameters>
69766           <parameter name="requisition"
69767                      direction="out"
69768                      caller-allocates="1"
69769                      transfer-ownership="none">
69770             <doc xml:whitespace="preserve">a pointer to a #GtkRequisition to copy to</doc>
69771             <type name="Requisition" c:type="GtkRequisition*"/>
69772           </parameter>
69773         </parameters>
69774       </method>
69775       <method name="get_root_window"
69776               c:identifier="gtk_widget_get_root_window"
69777               version="2.2">
69778         <doc xml:whitespace="preserve">Get the root window where this widget is located. This function can
69779 only be called after the widget has been added to a widget
69780 hierarchy with #GtkWindow at the top.
69781 The root window is useful for such purposes as creating a popup
69782 #GdkWindow associated with the window. In general, you should only
69783 create display specific resources when a widget has been realized,
69784 and you should free those resources when the widget is unrealized.</doc>
69785         <return-value transfer-ownership="none">
69786           <doc xml:whitespace="preserve">the #GdkWindow root window for the toplevel for this widget.</doc>
69787           <type name="Gdk.Window" c:type="GdkWindow*"/>
69788         </return-value>
69789       </method>
69790       <method name="get_screen"
69791               c:identifier="gtk_widget_get_screen"
69792               version="2.2">
69793         <doc xml:whitespace="preserve">Get the #GdkScreen from the toplevel window associated with
69794 this widget. This function can only be called after the widget
69795 has been added to a widget hierarchy with a #GtkWindow
69796 at the top.
69797 In general, you should only create screen specific
69798 resources when a widget has been realized, and you should
69799 free those resources when the widget is unrealized.</doc>
69800         <return-value transfer-ownership="none">
69801           <doc xml:whitespace="preserve">the #GdkScreen for the toplevel for this widget.</doc>
69802           <type name="Gdk.Screen" c:type="GdkScreen*"/>
69803         </return-value>
69804       </method>
69805       <method name="get_sensitive"
69806               c:identifier="gtk_widget_get_sensitive"
69807               version="2.18">
69808         <doc xml:whitespace="preserve">Returns the widget's sensitivity (in the sense of returning
69809 the value that has been set using gtk_widget_set_sensitive()).
69810 The effective sensitivity of a widget is however determined by both its
69811 own and its parent widget's sensitivity. See gtk_widget_is_sensitive().</doc>
69812         <return-value transfer-ownership="none">
69813           <doc xml:whitespace="preserve">%TRUE if the widget is sensitive</doc>
69814           <type name="gboolean" c:type="gboolean"/>
69815         </return-value>
69816       </method>
69817       <method name="get_settings" c:identifier="gtk_widget_get_settings">
69818         <doc xml:whitespace="preserve">Gets the settings object holding the settings (global property
69819 settings, RC file information, etc) used for this widget.
69820 Note that this function can only be called when the #GtkWidget
69821 is attached to a toplevel, since the settings object is specific
69822 to a particular #GdkScreen.</doc>
69823         <return-value transfer-ownership="none">
69824           <doc xml:whitespace="preserve">the relevant #GtkSettings object</doc>
69825           <type name="Settings" c:type="GtkSettings*"/>
69826         </return-value>
69827       </method>
69828       <method name="get_size_request"
69829               c:identifier="gtk_widget_get_size_request">
69830         <doc xml:whitespace="preserve">Gets the size request that was explicitly set for the widget using
69831 gtk_widget_set_size_request(). A value of -1 stored in @width or
69832 and the natural requisition of the widget will be used intead. See
69833 gtk_widget_set_size_request(). To get the size a widget will
69834 actually request, call gtk_size_request_get_size() instead of
69835 this function.</doc>
69836         <return-value transfer-ownership="none">
69837           <type name="none" c:type="void"/>
69838         </return-value>
69839         <parameters>
69840           <parameter name="width"
69841                      direction="out"
69842                      caller-allocates="0"
69843                      transfer-ownership="full"
69844                      allow-none="1">
69845             <doc xml:whitespace="preserve">return location for width, or %NULL</doc>
69846             <type name="gint" c:type="gint*"/>
69847           </parameter>
69848           <parameter name="height"
69849                      direction="out"
69850                      caller-allocates="0"
69851                      transfer-ownership="full"
69852                      allow-none="1">
69853             <doc xml:whitespace="preserve">return location for height, or %NULL</doc>
69854             <type name="gint" c:type="gint*"/>
69855           </parameter>
69856         </parameters>
69857       </method>
69858       <method name="get_snapshot"
69859               c:identifier="gtk_widget_get_snapshot"
69860               version="2.14"
69861               introspectable="0">
69862         <doc xml:whitespace="preserve">Create a #GdkPixmap of the contents of the widget and its children.
69863 Works even if the widget is obscured. The depth and visual of the
69864 resulting pixmap is dependent on the widget being snapshot and likely
69865 differs from those of a target widget displaying the pixmap.
69866 The function gdk_pixbuf_get_from_drawable() can be used to convert
69867 the pixmap to a visual independant representation.
69868 The snapshot area used by this function is the @widget's allocation plus
69869 any extra space occupied by additional windows belonging to this widget
69870 (such as the arrows of a spin button).
69871 Thus, the resulting snapshot pixmap is possibly larger than the allocation.
69872 If @clip_rect is non-%NULL, the resulting pixmap is shrunken to
69873 match the specified clip_rect. The (x,y) coordinates of @clip_rect are
69874 interpreted widget relative. If width or height of @clip_rect are 0 or
69875 negative, the width or height of the resulting pixmap will be shrunken
69876 by the respective amount.
69877 For instance a @clip_rect &lt;literal&gt;{ +5, +5, -10, -10 }&lt;/literal&gt; will
69878 chop off 5 pixels at each side of the snapshot pixmap.
69879 If non-%NULL, @clip_rect will contain the exact widget-relative snapshot
69880 coordinates upon return. A @clip_rect of &lt;literal&gt;{ -1, -1, 0, 0 }&lt;/literal&gt;
69881 can be used to preserve the auto-grown snapshot area and use @clip_rect
69882 as a pure output parameter.
69883 The returned pixmap can be %NULL, if the resulting @clip_area was empty.</doc>
69884         <return-value>
69885           <doc xml:whitespace="preserve">#GdkPixmap snapshot of the widget</doc>
69886           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
69887         </return-value>
69888         <parameters>
69889           <parameter name="clip_rect" transfer-ownership="none" allow-none="1">
69890             <doc xml:whitespace="preserve">a #GdkRectangle or %NULL</doc>
69891             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
69892           </parameter>
69893         </parameters>
69894       </method>
69895       <method name="get_state"
69896               c:identifier="gtk_widget_get_state"
69897               version="2.18">
69898         <doc xml:whitespace="preserve">Returns the widget's state. See gtk_widget_set_state().</doc>
69899         <return-value transfer-ownership="none">
69900           <doc xml:whitespace="preserve">the state of @widget.</doc>
69901           <type name="StateType" c:type="GtkStateType"/>
69902         </return-value>
69903       </method>
69904       <method name="get_style" c:identifier="gtk_widget_get_style">
69905         <doc xml:whitespace="preserve">Simply an accessor function that returns @widget-&gt;style.</doc>
69906         <return-value transfer-ownership="none">
69907           <doc xml:whitespace="preserve">the widget's #GtkStyle</doc>
69908           <type name="Style" c:type="GtkStyle*"/>
69909         </return-value>
69910       </method>
69911       <method name="get_support_multidevice"
69912               c:identifier="gtk_widget_get_support_multidevice">
69913         <doc xml:whitespace="preserve">Returns %TRUE if @widget is multiple pointer aware. See
69914 gtk_widget_set_support_multidevice() for more information.</doc>
69915         <return-value transfer-ownership="none">
69916           <doc xml:whitespace="preserve">%TRUE is @widget is multidevice aware.</doc>
69917           <type name="gboolean" c:type="gboolean"/>
69918         </return-value>
69919       </method>
69920       <method name="get_tooltip_markup"
69921               c:identifier="gtk_widget_get_tooltip_markup"
69922               version="2.12">
69923         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @widget.
69924 returned string with g_free() when done.</doc>
69925         <return-value transfer-ownership="full">
69926           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
69927           <type name="utf8" c:type="gchar*"/>
69928         </return-value>
69929       </method>
69930       <method name="get_tooltip_text"
69931               c:identifier="gtk_widget_get_tooltip_text"
69932               version="2.12">
69933         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @widget.
69934 returned string with g_free() when done.</doc>
69935         <return-value transfer-ownership="full">
69936           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
69937           <type name="utf8" c:type="gchar*"/>
69938         </return-value>
69939       </method>
69940       <method name="get_tooltip_window"
69941               c:identifier="gtk_widget_get_tooltip_window"
69942               version="2.12">
69943         <doc xml:whitespace="preserve">Returns the #GtkWindow of the current tooltip. This can be the
69944 GtkWindow created by default, or the custom tooltip window set
69945 using gtk_widget_set_tooltip_window().</doc>
69946         <return-value transfer-ownership="none">
69947           <doc xml:whitespace="preserve">The #GtkWindow of the current tooltip.</doc>
69948           <type name="Window" c:type="GtkWindow*"/>
69949         </return-value>
69950       </method>
69951       <method name="get_toplevel" c:identifier="gtk_widget_get_toplevel">
69952         <doc xml:whitespace="preserve">This function returns the topmost widget in the container hierarchy
69953 returned as the topmost widget. No reference will be added to the
69954 returned widget; it should not be unreferenced.
69955 Note the difference in behavior vs. gtk_widget_get_ancestor();
69956 &lt;literal&gt;gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)&lt;/literal&gt; 
69957 would return
69958 %NULL if @widget wasn't inside a toplevel window, and if the
69959 window was inside a #GtkWindow-derived widget which was in turn
69960 inside the toplevel #GtkWindow. While the second case may
69961 seem unlikely, it actually happens when a #GtkPlug is embedded
69962 inside a #GtkSocket within the same application.
69963 To reliably find the toplevel #GtkWindow, use
69964 gtk_widget_get_toplevel() and check if the %TOPLEVEL flags
69965 is set on the result.
69966 |[
69967 GtkWidget *toplevel = gtk_widget_get_toplevel (widget);
69968 if (gtk_widget_is_toplevel (toplevel))
69969 {
69970 /&amp;ast; Perform action on toplevel. &amp;ast;/
69971 }
69972 ]|
69973 if there's no ancestor.</doc>
69974         <return-value transfer-ownership="none">
69975           <doc xml:whitespace="preserve">the topmost ancestor of @widget, or @widget itself</doc>
69976           <type name="Widget" c:type="GtkWidget*"/>
69977         </return-value>
69978       </method>
69979       <method name="get_valign" c:identifier="gtk_widget_get_valign">
69980         <doc xml:whitespace="preserve">Gets the value of the #GtkWidget:valign property.</doc>
69981         <return-value transfer-ownership="none">
69982           <doc xml:whitespace="preserve">the vertical alignment of @widget</doc>
69983           <type name="Align" c:type="GtkAlign"/>
69984         </return-value>
69985       </method>
69986       <method name="get_visible"
69987               c:identifier="gtk_widget_get_visible"
69988               version="2.18">
69989         <doc xml:whitespace="preserve">Determines whether the widget is visible. Note that this doesn't
69990 take into account whether the widget's parent is also visible
69991 or the widget is obscured in any way.
69992 See gtk_widget_set_visible().</doc>
69993         <return-value transfer-ownership="none">
69994           <doc xml:whitespace="preserve">%TRUE if the widget is visible</doc>
69995           <type name="gboolean" c:type="gboolean"/>
69996         </return-value>
69997       </method>
69998       <method name="get_visual" c:identifier="gtk_widget_get_visual">
69999         <doc xml:whitespace="preserve">Gets the visual that will be used to render @widget.</doc>
70000         <return-value transfer-ownership="none">
70001           <doc xml:whitespace="preserve">the visual for @widget</doc>
70002           <type name="Gdk.Visual" c:type="GdkVisual*"/>
70003         </return-value>
70004       </method>
70005       <method name="get_window"
70006               c:identifier="gtk_widget_get_window"
70007               version="2.14">
70008         <doc xml:whitespace="preserve">Returns the widget's window if it is realized, %NULL otherwise</doc>
70009         <return-value transfer-ownership="none">
70010           <doc xml:whitespace="preserve">@widget's window.</doc>
70011           <type name="Gdk.Window" c:type="GdkWindow*"/>
70012         </return-value>
70013       </method>
70014       <method name="grab_default" c:identifier="gtk_widget_grab_default">
70015         <doc xml:whitespace="preserve">Causes @widget to become the default widget. @widget must have the
70016 %GTK_CAN_DEFAULT flag set; typically you have to set this flag
70017 yourself by calling &lt;literal&gt;gtk_widget_set_can_default (@widget,
70018 %TRUE)&lt;/literal&gt;. The default widget is activated when 
70019 the user presses Enter in a window. Default widgets must be 
70020 activatable, that is, gtk_widget_activate() should affect them. Note
70021 that #GtkEntry widgets require the "activates-default" property
70022 set to %TRUE before they activate the default widget when Enter
70023 is pressed and the #GtkEntry is focused.</doc>
70024         <return-value transfer-ownership="none">
70025           <type name="none" c:type="void"/>
70026         </return-value>
70027       </method>
70028       <method name="grab_focus" c:identifier="gtk_widget_grab_focus">
70029         <doc xml:whitespace="preserve">Causes @widget to have the keyboard focus for the #GtkWindow it's
70030 inside. @widget must be a focusable widget, such as a #GtkEntry;
70031 something like #GtkFrame won't work.
70032 More precisely, it must have the %GTK_CAN_FOCUS flag set. Use
70033 gtk_widget_set_can_focus() to modify that flag.
70034 The widget also needs to be realized and mapped. This is indicated by the
70035 related signals. Grabbing the focus immediately after creating the widget
70036 will likely fail and cause critical warnings.</doc>
70037         <return-value transfer-ownership="none">
70038           <type name="none" c:type="void"/>
70039         </return-value>
70040       </method>
70041       <method name="has_default"
70042               c:identifier="gtk_widget_has_default"
70043               version="2.18">
70044         <doc xml:whitespace="preserve">Determines whether @widget is the current default widget within its
70045 toplevel. See gtk_widget_set_can_default().
70046 its toplevel, %FALSE otherwise</doc>
70047         <return-value transfer-ownership="none">
70048           <doc xml:whitespace="preserve">%TRUE if @widget is the current default widget within</doc>
70049           <type name="gboolean" c:type="gboolean"/>
70050         </return-value>
70051       </method>
70052       <method name="has_focus"
70053               c:identifier="gtk_widget_has_focus"
70054               version="2.18">
70055         <doc xml:whitespace="preserve">Determines if the widget has the global input focus. See
70056 gtk_widget_is_focus() for the difference between having the global
70057 input focus, and only having the focus within a toplevel.</doc>
70058         <return-value transfer-ownership="none">
70059           <doc xml:whitespace="preserve">%TRUE if the widget has the global input focus.</doc>
70060           <type name="gboolean" c:type="gboolean"/>
70061         </return-value>
70062       </method>
70063       <method name="has_grab"
70064               c:identifier="gtk_widget_has_grab"
70065               version="2.18">
70066         <doc xml:whitespace="preserve">Determines whether the widget is currently grabbing events, so it
70067 is the only widget receiving input events (keyboard and mouse).
70068 See also gtk_grab_add().</doc>
70069         <return-value transfer-ownership="none">
70070           <doc xml:whitespace="preserve">%TRUE if the widget is in the grab_widgets stack</doc>
70071           <type name="gboolean" c:type="gboolean"/>
70072         </return-value>
70073       </method>
70074       <method name="has_rc_style"
70075               c:identifier="gtk_widget_has_rc_style"
70076               version="2.20">
70077         <doc xml:whitespace="preserve">Determines if the widget style has been looked up through the rc mechanism.
70078 mechanism, %FALSE otherwise.</doc>
70079         <return-value transfer-ownership="none">
70080           <doc xml:whitespace="preserve">%TRUE if the widget has been looked up through the rc</doc>
70081           <type name="gboolean" c:type="gboolean"/>
70082         </return-value>
70083       </method>
70084       <method name="has_screen"
70085               c:identifier="gtk_widget_has_screen"
70086               version="2.2">
70087         <doc xml:whitespace="preserve">Checks whether there is a #GdkScreen is associated with
70088 this widget. All toplevel widgets have an associated
70089 screen, and all widgets added into a hierarchy with a toplevel
70090 window at the top.
70091 with the widget.</doc>
70092         <return-value transfer-ownership="none">
70093           <doc xml:whitespace="preserve">%TRUE if there is a #GdkScreen associcated</doc>
70094           <type name="gboolean" c:type="gboolean"/>
70095         </return-value>
70096       </method>
70097       <method name="hide" c:identifier="gtk_widget_hide">
70098         <doc xml:whitespace="preserve">Reverses the effects of gtk_widget_show(), causing the widget to be
70099 hidden (invisible to the user).</doc>
70100         <return-value transfer-ownership="none">
70101           <type name="none" c:type="void"/>
70102         </return-value>
70103       </method>
70104       <method name="hide_all" c:identifier="gtk_widget_hide_all">
70105         <doc xml:whitespace="preserve">Recursively hides a widget and any child widgets.</doc>
70106         <return-value transfer-ownership="none">
70107           <type name="none" c:type="void"/>
70108         </return-value>
70109       </method>
70110       <method name="hide_on_delete" c:identifier="gtk_widget_hide_on_delete">
70111         <doc xml:whitespace="preserve">Utility function; intended to be connected to the #GtkWidget::delete-event
70112 signal on a #GtkWindow. The function calls gtk_widget_hide() on its
70113 argument, then returns %TRUE. If connected to ::delete-event, the
70114 result is that clicking the close button for a window (on the
70115 window frame, top right corner usually) will hide but not destroy
70116 the window. By default, GTK+ destroys windows when ::delete-event
70117 is received.</doc>
70118         <return-value transfer-ownership="none">
70119           <doc xml:whitespace="preserve">%TRUE</doc>
70120           <type name="gboolean" c:type="gboolean"/>
70121         </return-value>
70122       </method>
70123       <method name="input_shape_combine_mask"
70124               c:identifier="gtk_widget_input_shape_combine_mask"
70125               version="2.10">
70126         <doc xml:whitespace="preserve">Sets an input shape for this widget's GDK window. This allows for
70127 windows which react to mouse click in a nonrectangular region, see 
70128 gdk_window_input_shape_combine_mask() for more information.</doc>
70129         <return-value transfer-ownership="none">
70130           <type name="none" c:type="void"/>
70131         </return-value>
70132         <parameters>
70133           <parameter name="shape_mask"
70134                      transfer-ownership="none"
70135                      allow-none="1">
70136             <doc xml:whitespace="preserve">shape to be added, or %NULL to remove an existing shape</doc>
70137             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
70138           </parameter>
70139           <parameter name="offset_x" transfer-ownership="none">
70140             <doc xml:whitespace="preserve">X position of shape mask with respect to @window</doc>
70141             <type name="gint" c:type="gint"/>
70142           </parameter>
70143           <parameter name="offset_y" transfer-ownership="none">
70144             <doc xml:whitespace="preserve">Y position of shape mask with respect to @window</doc>
70145             <type name="gint" c:type="gint"/>
70146           </parameter>
70147         </parameters>
70148       </method>
70149       <method name="intersect" c:identifier="gtk_widget_intersect">
70150         <doc xml:whitespace="preserve">Computes the intersection of a @widget's area and @area, storing
70151 the intersection in @intersection, and returns %TRUE if there was
70152 an intersection.  @intersection may be %NULL if you're only
70153 interested in whether there was an intersection.</doc>
70154         <return-value transfer-ownership="none">
70155           <doc xml:whitespace="preserve">%TRUE if there was an intersection</doc>
70156           <type name="gboolean" c:type="gboolean"/>
70157         </return-value>
70158         <parameters>
70159           <parameter name="area" transfer-ownership="none">
70160             <doc xml:whitespace="preserve">a rectangle</doc>
70161             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
70162           </parameter>
70163           <parameter name="intersection" transfer-ownership="none">
70164             <doc xml:whitespace="preserve">rectangle to store intersection of @widget and @area</doc>
70165             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
70166           </parameter>
70167         </parameters>
70168       </method>
70169       <method name="is_ancestor" c:identifier="gtk_widget_is_ancestor">
70170         <doc xml:whitespace="preserve">Determines whether @widget is somewhere inside @ancestor, possibly with
70171 intermediate containers.
70172 grandchild, great grandchild, etc.</doc>
70173         <return-value transfer-ownership="none">
70174           <doc xml:whitespace="preserve">%TRUE if @ancestor contains @widget as a child,</doc>
70175           <type name="gboolean" c:type="gboolean"/>
70176         </return-value>
70177         <parameters>
70178           <parameter name="ancestor" transfer-ownership="none">
70179             <doc xml:whitespace="preserve">another #GtkWidget</doc>
70180             <type name="Widget" c:type="GtkWidget*"/>
70181           </parameter>
70182         </parameters>
70183       </method>
70184       <method name="is_composited"
70185               c:identifier="gtk_widget_is_composited"
70186               version="2.10">
70187         <doc xml:whitespace="preserve">Whether @widget can rely on having its alpha channel
70188 drawn correctly. On X11 this function returns whether a
70189 compositing manager is running for @widget's screen.
70190 Please note that the semantics of this call will change
70191 in the future if used on a widget that has a composited
70192 window in its hierarchy (as set by gdk_window_set_composited()).
70193 channel being drawn correctly.</doc>
70194         <return-value transfer-ownership="none">
70195           <doc xml:whitespace="preserve">%TRUE if the widget can rely on its alpha</doc>
70196           <type name="gboolean" c:type="gboolean"/>
70197         </return-value>
70198       </method>
70199       <method name="is_drawable"
70200               c:identifier="gtk_widget_is_drawable"
70201               version="2.18">
70202         <doc xml:whitespace="preserve">Determines whether @widget can be drawn to. A widget can be drawn
70203 to if it is mapped and visible.</doc>
70204         <return-value transfer-ownership="none">
70205           <doc xml:whitespace="preserve">%TRUE if @widget is drawable, %FALSE otherwise</doc>
70206           <type name="gboolean" c:type="gboolean"/>
70207         </return-value>
70208       </method>
70209       <method name="is_focus" c:identifier="gtk_widget_is_focus">
70210         <doc xml:whitespace="preserve">Determines if the widget is the focus widget within its
70211 toplevel. (This does not mean that the %HAS_FOCUS flag is
70212 necessarily set; %HAS_FOCUS will only be set if the
70213 toplevel widget additionally has the global input focus.)</doc>
70214         <return-value transfer-ownership="none">
70215           <doc xml:whitespace="preserve">%TRUE if the widget is the focus widget.</doc>
70216           <type name="gboolean" c:type="gboolean"/>
70217         </return-value>
70218       </method>
70219       <method name="is_sensitive"
70220               c:identifier="gtk_widget_is_sensitive"
70221               version="2.18">
70222         <doc xml:whitespace="preserve">Returns the widget's effective sensitivity, which means
70223 it is sensitive itself and also its parent widget is sensntive</doc>
70224         <return-value transfer-ownership="none">
70225           <doc xml:whitespace="preserve">%TRUE if the widget is effectively sensitive</doc>
70226           <type name="gboolean" c:type="gboolean"/>
70227         </return-value>
70228       </method>
70229       <method name="is_toplevel"
70230               c:identifier="gtk_widget_is_toplevel"
70231               version="2.18">
70232         <doc xml:whitespace="preserve">Determines whether @widget is a toplevel widget. Currently only
70233 #GtkWindow and #GtkInvisible are toplevel widgets. Toplevel
70234 widgets have no parent widget.</doc>
70235         <return-value transfer-ownership="none">
70236           <doc xml:whitespace="preserve">%TRUE if @widget is a toplevel, %FALSE otherwise</doc>
70237           <type name="gboolean" c:type="gboolean"/>
70238         </return-value>
70239       </method>
70240       <method name="keynav_failed"
70241               c:identifier="gtk_widget_keynav_failed"
70242               version="2.12">
70243         <doc xml:whitespace="preserve">This function should be called whenever keyboard navigation within
70244 a single widget hits a boundary. The function emits the
70245 #GtkWidget::keynav-failed signal on the widget and its return
70246 value should be interpreted in a way similar to the return value of
70247 gtk_widget_child_focus():
70248 When %TRUE is returned, stay in the widget, the failed keyboard
70249 navigation is Ok and/or there is nowhere we can/should move the
70250 focus to.
70251 When %FALSE is returned, the caller should continue with keyboard
70252 navigation outside the widget, e.g. by calling
70253 gtk_widget_child_focus() on the widget's toplevel.
70254 The default ::keynav-failed handler returns %TRUE for 
70255 %GTK_DIR_TAB_FORWARD and %GTK_DIR_TAB_BACKWARD. For the other 
70256 values of #GtkDirectionType, it looks at the 
70257 #GtkSettings:gtk-keynav-cursor-only setting and returns %FALSE 
70258 if the setting is %TRUE. This way the entire user interface
70259 becomes cursor-navigatable on input devices such as mobile phones
70260 which only have cursor keys but no tab key.
70261 Whenever the default handler returns %TRUE, it also calls
70262 gtk_widget_error_bell() to notify the user of the failed keyboard
70263 navigation.
70264 A use case for providing an own implementation of ::keynav-failed 
70265 (either by connecting to it or by overriding it) would be a row of
70266 #GtkEntry widgets where the user should be able to navigate the
70267 entire row with the cursor keys, as e.g. known from user interfaces 
70268 that require entering license keys.
70269 if the emitting widget should try to handle the keyboard
70270 navigation attempt in its parent container(s).</doc>
70271         <return-value transfer-ownership="none">
70272           <doc xml:whitespace="preserve">%TRUE if stopping keyboard navigation is fine, %FALSE</doc>
70273           <type name="gboolean" c:type="gboolean"/>
70274         </return-value>
70275         <parameters>
70276           <parameter name="direction" transfer-ownership="none">
70277             <doc xml:whitespace="preserve">direction of focus movement</doc>
70278             <type name="DirectionType" c:type="GtkDirectionType"/>
70279           </parameter>
70280         </parameters>
70281       </method>
70282       <method name="list_accel_closures"
70283               c:identifier="gtk_widget_list_accel_closures">
70284         <doc xml:whitespace="preserve">Lists the closures used by @widget for accelerator group connections
70285 with gtk_accel_group_connect_by_path() or gtk_accel_group_connect().
70286 The closures can be used to monitor accelerator changes on @widget,
70287 by connecting to the @GtkAccelGroup::accel-changed signal of the
70288 #GtkAccelGroup of a closure which can be found out with
70289 gtk_accel_group_from_accel_closure().
70290 a newly allocated #GList of closures</doc>
70291         <return-value transfer-ownership="container">
70292           <type name="GLib.List" c:type="GList*">
70293             <type name="GObject.Closure"/>
70294           </type>
70295         </return-value>
70296       </method>
70297       <method name="list_mnemonic_labels"
70298               c:identifier="gtk_widget_list_mnemonic_labels"
70299               version="2.4">
70300         <doc xml:whitespace="preserve">Returns a newly allocated list of the widgets, normally labels, for
70301 which this widget is the target of a mnemonic (see for example,
70302 gtk_label_set_mnemonic_widget()).
70303 The widgets in the list are not individually referenced. If you
70304 want to iterate through the list and perform actions involving
70305 callbacks that might destroy the widgets, you
70306 &lt;emphasis&gt;must&lt;/emphasis&gt; call &lt;literal&gt;g_list_foreach (result,
70307 (GFunc)g_object_ref, NULL)&lt;/literal&gt; first, and then unref all the
70308 widgets afterwards.
70309 mnemonic labels; free this list
70310 with g_list_free() when you are done with it.</doc>
70311         <return-value transfer-ownership="container">
70312           <doc xml:whitespace="preserve">the list of</doc>
70313           <type name="GLib.List" c:type="GList*">
70314             <type name="Widget"/>
70315           </type>
70316         </return-value>
70317       </method>
70318       <method name="map" c:identifier="gtk_widget_map">
70319         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Causes
70320 a widget to be mapped if it isn't already.</doc>
70321         <return-value transfer-ownership="none">
70322           <type name="none" c:type="void"/>
70323         </return-value>
70324       </method>
70325       <method name="mnemonic_activate"
70326               c:identifier="gtk_widget_mnemonic_activate">
70327         <doc xml:whitespace="preserve">Emits the #GtkWidget::mnemonic-activate signal.
70328 The default handler for this signal activates the @widget if
70329 is %TRUE.</doc>
70330         <return-value transfer-ownership="none">
70331           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
70332           <type name="gboolean" c:type="gboolean"/>
70333         </return-value>
70334         <parameters>
70335           <parameter name="group_cycling" transfer-ownership="none">
70336             <doc xml:whitespace="preserve">%TRUE if there are other widgets with the same mnemonic</doc>
70337             <type name="gboolean" c:type="gboolean"/>
70338           </parameter>
70339         </parameters>
70340       </method>
70341       <method name="modify_base" c:identifier="gtk_widget_modify_base">
70342         <doc xml:whitespace="preserve">Sets the base color for a widget in a particular state.
70343 All other style values are left untouched. The base color
70344 is the background color used along with the text color
70345 (see gtk_widget_modify_text()) for widgets such as #GtkEntry
70346 and #GtkTextView. See also gtk_widget_modify_style().
70347 Note that "no window" widgets (which have the %GTK_NO_WINDOW flag set)
70348 draw on their parent container's window and thus may not draw any 
70349 background themselves. This is the case for e.g. #GtkLabel. To modify 
70350 the background of such widgets, you have to set the base color on their 
70351 parent; if you want to set the background of a rectangular area around 
70352 a label, try placing the label in a #GtkEventBox widget and setting 
70353 the base color on that.</doc>
70354         <return-value transfer-ownership="none">
70355           <type name="none" c:type="void"/>
70356         </return-value>
70357         <parameters>
70358           <parameter name="state" transfer-ownership="none">
70359             <doc xml:whitespace="preserve">the state for which to set the base color</doc>
70360             <type name="StateType" c:type="GtkStateType"/>
70361           </parameter>
70362           <parameter name="color" transfer-ownership="none" allow-none="1">
70363             <doc xml:whitespace="preserve">the color to assign (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_base().</doc>
70364             <type name="Gdk.Color" c:type="GdkColor*"/>
70365           </parameter>
70366         </parameters>
70367       </method>
70368       <method name="modify_bg" c:identifier="gtk_widget_modify_bg">
70369         <doc xml:whitespace="preserve">Sets the background color for a widget in a particular state.
70370 All other style values are left untouched. See also
70371 gtk_widget_modify_style(). 
70372 Note that "no window" widgets (which have the %GTK_NO_WINDOW flag set)
70373 draw on their parent container's window and thus may not draw any 
70374 background themselves. This is the case for e.g. #GtkLabel. To modify 
70375 the background of such widgets, you have to set the background color 
70376 on their parent; if you want to set the background of a rectangular 
70377 area around a label, try placing the label in a #GtkEventBox widget 
70378 and setting the background color on that.</doc>
70379         <return-value transfer-ownership="none">
70380           <type name="none" c:type="void"/>
70381         </return-value>
70382         <parameters>
70383           <parameter name="state" transfer-ownership="none">
70384             <doc xml:whitespace="preserve">the state for which to set the background color</doc>
70385             <type name="StateType" c:type="GtkStateType"/>
70386           </parameter>
70387           <parameter name="color" transfer-ownership="none" allow-none="1">
70388             <doc xml:whitespace="preserve">the color to assign (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_bg().</doc>
70389             <type name="Gdk.Color" c:type="GdkColor*"/>
70390           </parameter>
70391         </parameters>
70392       </method>
70393       <method name="modify_cursor"
70394               c:identifier="gtk_widget_modify_cursor"
70395               version="2.12">
70396         <doc xml:whitespace="preserve">Sets the cursor color to use in a widget, overriding the
70397 #GtkWidget:cursor-color and #GtkWidget:secondary-cursor-color
70398 style properties. All other style values are left untouched. 
70399 See also gtk_widget_modify_style().</doc>
70400         <return-value transfer-ownership="none">
70401           <type name="none" c:type="void"/>
70402         </return-value>
70403         <parameters>
70404           <parameter name="primary" transfer-ownership="none">
70405             <doc xml:whitespace="preserve">the color to use for primary cursor (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_cursor().</doc>
70406             <type name="Gdk.Color" c:type="GdkColor*"/>
70407           </parameter>
70408           <parameter name="secondary" transfer-ownership="none">
70409             <doc xml:whitespace="preserve">the color to use for secondary cursor (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_cursor().</doc>
70410             <type name="Gdk.Color" c:type="GdkColor*"/>
70411           </parameter>
70412         </parameters>
70413       </method>
70414       <method name="modify_fg" c:identifier="gtk_widget_modify_fg">
70415         <doc xml:whitespace="preserve">Sets the foreground color for a widget in a particular state.
70416 All other style values are left untouched. See also
70417 gtk_widget_modify_style().</doc>
70418         <return-value transfer-ownership="none">
70419           <type name="none" c:type="void"/>
70420         </return-value>
70421         <parameters>
70422           <parameter name="state" transfer-ownership="none">
70423             <doc xml:whitespace="preserve">the state for which to set the foreground color</doc>
70424             <type name="StateType" c:type="GtkStateType"/>
70425           </parameter>
70426           <parameter name="color" transfer-ownership="none" allow-none="1">
70427             <doc xml:whitespace="preserve">the color to assign (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_fg().</doc>
70428             <type name="Gdk.Color" c:type="GdkColor*"/>
70429           </parameter>
70430         </parameters>
70431       </method>
70432       <method name="modify_font" c:identifier="gtk_widget_modify_font">
70433         <doc xml:whitespace="preserve">Sets the font to use for a widget.  All other style values are left
70434 untouched. See also gtk_widget_modify_style().</doc>
70435         <return-value transfer-ownership="none">
70436           <type name="none" c:type="void"/>
70437         </return-value>
70438         <parameters>
70439           <parameter name="font_desc" transfer-ownership="none" allow-none="1">
70440             <doc xml:whitespace="preserve">the font description to use, or %NULL to undo the effect of previous calls to gtk_widget_modify_font().</doc>
70441             <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
70442           </parameter>
70443         </parameters>
70444       </method>
70445       <method name="modify_style" c:identifier="gtk_widget_modify_style">
70446         <doc xml:whitespace="preserve">Modifies style values on the widget. Modifications made using this
70447 technique take precedence over style values set via an RC file,
70448 however, they will be overriden if a style is explicitely set on
70449 the widget using gtk_widget_set_style(). The #GtkRcStyle structure
70450 is designed so each field can either be set or unset, so it is
70451 possible, using this function, to modify some style values and
70452 leave the others unchanged.
70453 Note that modifications made with this function are not cumulative
70454 with previous calls to gtk_widget_modify_style() or with such
70455 functions as gtk_widget_modify_fg(). If you wish to retain
70456 previous values, you must first call gtk_widget_get_modifier_style(),
70457 make your modifications to the returned style, then call
70458 gtk_widget_modify_style() with that style. On the other hand,
70459 if you first call gtk_widget_modify_style(), subsequent calls
70460 to such functions gtk_widget_modify_fg() will have a cumulative
70461 effect with the initial modifications.</doc>
70462         <return-value transfer-ownership="none">
70463           <type name="none" c:type="void"/>
70464         </return-value>
70465         <parameters>
70466           <parameter name="style" transfer-ownership="none">
70467             <doc xml:whitespace="preserve">the #GtkRcStyle holding the style modifications</doc>
70468             <type name="RcStyle" c:type="GtkRcStyle*"/>
70469           </parameter>
70470         </parameters>
70471       </method>
70472       <method name="modify_symbolic_color"
70473               c:identifier="gtk_widget_modify_symbolic_color"
70474               version="3.0">
70475         <doc xml:whitespace="preserve">Sets a symbolic color for a widget.
70476 All other style values are left untouched. See also
70477 gtk_widget_modify_style().</doc>
70478         <return-value transfer-ownership="none">
70479           <type name="none" c:type="void"/>
70480         </return-value>
70481         <parameters>
70482           <parameter name="name" transfer-ownership="none">
70483             <doc xml:whitespace="preserve">the name of the symbolic color to modify</doc>
70484             <type name="utf8" c:type="gchar*"/>
70485           </parameter>
70486           <parameter name="color" transfer-ownership="none" allow-none="1">
70487             <doc xml:whitespace="preserve">the color to assign (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_symbolic_color().</doc>
70488             <type name="Gdk.Color" c:type="GdkColor*"/>
70489           </parameter>
70490         </parameters>
70491       </method>
70492       <method name="modify_text" c:identifier="gtk_widget_modify_text">
70493         <doc xml:whitespace="preserve">Sets the text color for a widget in a particular state.  All other
70494 style values are left untouched. The text color is the foreground
70495 color used along with the base color (see gtk_widget_modify_base())
70496 for widgets such as #GtkEntry and #GtkTextView. See also
70497 gtk_widget_modify_style().</doc>
70498         <return-value transfer-ownership="none">
70499           <type name="none" c:type="void"/>
70500         </return-value>
70501         <parameters>
70502           <parameter name="state" transfer-ownership="none">
70503             <doc xml:whitespace="preserve">the state for which to set the text color</doc>
70504             <type name="StateType" c:type="GtkStateType"/>
70505           </parameter>
70506           <parameter name="color" transfer-ownership="none" allow-none="1">
70507             <doc xml:whitespace="preserve">the color to assign (does not need to be allocated), or %NULL to undo the effect of previous calls to of gtk_widget_modify_text().</doc>
70508             <type name="Gdk.Color" c:type="GdkColor*"/>
70509           </parameter>
70510         </parameters>
70511       </method>
70512       <method name="path" c:identifier="gtk_widget_path">
70513         <doc xml:whitespace="preserve">Obtains the full path to @widget. The path is simply the name of a
70514 widget and all its parents in the container hierarchy, separated by
70515 periods. The name of a widget comes from
70516 gtk_widget_get_name(). Paths are used to apply styles to a widget
70517 in gtkrc configuration files. Widget names are the type of the
70518 widget by default (e.g. "GtkButton") or can be set to an
70519 application-specific value with gtk_widget_set_name(). By setting
70520 the name of a widget, you allow users or theme authors to apply
70521 styles to that specific widget in their gtkrc
70522 file. @path_reversed_p fills in the path in reverse order,
70523 i.e. starting with @widget's name instead of starting with the name
70524 of @widget's outermost ancestor.</doc>
70525         <return-value transfer-ownership="none">
70526           <type name="none" c:type="void"/>
70527         </return-value>
70528         <parameters>
70529           <parameter name="path_length"
70530                      direction="out"
70531                      caller-allocates="0"
70532                      transfer-ownership="full"
70533                      allow-none="1">
70534             <doc xml:whitespace="preserve">location to store length of the path, or %NULL</doc>
70535             <type name="guint" c:type="guint*"/>
70536           </parameter>
70537           <parameter name="path"
70538                      direction="out"
70539                      caller-allocates="0"
70540                      transfer-ownership="full"
70541                      allow-none="1">
70542             <doc xml:whitespace="preserve">location to store allocated path string, or %NULL</doc>
70543             <type name="utf8" c:type="gchar**"/>
70544           </parameter>
70545           <parameter name="path_reversed"
70546                      direction="out"
70547                      caller-allocates="0"
70548                      transfer-ownership="full"
70549                      allow-none="1">
70550             <doc xml:whitespace="preserve">location to store allocated reverse path string, or %NULL</doc>
70551             <type name="utf8" c:type="gchar**"/>
70552           </parameter>
70553         </parameters>
70554       </method>
70555       <method name="queue_draw" c:identifier="gtk_widget_queue_draw">
70556         <doc xml:whitespace="preserve">Equivalent to calling gtk_widget_queue_draw_area() for the
70557 entire area of a widget.</doc>
70558         <return-value transfer-ownership="none">
70559           <type name="none" c:type="void"/>
70560         </return-value>
70561       </method>
70562       <method name="queue_draw_area" c:identifier="gtk_widget_queue_draw_area">
70563         <doc xml:whitespace="preserve">Invalidates the rectangular area of @widget defined by @x, @y,
70564 widget's window and all its child windows. Once the main loop
70565 becomes idle (after the current batch of events has been processed,
70566 roughly), the window will receive expose events for the union of
70567 all regions that have been invalidated.
70568 Normally you would only use this function in widget
70569 implementations. You might also use it, or
70570 gdk_window_invalidate_rect() directly, to schedule a redraw of a
70571 #GtkDrawingArea or some portion thereof.
70572 Frequently you can just call gdk_window_invalidate_rect() or
70573 gdk_window_invalidate_region() instead of this function. Those
70574 functions will invalidate only a single window, instead of the
70575 widget and all its children.
70576 The advantage of adding to the invalidated region compared to
70577 simply drawing immediately is efficiency; using an invalid region
70578 ensures that you only have to redraw one time.</doc>
70579         <return-value transfer-ownership="none">
70580           <type name="none" c:type="void"/>
70581         </return-value>
70582         <parameters>
70583           <parameter name="x" transfer-ownership="none">
70584             <doc xml:whitespace="preserve">x coordinate of upper-left corner of rectangle to redraw</doc>
70585             <type name="gint" c:type="gint"/>
70586           </parameter>
70587           <parameter name="y" transfer-ownership="none">
70588             <doc xml:whitespace="preserve">y coordinate of upper-left corner of rectangle to redraw</doc>
70589             <type name="gint" c:type="gint"/>
70590           </parameter>
70591           <parameter name="width" transfer-ownership="none">
70592             <doc xml:whitespace="preserve">width of region to draw</doc>
70593             <type name="gint" c:type="gint"/>
70594           </parameter>
70595           <parameter name="height" transfer-ownership="none">
70596             <doc xml:whitespace="preserve">height of region to draw</doc>
70597             <type name="gint" c:type="gint"/>
70598           </parameter>
70599         </parameters>
70600       </method>
70601       <method name="queue_resize" c:identifier="gtk_widget_queue_resize">
70602         <doc xml:whitespace="preserve">This function is only for use in widget implementations.
70603 Flags a widget to have its size renegotiated; should
70604 be called when a widget for some reason has a new size request.
70605 For example, when you change the text in a #GtkLabel, #GtkLabel
70606 queues a resize to ensure there's enough space for the new text.</doc>
70607         <return-value transfer-ownership="none">
70608           <type name="none" c:type="void"/>
70609         </return-value>
70610       </method>
70611       <method name="queue_resize_no_redraw"
70612               c:identifier="gtk_widget_queue_resize_no_redraw"
70613               version="2.4">
70614         <doc xml:whitespace="preserve">This function works like gtk_widget_queue_resize(), 
70615 except that the widget is not invalidated.</doc>
70616         <return-value transfer-ownership="none">
70617           <type name="none" c:type="void"/>
70618         </return-value>
70619       </method>
70620       <method name="realize" c:identifier="gtk_widget_realize">
70621         <doc xml:whitespace="preserve">Creates the GDK (windowing system) resources associated with a
70622 widget.  For example, @widget-&gt;window will be created when a widget
70623 is realized.  Normally realization happens implicitly; if you show
70624 a widget and all its parent containers, then the widget will be
70625 realized and mapped automatically.
70626 Realizing a widget requires all
70627 the widget's parent widgets to be realized; calling
70628 gtk_widget_realize() realizes the widget's parents in addition to
70629 when you realize it, bad things will happen.
70630 This function is primarily used in widget implementations, and
70631 isn't very useful otherwise. Many times when you think you might
70632 need it, a better approach is to connect to a signal that will be
70633 called after the widget is realized automatically, such as
70634 GtkWidget::expose-event. Or simply g_signal_connect () to the
70635 GtkWidget::realize signal.</doc>
70636         <return-value transfer-ownership="none">
70637           <type name="none" c:type="void"/>
70638         </return-value>
70639       </method>
70640       <method name="region_intersect"
70641               c:identifier="gtk_widget_region_intersect">
70642         <doc xml:whitespace="preserve">Computes the intersection of a @widget's area and @region, returning
70643 the intersection. The result may be empty, use cairo_region_is_empty() to
70644 check.</doc>
70645         <return-value transfer-ownership="full">
70646           <doc xml:whitespace="preserve">A newly allocated region holding the intersection of @widget and @region. The coordinates of the return value are relative to @widget-&gt;window for %NO_WINDOW widgets, and relative to the parent window of @widget-&gt;window for widgets with their own window.</doc>
70647           <type name="cairo.Region" c:type="cairo_region_t*"/>
70648         </return-value>
70649         <parameters>
70650           <parameter name="region" transfer-ownership="none">
70651             <doc xml:whitespace="preserve">a #cairo_region_t, in the same coordinate system as for %NO_WINDOW widgets; relative to the parent window of @widget-&gt;window for widgets with their own window.</doc>
70652             <type name="cairo.Region" c:type="cairo_region_t*"/>
70653           </parameter>
70654         </parameters>
70655       </method>
70656       <method name="remove_accelerator"
70657               c:identifier="gtk_widget_remove_accelerator">
70658         <doc xml:whitespace="preserve">Removes an accelerator from @widget, previously installed with
70659 gtk_widget_add_accelerator().</doc>
70660         <return-value transfer-ownership="none">
70661           <doc xml:whitespace="preserve">whether an accelerator was installed and could be removed</doc>
70662           <type name="gboolean" c:type="gboolean"/>
70663         </return-value>
70664         <parameters>
70665           <parameter name="accel_group" transfer-ownership="none">
70666             <doc xml:whitespace="preserve">accel group for this widget</doc>
70667             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
70668           </parameter>
70669           <parameter name="accel_key" transfer-ownership="none">
70670             <doc xml:whitespace="preserve">GDK keyval of the accelerator</doc>
70671             <type name="guint" c:type="guint"/>
70672           </parameter>
70673           <parameter name="accel_mods" transfer-ownership="none">
70674             <doc xml:whitespace="preserve">modifier key combination of the accelerator</doc>
70675             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
70676           </parameter>
70677         </parameters>
70678       </method>
70679       <method name="remove_mnemonic_label"
70680               c:identifier="gtk_widget_remove_mnemonic_label"
70681               version="2.4">
70682         <doc xml:whitespace="preserve">Removes a widget from the list of mnemonic labels for
70683 this widget. (See gtk_widget_list_mnemonic_labels()). The widget
70684 must have previously been added to the list with
70685 gtk_widget_add_mnemonic_label().</doc>
70686         <return-value transfer-ownership="none">
70687           <type name="none" c:type="void"/>
70688         </return-value>
70689         <parameters>
70690           <parameter name="label" transfer-ownership="none">
70691             <doc xml:whitespace="preserve">a #GtkWidget that was previously set as a mnemnic label for</doc>
70692             <type name="Widget" c:type="GtkWidget*"/>
70693           </parameter>
70694         </parameters>
70695       </method>
70696       <method name="render_icon" c:identifier="gtk_widget_render_icon">
70697         <doc xml:whitespace="preserve">A convenience function that uses the theme engine and RC file
70698 settings for @widget to look up @stock_id and render it to
70699 a pixbuf. @stock_id should be a stock icon ID such as
70700 #GTK_STOCK_OPEN or #GTK_STOCK_OK. @size should be a size
70701 such as #GTK_ICON_SIZE_MENU. @detail should be a string that
70702 identifies the widget or code doing the rendering, so that
70703 theme engines can special-case rendering for that widget or code.
70704 The pixels in the returned #GdkPixbuf are shared with the rest of
70705 the application and should not be modified. The pixbuf should be freed
70706 after use with g_object_unref().
70707 stock ID wasn't known</doc>
70708         <return-value transfer-ownership="full">
70709           <doc xml:whitespace="preserve">a new pixbuf, or %NULL if the</doc>
70710           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
70711         </return-value>
70712         <parameters>
70713           <parameter name="stock_id" transfer-ownership="none">
70714             <doc xml:whitespace="preserve">a stock ID</doc>
70715             <type name="utf8" c:type="gchar*"/>
70716           </parameter>
70717           <parameter name="size" transfer-ownership="none">
70718             <doc xml:whitespace="preserve">a stock size. A size of (GtkIconSize)-1 means render at the size of the source and don't scale (if there are multiple source sizes, GTK+ picks one of the available sizes).</doc>
70719             <type name="gint"/>
70720           </parameter>
70721           <parameter name="detail" transfer-ownership="none" allow-none="1">
70722             <doc xml:whitespace="preserve">render detail to pass to theme engine</doc>
70723             <type name="utf8" c:type="gchar*"/>
70724           </parameter>
70725         </parameters>
70726       </method>
70727       <method name="reparent" c:identifier="gtk_widget_reparent">
70728         <doc xml:whitespace="preserve">Moves a widget from one #GtkContainer to another, handling reference
70729 count issues to avoid destroying the widget.</doc>
70730         <return-value transfer-ownership="none">
70731           <type name="none" c:type="void"/>
70732         </return-value>
70733         <parameters>
70734           <parameter name="new_parent" transfer-ownership="none">
70735             <doc xml:whitespace="preserve">a #GtkContainer to move the widget into</doc>
70736             <type name="Widget" c:type="GtkWidget*"/>
70737           </parameter>
70738         </parameters>
70739       </method>
70740       <method name="reset_rc_styles" c:identifier="gtk_widget_reset_rc_styles">
70741         <doc xml:whitespace="preserve">Reset the styles of @widget and all descendents, so when
70742 they are looked up again, they get the correct values
70743 for the currently loaded RC file settings.
70744 This function is not useful for applications.</doc>
70745         <return-value transfer-ownership="none">
70746           <type name="none" c:type="void"/>
70747         </return-value>
70748       </method>
70749       <method name="reset_shapes" c:identifier="gtk_widget_reset_shapes">
70750         <doc xml:whitespace="preserve">Recursively resets the shape on this widget and its descendants.</doc>
70751         <return-value transfer-ownership="none">
70752           <type name="none" c:type="void"/>
70753         </return-value>
70754       </method>
70755       <method name="send_expose" c:identifier="gtk_widget_send_expose">
70756         <doc xml:whitespace="preserve">Very rarely-used function. This function is used to emit
70757 an expose event signals on a widget. This function is not
70758 normally used directly. The only time it is used is when
70759 propagating an expose event to a child %NO_WINDOW widget, and
70760 that is normally done using gtk_container_propagate_expose().
70761 If you want to force an area of a window to be redrawn, 
70762 use gdk_window_invalidate_rect() or gdk_window_invalidate_region().
70763 To cause the redraw to be done immediately, follow that call
70764 with a call to gdk_window_process_updates().
70765 the event was handled)</doc>
70766         <return-value transfer-ownership="none">
70767           <doc xml:whitespace="preserve">return from the event signal emission (%TRUE if</doc>
70768           <type name="gint" c:type="gint"/>
70769         </return-value>
70770         <parameters>
70771           <parameter name="event" transfer-ownership="none">
70772             <doc xml:whitespace="preserve">a expose #GdkEvent</doc>
70773             <type name="Gdk.Event" c:type="GdkEvent*"/>
70774           </parameter>
70775         </parameters>
70776       </method>
70777       <method name="send_focus_change"
70778               c:identifier="gtk_widget_send_focus_change"
70779               version="2.20">
70780         <doc xml:whitespace="preserve">Sends the focus change @event to @widget
70781 This function is not meant to be used by applications. The only time it
70782 should be used is when it is necessary for a #GtkWidget to assign focus
70783 to a widget that is semantically owned by the first widget even though
70784 it's not a direct child - for instance, a search entry in a floating
70785 window similar to the quick search in #GtkTreeView.
70786 An example of its usage is:
70787 |[
70788 GdkEvent *fevent = gdk_event_new (GDK_FOCUS_CHANGE);
70789 fevent-&gt;focus_change.type = GDK_FOCUS_CHANGE;
70790 fevent-&gt;focus_change.in = TRUE;
70791 fevent-&gt;focus_change.window = gtk_widget_get_window (widget);
70792 if (fevent-&gt;focus_change.window != NULL)
70793 g_object_ref (fevent-&gt;focus_change.window);
70794 gtk_widget_send_focus_change (widget, fevent);
70795 gdk_event_free (event);
70796 ]|
70797 if the event was handled, and %FALSE otherwise</doc>
70798         <return-value transfer-ownership="none">
70799           <doc xml:whitespace="preserve">the return value from the event signal emission: %TRUE</doc>
70800           <type name="gboolean" c:type="gboolean"/>
70801         </return-value>
70802         <parameters>
70803           <parameter name="event" transfer-ownership="none">
70804             <doc xml:whitespace="preserve">a #GdkEvent of type GDK_FOCUS_CHANGE</doc>
70805             <type name="Gdk.Event" c:type="GdkEvent*"/>
70806           </parameter>
70807         </parameters>
70808       </method>
70809       <method name="set_accel_path" c:identifier="gtk_widget_set_accel_path">
70810         <doc xml:whitespace="preserve">Given an accelerator group, @accel_group, and an accelerator path,
70811 key binding that is defined for @accel_path is pressed, @widget
70812 will be activated.  This removes any accelerators (for any
70813 accelerator group) installed by previous calls to
70814 gtk_widget_set_accel_path(). Associating accelerators with
70815 paths allows them to be modified by the user and the modifications
70816 to be saved for future use. (See gtk_accel_map_save().)
70817 This function is a low level function that would most likely
70818 be used by a menu creation system like #GtkUIManager. If you
70819 use #GtkUIManager, setting up accelerator paths will be done
70820 automatically.
70821 Even when you you aren't using #GtkUIManager, if you only want to
70822 set up accelerators on menu items gtk_menu_item_set_accel_path()
70823 provides a somewhat more convenient interface.
70824 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
70825 pass a static string, you can save some memory by interning it first with 
70826 g_intern_static_string().</doc>
70827         <return-value transfer-ownership="none">
70828           <type name="none" c:type="void"/>
70829         </return-value>
70830         <parameters>
70831           <parameter name="accel_path"
70832                      transfer-ownership="none"
70833                      allow-none="1">
70834             <doc xml:whitespace="preserve">path used to look up the accelerator</doc>
70835             <type name="utf8" c:type="gchar*"/>
70836           </parameter>
70837           <parameter name="accel_group"
70838                      transfer-ownership="none"
70839                      allow-none="1">
70840             <doc xml:whitespace="preserve">a #GtkAccelGroup.</doc>
70841             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
70842           </parameter>
70843         </parameters>
70844       </method>
70845       <method name="set_allocation"
70846               c:identifier="gtk_widget_set_allocation"
70847               version="2.18">
70848         <doc xml:whitespace="preserve">Sets the widget's allocation.  This should not be used
70849 directly, but from within a widget's size_allocate method.
70850 The allocation set should be the "adjusted" or actual
70851 allocation. If you're implementing a #GtkContainer, you want to use
70852 gtk_widget_size_allocate() instead of gtk_widget_set_allocation().
70853 The GtkWidgetClass::adjust_size_allocation virtual method adjusts the
70854 allocation inside gtk_widget_size_allocate() to create an adjusted
70855 allocation.</doc>
70856         <return-value transfer-ownership="none">
70857           <type name="none" c:type="void"/>
70858         </return-value>
70859         <parameters>
70860           <parameter name="allocation" transfer-ownership="none">
70861             <doc xml:whitespace="preserve">a pointer to a #GtkAllocation to copy from</doc>
70862             <type name="Allocation" c:type="GtkAllocation*"/>
70863           </parameter>
70864         </parameters>
70865       </method>
70866       <method name="set_app_paintable"
70867               c:identifier="gtk_widget_set_app_paintable">
70868         <doc xml:whitespace="preserve">Sets whether the application intends to draw on the widget in
70869 an #GtkWidget::expose-event handler. 
70870 This is a hint to the widget and does not affect the behavior of 
70871 the GTK+ core; many widgets ignore this flag entirely. For widgets 
70872 that do pay attention to the flag, such as #GtkEventBox and #GtkWindow, 
70873 the effect is to suppress default themed drawing of the widget's 
70874 background. (Children of the widget will still be drawn.) The application 
70875 is then entirely responsible for drawing the widget background.
70876 Note that the background is still drawn when the widget is mapped.
70877 If this is not suitable (e.g. because you want to make a transparent
70878 window using an RGBA visual), you can work around this by doing:
70879 |[
70880 gtk_widget_realize (window);
70881 gdk_window_set_back_pixmap (window-&gt;window, NULL, FALSE);
70882 gtk_widget_show (window);
70883 ]|</doc>
70884         <return-value transfer-ownership="none">
70885           <type name="none" c:type="void"/>
70886         </return-value>
70887         <parameters>
70888           <parameter name="app_paintable" transfer-ownership="none">
70889             <doc xml:whitespace="preserve">%TRUE if the application will paint on the widget</doc>
70890             <type name="gboolean" c:type="gboolean"/>
70891           </parameter>
70892         </parameters>
70893       </method>
70894       <method name="set_can_default"
70895               c:identifier="gtk_widget_set_can_default"
70896               version="2.18">
70897         <doc xml:whitespace="preserve">Specifies whether @widget can be a default widget. See
70898 gtk_widget_grab_default() for details about the meaning of
70899 "default".</doc>
70900         <return-value transfer-ownership="none">
70901           <type name="none" c:type="void"/>
70902         </return-value>
70903         <parameters>
70904           <parameter name="can_default" transfer-ownership="none">
70905             <doc xml:whitespace="preserve">whether or not @widget can be a default widget.</doc>
70906             <type name="gboolean" c:type="gboolean"/>
70907           </parameter>
70908         </parameters>
70909       </method>
70910       <method name="set_can_focus"
70911               c:identifier="gtk_widget_set_can_focus"
70912               version="2.18">
70913         <doc xml:whitespace="preserve">Specifies whether @widget can own the input focus. See
70914 gtk_widget_grab_focus() for actually setting the input focus on a
70915 widget.</doc>
70916         <return-value transfer-ownership="none">
70917           <type name="none" c:type="void"/>
70918         </return-value>
70919         <parameters>
70920           <parameter name="can_focus" transfer-ownership="none">
70921             <doc xml:whitespace="preserve">whether or not @widget can own the input focus.</doc>
70922             <type name="gboolean" c:type="gboolean"/>
70923           </parameter>
70924         </parameters>
70925       </method>
70926       <method name="set_child_visible"
70927               c:identifier="gtk_widget_set_child_visible">
70928         <doc xml:whitespace="preserve">Sets whether @widget should be mapped along with its when its parent
70929 is mapped and @widget has been shown with gtk_widget_show(). 
70930 The child visibility can be set for widget before it is added to
70931 a container with gtk_widget_set_parent(), to avoid mapping
70932 children unnecessary before immediately unmapping them. However
70933 it will be reset to its default state of %TRUE when the widget
70934 is removed from a container.
70935 Note that changing the child visibility of a widget does not
70936 queue a resize on the widget. Most of the time, the size of
70937 a widget is computed from all visible children, whether or
70938 not they are mapped. If this is not the case, the container
70939 can queue a resize itself.
70940 This function is only useful for container implementations and
70941 never should be called by an application.</doc>
70942         <return-value transfer-ownership="none">
70943           <type name="none" c:type="void"/>
70944         </return-value>
70945         <parameters>
70946           <parameter name="is_visible" transfer-ownership="none">
70947             <doc xml:whitespace="preserve">if %TRUE, @widget should be mapped along with its parent.</doc>
70948             <type name="gboolean" c:type="gboolean"/>
70949           </parameter>
70950         </parameters>
70951       </method>
70952       <method name="set_colormap" c:identifier="gtk_widget_set_colormap">
70953         <doc xml:whitespace="preserve">Sets the colormap for the widget to the given value. Widget must not
70954 have been previously realized. This probably should only be used
70955 from an &lt;function&gt;init()&lt;/function&gt; function (i.e. from the constructor 
70956 for the widget).</doc>
70957         <return-value transfer-ownership="none">
70958           <type name="none" c:type="void"/>
70959         </return-value>
70960         <parameters>
70961           <parameter name="colormap" transfer-ownership="none">
70962             <doc xml:whitespace="preserve">a colormap</doc>
70963             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
70964           </parameter>
70965         </parameters>
70966       </method>
70967       <method name="set_composite_name"
70968               c:identifier="gtk_widget_set_composite_name">
70969         <doc xml:whitespace="preserve">Sets a widgets composite name. The widget must be
70970 a composite child of its parent; see gtk_widget_push_composite_child().</doc>
70971         <return-value transfer-ownership="none">
70972           <type name="none" c:type="void"/>
70973         </return-value>
70974         <parameters>
70975           <parameter name="name" transfer-ownership="none">
70976             <doc xml:whitespace="preserve">the name to set</doc>
70977             <type name="utf8" c:type="gchar*"/>
70978           </parameter>
70979         </parameters>
70980       </method>
70981       <method name="set_device_events"
70982               c:identifier="gtk_widget_set_device_events"
70983               version="3.0">
70984         <doc xml:whitespace="preserve">Sets the device event mask (see #GdkEventMask) for a widget. The event
70985 mask determines which events a widget will receive from @device. Keep
70986 in mind that different widgets have different default event masks, and by
70987 changing the event mask you may disrupt a widget's functionality,
70988 so be careful. This function must be called while a widget is
70989 unrealized. Consider gtk_widget_add_device_events() for widgets that are
70990 already realized, or if you want to preserve the existing event
70991 mask. This function can't be used with #GTK_NO_WINDOW widgets;
70992 to get events on those widgets, place them inside a #GtkEventBox
70993 and receive events on the event box.</doc>
70994         <return-value transfer-ownership="none">
70995           <type name="none" c:type="void"/>
70996         </return-value>
70997         <parameters>
70998           <parameter name="device" transfer-ownership="none">
70999             <doc xml:whitespace="preserve">a #GdkDevice</doc>
71000             <type name="Gdk.Device" c:type="GdkDevice*"/>
71001           </parameter>
71002           <parameter name="events" transfer-ownership="none">
71003             <doc xml:whitespace="preserve">event mask</doc>
71004             <type name="Gdk.EventMask" c:type="GdkEventMask"/>
71005           </parameter>
71006         </parameters>
71007       </method>
71008       <method name="set_direction" c:identifier="gtk_widget_set_direction">
71009         <doc xml:whitespace="preserve">Sets the reading direction on a particular widget. This direction
71010 controls the primary direction for widgets containing text,
71011 and also the direction in which the children of a container are
71012 packed. The ability to set the direction is present in order
71013 so that correct localization into languages with right-to-left
71014 reading directions can be done. Generally, applications will
71015 let the default reading direction present, except for containers
71016 where the containers are arranged in an order that is explicitely
71017 visual rather than logical (such as buttons for text justification).
71018 If the direction is set to %GTK_TEXT_DIR_NONE, then the value
71019 set by gtk_widget_set_default_direction() will be used.</doc>
71020         <return-value transfer-ownership="none">
71021           <type name="none" c:type="void"/>
71022         </return-value>
71023         <parameters>
71024           <parameter name="dir" transfer-ownership="none">
71025             <doc xml:whitespace="preserve">the new direction</doc>
71026             <type name="TextDirection" c:type="GtkTextDirection"/>
71027           </parameter>
71028         </parameters>
71029       </method>
71030       <method name="set_double_buffered"
71031               c:identifier="gtk_widget_set_double_buffered">
71032         <doc xml:whitespace="preserve">Widgets are double buffered by default; you can use this function
71033 to turn off the buffering. "Double buffered" simply means that
71034 gdk_window_begin_paint_region() and gdk_window_end_paint() are called
71035 automatically around expose events sent to the
71036 widget. gdk_window_begin_paint() diverts all drawing to a widget's
71037 window to an offscreen buffer, and gdk_window_end_paint() draws the
71038 buffer to the screen. The result is that users see the window
71039 update in one smooth step, and don't see individual graphics
71040 primitives being rendered.
71041 In very simple terms, double buffered widgets don't flicker,
71042 so you would only use this function to turn off double buffering
71043 if you had special needs and really knew what you were doing.
71044 expose events, since even the clearing to the background color or 
71045 pixmap will not happen automatically (as it is done in 
71046 gdk_window_begin_paint()).</doc>
71047         <return-value transfer-ownership="none">
71048           <type name="none" c:type="void"/>
71049         </return-value>
71050         <parameters>
71051           <parameter name="double_buffered" transfer-ownership="none">
71052             <doc xml:whitespace="preserve">%TRUE to double-buffer a widget</doc>
71053             <type name="gboolean" c:type="gboolean"/>
71054           </parameter>
71055         </parameters>
71056       </method>
71057       <method name="set_events" c:identifier="gtk_widget_set_events">
71058         <doc xml:whitespace="preserve">Sets the event mask (see #GdkEventMask) for a widget. The event
71059 mask determines which events a widget will receive. Keep in mind
71060 that different widgets have different default event masks, and by
71061 changing the event mask you may disrupt a widget's functionality,
71062 so be careful. This function must be called while a widget is
71063 unrealized. Consider gtk_widget_add_events() for widgets that are
71064 already realized, or if you want to preserve the existing event
71065 mask. This function can't be used with #GTK_NO_WINDOW widgets;
71066 to get events on those widgets, place them inside a #GtkEventBox
71067 and receive events on the event box.</doc>
71068         <return-value transfer-ownership="none">
71069           <type name="none" c:type="void"/>
71070         </return-value>
71071         <parameters>
71072           <parameter name="events" transfer-ownership="none">
71073             <doc xml:whitespace="preserve">event mask</doc>
71074             <type name="gint" c:type="gint"/>
71075           </parameter>
71076         </parameters>
71077       </method>
71078       <method name="set_extension_events"
71079               c:identifier="gtk_widget_set_extension_events">
71080         <doc xml:whitespace="preserve">Sets the extension events mask to @mode. See #GdkExtensionMode
71081 and gdk_input_set_extension_events().</doc>
71082         <return-value transfer-ownership="none">
71083           <type name="none" c:type="void"/>
71084         </return-value>
71085         <parameters>
71086           <parameter name="mode" transfer-ownership="none">
71087             <doc xml:whitespace="preserve">bitfield of extension events to receive</doc>
71088             <type name="Gdk.ExtensionMode" c:type="GdkExtensionMode"/>
71089           </parameter>
71090         </parameters>
71091       </method>
71092       <method name="set_halign" c:identifier="gtk_widget_set_halign">
71093         <doc xml:whitespace="preserve">Sets the horizontal alignment of @widget.
71094 See the #GtkWidget:halign property.</doc>
71095         <return-value transfer-ownership="none">
71096           <type name="none" c:type="void"/>
71097         </return-value>
71098         <parameters>
71099           <parameter name="align" transfer-ownership="none">
71100             <doc xml:whitespace="preserve">the horizontal alignment</doc>
71101             <type name="Align" c:type="GtkAlign"/>
71102           </parameter>
71103         </parameters>
71104       </method>
71105       <method name="set_has_tooltip"
71106               c:identifier="gtk_widget_set_has_tooltip"
71107               version="2.12">
71108         <doc xml:whitespace="preserve">Sets the has-tooltip property on @widget to @has_tooltip.  See
71109 GtkWidget:has-tooltip for more information.</doc>
71110         <return-value transfer-ownership="none">
71111           <type name="none" c:type="void"/>
71112         </return-value>
71113         <parameters>
71114           <parameter name="has_tooltip" transfer-ownership="none">
71115             <doc xml:whitespace="preserve">whether or not @widget has a tooltip.</doc>
71116             <type name="gboolean" c:type="gboolean"/>
71117           </parameter>
71118         </parameters>
71119       </method>
71120       <method name="set_has_window"
71121               c:identifier="gtk_widget_set_has_window"
71122               version="2.18">
71123         <doc xml:whitespace="preserve">Specifies whether @widget has a #GdkWindow of its own. Note that
71124 all realized widgets have a non-%NULL "window" pointer
71125 (gtk_widget_get_window() never returns a %NULL window when a widget
71126 is realized), but for many of them it's actually the #GdkWindow of
71127 one of its parent widgets. Widgets that do not create a %window for
71128 themselves in GtkWidget::realize() must announce this by
71129 calling this function with @has_window = %FALSE.
71130 This function should only be called by widget implementations,
71131 and they should call it in their init() function.</doc>
71132         <return-value transfer-ownership="none">
71133           <type name="none" c:type="void"/>
71134         </return-value>
71135         <parameters>
71136           <parameter name="has_window" transfer-ownership="none">
71137             <doc xml:whitespace="preserve">whether or not @widget has a window.</doc>
71138             <type name="gboolean" c:type="gboolean"/>
71139           </parameter>
71140         </parameters>
71141       </method>
71142       <method name="set_mapped"
71143               c:identifier="gtk_widget_set_mapped"
71144               version="2.20">
71145         <doc xml:whitespace="preserve">Marks the widget as being realized.
71146 This function should only ever be called in a derived widget's
71147 "map" or "unmap" implementation.</doc>
71148         <return-value transfer-ownership="none">
71149           <type name="none" c:type="void"/>
71150         </return-value>
71151         <parameters>
71152           <parameter name="mapped" transfer-ownership="none">
71153             <doc xml:whitespace="preserve">%TRUE to mark the widget as mapped</doc>
71154             <type name="gboolean" c:type="gboolean"/>
71155           </parameter>
71156         </parameters>
71157       </method>
71158       <method name="set_margin_bottom"
71159               c:identifier="gtk_widget_set_margin_bottom">
71160         <doc xml:whitespace="preserve">Sets the bottom margin of @widget.
71161 See the #GtkWidget:margin-bottom property.</doc>
71162         <return-value transfer-ownership="none">
71163           <type name="none" c:type="void"/>
71164         </return-value>
71165         <parameters>
71166           <parameter name="margin" transfer-ownership="none">
71167             <doc xml:whitespace="preserve">the bottom margin</doc>
71168             <type name="gint" c:type="gint"/>
71169           </parameter>
71170         </parameters>
71171       </method>
71172       <method name="set_margin_left" c:identifier="gtk_widget_set_margin_left">
71173         <doc xml:whitespace="preserve">Sets the left margin of @widget.
71174 See the #GtkWidget:margin-left property.</doc>
71175         <return-value transfer-ownership="none">
71176           <type name="none" c:type="void"/>
71177         </return-value>
71178         <parameters>
71179           <parameter name="margin" transfer-ownership="none">
71180             <doc xml:whitespace="preserve">the left margin</doc>
71181             <type name="gint" c:type="gint"/>
71182           </parameter>
71183         </parameters>
71184       </method>
71185       <method name="set_margin_right"
71186               c:identifier="gtk_widget_set_margin_right">
71187         <doc xml:whitespace="preserve">Sets the right margin of @widget.
71188 See the #GtkWidget:margin-right property.</doc>
71189         <return-value transfer-ownership="none">
71190           <type name="none" c:type="void"/>
71191         </return-value>
71192         <parameters>
71193           <parameter name="margin" transfer-ownership="none">
71194             <doc xml:whitespace="preserve">the right margin</doc>
71195             <type name="gint" c:type="gint"/>
71196           </parameter>
71197         </parameters>
71198       </method>
71199       <method name="set_margin_top" c:identifier="gtk_widget_set_margin_top">
71200         <doc xml:whitespace="preserve">Sets the top margin of @widget.
71201 See the #GtkWidget:margin-top property.</doc>
71202         <return-value transfer-ownership="none">
71203           <type name="none" c:type="void"/>
71204         </return-value>
71205         <parameters>
71206           <parameter name="margin" transfer-ownership="none">
71207             <doc xml:whitespace="preserve">the top margin</doc>
71208             <type name="gint" c:type="gint"/>
71209           </parameter>
71210         </parameters>
71211       </method>
71212       <method name="set_name" c:identifier="gtk_widget_set_name">
71213         <doc xml:whitespace="preserve">Widgets can be named, which allows you to refer to them from a
71214 gtkrc file. You can apply a style to widgets with a particular name
71215 in the gtkrc file. See the documentation for gtkrc files (on the
71216 same page as the docs for #GtkRcStyle).
71217 Note that widget names are separated by periods in paths (see 
71218 gtk_widget_path()), so names with embedded periods may cause confusion.</doc>
71219         <return-value transfer-ownership="none">
71220           <type name="none" c:type="void"/>
71221         </return-value>
71222         <parameters>
71223           <parameter name="name" transfer-ownership="none">
71224             <doc xml:whitespace="preserve">name for the widget</doc>
71225             <type name="utf8" c:type="gchar*"/>
71226           </parameter>
71227         </parameters>
71228       </method>
71229       <method name="set_no_show_all"
71230               c:identifier="gtk_widget_set_no_show_all"
71231               version="2.4">
71232         <doc xml:whitespace="preserve">Sets the #GtkWidget:no-show-all property, which determines whether 
71233 calls to gtk_widget_show_all() and gtk_widget_hide_all() will affect 
71234 this widget. 
71235 This is mostly for use in constructing widget hierarchies with externally
71236 controlled visibility, see #GtkUIManager.</doc>
71237         <return-value transfer-ownership="none">
71238           <type name="none" c:type="void"/>
71239         </return-value>
71240         <parameters>
71241           <parameter name="no_show_all" transfer-ownership="none">
71242             <doc xml:whitespace="preserve">the new value for the "no-show-all" property</doc>
71243             <type name="gboolean" c:type="gboolean"/>
71244           </parameter>
71245         </parameters>
71246       </method>
71247       <method name="set_parent" c:identifier="gtk_widget_set_parent">
71248         <doc xml:whitespace="preserve">This function is useful only when implementing subclasses of 
71249 #GtkContainer.
71250 Sets the container as the parent of @widget, and takes care of
71251 some details such as updating the state and style of the child
71252 to reflect its new location. The opposite function is
71253 gtk_widget_unparent().</doc>
71254         <return-value transfer-ownership="none">
71255           <type name="none" c:type="void"/>
71256         </return-value>
71257         <parameters>
71258           <parameter name="parent" transfer-ownership="none">
71259             <doc xml:whitespace="preserve">parent container</doc>
71260             <type name="Widget" c:type="GtkWidget*"/>
71261           </parameter>
71262         </parameters>
71263       </method>
71264       <method name="set_parent_window"
71265               c:identifier="gtk_widget_set_parent_window">
71266         <doc xml:whitespace="preserve">Sets a non default parent window for @widget.</doc>
71267         <return-value transfer-ownership="none">
71268           <type name="none" c:type="void"/>
71269         </return-value>
71270         <parameters>
71271           <parameter name="parent_window" transfer-ownership="none">
71272             <doc xml:whitespace="preserve">the new parent window.</doc>
71273             <type name="Gdk.Window" c:type="GdkWindow*"/>
71274           </parameter>
71275         </parameters>
71276       </method>
71277       <method name="set_realized"
71278               c:identifier="gtk_widget_set_realized"
71279               version="2.20">
71280         <doc xml:whitespace="preserve">Marks the widget as being realized.
71281 This function should only ever be called in a derived widget's
71282 "realize" or "unrealize" implementation.</doc>
71283         <return-value transfer-ownership="none">
71284           <type name="none" c:type="void"/>
71285         </return-value>
71286         <parameters>
71287           <parameter name="realized" transfer-ownership="none">
71288             <doc xml:whitespace="preserve">%TRUE to mark the widget as realized</doc>
71289             <type name="gboolean" c:type="gboolean"/>
71290           </parameter>
71291         </parameters>
71292       </method>
71293       <method name="set_receives_default"
71294               c:identifier="gtk_widget_set_receives_default"
71295               version="2.18">
71296         <doc xml:whitespace="preserve">Specifies whether @widget will be treated as the default widget
71297 within its toplevel when it has the focus, even if another widget
71298 is the default.
71299 See gtk_widget_grab_default() for details about the meaning of
71300 "default".</doc>
71301         <return-value transfer-ownership="none">
71302           <type name="none" c:type="void"/>
71303         </return-value>
71304         <parameters>
71305           <parameter name="receives_default" transfer-ownership="none">
71306             <doc xml:whitespace="preserve">whether or not @widget can be a default widget.</doc>
71307             <type name="gboolean" c:type="gboolean"/>
71308           </parameter>
71309         </parameters>
71310       </method>
71311       <method name="set_redraw_on_allocate"
71312               c:identifier="gtk_widget_set_redraw_on_allocate">
71313         <doc xml:whitespace="preserve">Sets whether the entire widget is queued for drawing when its size 
71314 allocation changes. By default, this setting is %TRUE and
71315 the entire widget is redrawn on every size change. If your widget
71316 leaves the upper left unchanged when made bigger, turning this
71317 setting off will improve performance.
71318 Note that for %NO_WINDOW widgets setting this flag to %FALSE turns
71319 its position changes; this is to allow containers that don't draw
71320 anything to avoid excess invalidations. If you set this flag on a
71321 %NO_WINDOW widget that &lt;emphasis&gt;does&lt;/emphasis&gt; draw on @widget-&gt;window, 
71322 you are responsible for invalidating both the old and new allocation 
71323 of the widget when the widget is moved and responsible for invalidating
71324 regions newly when the widget increases size.</doc>
71325         <return-value transfer-ownership="none">
71326           <type name="none" c:type="void"/>
71327         </return-value>
71328         <parameters>
71329           <parameter name="redraw_on_allocate" transfer-ownership="none">
71330             <doc xml:whitespace="preserve">if %TRUE, the entire widget will be redrawn when it is allocated to a new size. Otherwise, only the new portion of the widget will be redrawn.</doc>
71331             <type name="gboolean" c:type="gboolean"/>
71332           </parameter>
71333         </parameters>
71334       </method>
71335       <method name="set_scroll_adjustments"
71336               c:identifier="gtk_widget_set_scroll_adjustments">
71337         <doc xml:whitespace="preserve">For widgets that support scrolling, sets the scroll adjustments and
71338 returns %TRUE.  For widgets that don't support scrolling, does
71339 nothing and returns %FALSE. Widgets that don't support scrolling
71340 can be scrolled by placing them in a #GtkViewport, which does
71341 support scrolling.</doc>
71342         <return-value transfer-ownership="none">
71343           <doc xml:whitespace="preserve">%TRUE if the widget supports scrolling</doc>
71344           <type name="gboolean" c:type="gboolean"/>
71345         </return-value>
71346         <parameters>
71347           <parameter name="hadjustment"
71348                      transfer-ownership="none"
71349                      allow-none="1">
71350             <doc xml:whitespace="preserve">an adjustment for horizontal scrolling, or %NULL</doc>
71351             <type name="Adjustment" c:type="GtkAdjustment*"/>
71352           </parameter>
71353           <parameter name="vadjustment"
71354                      transfer-ownership="none"
71355                      allow-none="1">
71356             <doc xml:whitespace="preserve">an adjustment for vertical scrolling, or %NULL</doc>
71357             <type name="Adjustment" c:type="GtkAdjustment*"/>
71358           </parameter>
71359         </parameters>
71360       </method>
71361       <method name="set_sensitive" c:identifier="gtk_widget_set_sensitive">
71362         <doc xml:whitespace="preserve">Sets the sensitivity of a widget. A widget is sensitive if the user
71363 can interact with it. Insensitive widgets are "grayed out" and the
71364 user can't interact with them. Insensitive widgets are known as
71365 "inactive", "disabled", or "ghosted" in some other toolkits.</doc>
71366         <return-value transfer-ownership="none">
71367           <type name="none" c:type="void"/>
71368         </return-value>
71369         <parameters>
71370           <parameter name="sensitive" transfer-ownership="none">
71371             <doc xml:whitespace="preserve">%TRUE to make the widget sensitive</doc>
71372             <type name="gboolean" c:type="gboolean"/>
71373           </parameter>
71374         </parameters>
71375       </method>
71376       <method name="set_size_request"
71377               c:identifier="gtk_widget_set_size_request">
71378         <doc xml:whitespace="preserve">Sets the minimum size of a widget; that is, the widget's size
71379 request will be @width by @height. You can use this function to
71380 force a widget to be either larger or smaller than it normally
71381 would be.
71382 In most cases, gtk_window_set_default_size() is a better choice for
71383 toplevel windows than this function; setting the default size will
71384 still allow users to shrink the window. Setting the size request
71385 will force them to leave the window at least as large as the size
71386 request. When dealing with window sizes,
71387 gtk_window_set_geometry_hints() can be a useful function as well.
71388 Note the inherent danger of setting any fixed size - themes,
71389 translations into other languages, different fonts, and user action
71390 can all change the appropriate size for a given widget. So, it's
71391 basically impossible to hardcode a size that will always be
71392 correct.
71393 The size request of a widget is the smallest size a widget can
71394 accept while still functioning well and drawing itself correctly.
71395 However in some strange cases a widget may be allocated less than
71396 its requested size, and in many cases a widget may be allocated more
71397 space than it requested.
71398 If the size request in a given direction is -1 (unset), then
71399 the "natural" size request of the widget will be used instead.
71400 Widgets can't actually be allocated a size less than 1 by 1, but
71401 you can pass 0,0 to this function to mean "as small as possible."
71402 The size request set here does not include any margin from the
71403 #GtkWidget properties margin-left, margin-right, margin-top, and
71404 margin-bottom, but it does include pretty much all other padding
71405 or border properties set by any subclass of #GtkWidget.</doc>
71406         <return-value transfer-ownership="none">
71407           <type name="none" c:type="void"/>
71408         </return-value>
71409         <parameters>
71410           <parameter name="width" transfer-ownership="none">
71411             <doc xml:whitespace="preserve">width @widget should request, or -1 to unset</doc>
71412             <type name="gint" c:type="gint"/>
71413           </parameter>
71414           <parameter name="height" transfer-ownership="none">
71415             <doc xml:whitespace="preserve">height @widget should request, or -1 to unset</doc>
71416             <type name="gint" c:type="gint"/>
71417           </parameter>
71418         </parameters>
71419       </method>
71420       <method name="set_state" c:identifier="gtk_widget_set_state">
71421         <doc xml:whitespace="preserve">This function is for use in widget implementations. Sets the state
71422 of a widget (insensitive, prelighted, etc.) Usually you should set
71423 the state using wrapper functions such as gtk_widget_set_sensitive().</doc>
71424         <return-value transfer-ownership="none">
71425           <type name="none" c:type="void"/>
71426         </return-value>
71427         <parameters>
71428           <parameter name="state" transfer-ownership="none">
71429             <doc xml:whitespace="preserve">new state for @widget</doc>
71430             <type name="StateType" c:type="GtkStateType"/>
71431           </parameter>
71432         </parameters>
71433       </method>
71434       <method name="set_style" c:identifier="gtk_widget_set_style">
71435         <doc xml:whitespace="preserve">Sets the #GtkStyle for a widget (@widget-&gt;style). You probably don't
71436 want to use this function; it interacts badly with themes, because
71437 themes work by replacing the #GtkStyle. Instead, use
71438 gtk_widget_modify_style().</doc>
71439         <return-value transfer-ownership="none">
71440           <type name="none" c:type="void"/>
71441         </return-value>
71442         <parameters>
71443           <parameter name="style" transfer-ownership="none" allow-none="1">
71444             <doc xml:whitespace="preserve">a #GtkStyle, or %NULL to remove the effect of a previous gtk_widget_set_style() and go back to the default style</doc>
71445             <type name="Style" c:type="GtkStyle*"/>
71446           </parameter>
71447         </parameters>
71448       </method>
71449       <method name="set_support_multidevice"
71450               c:identifier="gtk_widget_set_support_multidevice"
71451               version="3.0">
71452         <doc xml:whitespace="preserve">Enables or disables multiple pointer awareness. If this setting is %TRUE,
71453 that if custom #GdkWindow&lt;!-- --&gt;s are created in #GtkWidget::realize,
71454 gdk_window_set_support_multidevice() will have to be called manually on them.</doc>
71455         <return-value transfer-ownership="none">
71456           <type name="none" c:type="void"/>
71457         </return-value>
71458         <parameters>
71459           <parameter name="support_multidevice" transfer-ownership="none">
71460             <doc xml:whitespace="preserve">%TRUE to support input from multiple devices.</doc>
71461             <type name="gboolean" c:type="gboolean"/>
71462           </parameter>
71463         </parameters>
71464       </method>
71465       <method name="set_tooltip_markup"
71466               c:identifier="gtk_widget_set_tooltip_markup"
71467               version="2.12">
71468         <doc xml:whitespace="preserve">Sets @markup as the contents of the tooltip, which is marked up with
71469 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
71470 This function will take care of setting GtkWidget:has-tooltip to %TRUE
71471 and of the default handler for the GtkWidget::query-tooltip signal.
71472 See also the GtkWidget:tooltip-markup property and
71473 gtk_tooltip_set_markup().</doc>
71474         <return-value transfer-ownership="none">
71475           <type name="none" c:type="void"/>
71476         </return-value>
71477         <parameters>
71478           <parameter name="markup" transfer-ownership="none" allow-none="1">
71479             <doc xml:whitespace="preserve">the contents of the tooltip for @widget, or %NULL</doc>
71480             <type name="utf8" c:type="gchar*"/>
71481           </parameter>
71482         </parameters>
71483       </method>
71484       <method name="set_tooltip_text"
71485               c:identifier="gtk_widget_set_tooltip_text"
71486               version="2.12">
71487         <doc xml:whitespace="preserve">Sets @text as the contents of the tooltip. This function will take
71488 care of setting GtkWidget:has-tooltip to %TRUE and of the default
71489 handler for the GtkWidget::query-tooltip signal.
71490 See also the GtkWidget:tooltip-text property and gtk_tooltip_set_text().</doc>
71491         <return-value transfer-ownership="none">
71492           <type name="none" c:type="void"/>
71493         </return-value>
71494         <parameters>
71495           <parameter name="text" transfer-ownership="none">
71496             <doc xml:whitespace="preserve">the contents of the tooltip for @widget</doc>
71497             <type name="utf8" c:type="gchar*"/>
71498           </parameter>
71499         </parameters>
71500       </method>
71501       <method name="set_tooltip_window"
71502               c:identifier="gtk_widget_set_tooltip_window"
71503               version="2.12">
71504         <doc xml:whitespace="preserve">Replaces the default, usually yellow, window used for displaying
71505 tooltips with @custom_window. GTK+ will take care of showing and
71506 hiding @custom_window at the right moment, to behave likewise as
71507 the default tooltip window. If @custom_window is %NULL, the default
71508 tooltip window will be used.
71509 If the custom window should have the default theming it needs to
71510 have the name "gtk-tooltip", see gtk_widget_set_name().</doc>
71511         <return-value transfer-ownership="none">
71512           <type name="none" c:type="void"/>
71513         </return-value>
71514         <parameters>
71515           <parameter name="custom_window"
71516                      transfer-ownership="none"
71517                      allow-none="1">
71518             <doc xml:whitespace="preserve">a #GtkWindow, or %NULL</doc>
71519             <type name="Window" c:type="GtkWindow*"/>
71520           </parameter>
71521         </parameters>
71522       </method>
71523       <method name="set_valign" c:identifier="gtk_widget_set_valign">
71524         <doc xml:whitespace="preserve">Sets the vertical alignment of @widget.
71525 See the #GtkWidget:valign property.</doc>
71526         <return-value transfer-ownership="none">
71527           <type name="none" c:type="void"/>
71528         </return-value>
71529         <parameters>
71530           <parameter name="align" transfer-ownership="none">
71531             <doc xml:whitespace="preserve">the vertical alignment</doc>
71532             <type name="Align" c:type="GtkAlign"/>
71533           </parameter>
71534         </parameters>
71535       </method>
71536       <method name="set_visible"
71537               c:identifier="gtk_widget_set_visible"
71538               version="2.18">
71539         <doc xml:whitespace="preserve">Sets the visibility state of @widget. Note that setting this to
71540 %TRUE doesn't mean the widget is actually viewable, see
71541 gtk_widget_get_visible().
71542 This function simply calls gtk_widget_show() or gtk_widget_hide()
71543 but is nicer to use when the visibility of the widget depends on
71544 some condition.</doc>
71545         <return-value transfer-ownership="none">
71546           <type name="none" c:type="void"/>
71547         </return-value>
71548         <parameters>
71549           <parameter name="visible" transfer-ownership="none">
71550             <doc xml:whitespace="preserve">whether the widget should be shown or not</doc>
71551             <type name="gboolean" c:type="gboolean"/>
71552           </parameter>
71553         </parameters>
71554       </method>
71555       <method name="set_window"
71556               c:identifier="gtk_widget_set_window"
71557               version="2.18">
71558         <doc xml:whitespace="preserve">Sets a widget's window. This function should only be used in a
71559 widget's GtkWidget::realize() implementation. The %window passed is
71560 usually either new window created with gdk_window_new(), or the
71561 window of its parent widget as returned by
71562 gtk_widget_get_parent_window().
71563 Widgets must indicate whether they will create their own #GdkWindow
71564 by calling gtk_widget_set_has_window(). This is usually done in the
71565 widget's init() function.
71566 &lt;note&gt;&lt;para&gt;This function does not add any reference to @window.&lt;/para&gt;&lt;/note&gt;</doc>
71567         <return-value transfer-ownership="none">
71568           <type name="none" c:type="void"/>
71569         </return-value>
71570         <parameters>
71571           <parameter name="window" transfer-ownership="none">
71572             <doc xml:whitespace="preserve">a #GdkWindow</doc>
71573             <type name="Gdk.Window" c:type="GdkWindow*"/>
71574           </parameter>
71575         </parameters>
71576       </method>
71577       <method name="shape_combine_mask"
71578               c:identifier="gtk_widget_shape_combine_mask">
71579         <doc xml:whitespace="preserve">Sets a shape for this widget's GDK window. This allows for
71580 transparent windows etc., see gdk_window_shape_combine_mask()
71581 for more information.</doc>
71582         <return-value transfer-ownership="none">
71583           <type name="none" c:type="void"/>
71584         </return-value>
71585         <parameters>
71586           <parameter name="shape_mask"
71587                      transfer-ownership="none"
71588                      allow-none="1">
71589             <doc xml:whitespace="preserve">shape to be added, or %NULL to remove an existing shape</doc>
71590             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
71591           </parameter>
71592           <parameter name="offset_x" transfer-ownership="none">
71593             <doc xml:whitespace="preserve">X position of shape mask with respect to @window</doc>
71594             <type name="gint" c:type="gint"/>
71595           </parameter>
71596           <parameter name="offset_y" transfer-ownership="none">
71597             <doc xml:whitespace="preserve">Y position of shape mask with respect to @window</doc>
71598             <type name="gint" c:type="gint"/>
71599           </parameter>
71600         </parameters>
71601       </method>
71602       <method name="show" c:identifier="gtk_widget_show">
71603         <doc xml:whitespace="preserve">Flags a widget to be displayed. Any widget that isn't shown will
71604 not appear on the screen. If you want to show all the widgets in a
71605 container, it's easier to call gtk_widget_show_all() on the
71606 container, instead of individually showing the widgets.
71607 Remember that you have to show the containers containing a widget,
71608 in addition to the widget itself, before it will appear onscreen.
71609 When a toplevel container is shown, it is immediately realized and
71610 mapped; other shown widgets are realized and mapped when their
71611 toplevel container is realized and mapped.</doc>
71612         <return-value transfer-ownership="none">
71613           <type name="none" c:type="void"/>
71614         </return-value>
71615       </method>
71616       <method name="show_all" c:identifier="gtk_widget_show_all">
71617         <doc xml:whitespace="preserve">Recursively shows a widget, and any child widgets (if the widget is
71618 a container).</doc>
71619         <return-value transfer-ownership="none">
71620           <type name="none" c:type="void"/>
71621         </return-value>
71622       </method>
71623       <method name="show_now" c:identifier="gtk_widget_show_now">
71624         <doc xml:whitespace="preserve">Shows a widget. If the widget is an unmapped toplevel widget
71625 (i.e. a #GtkWindow that has not yet been shown), enter the main
71626 loop and wait for the window to actually be mapped. Be careful;
71627 because the main loop is running, anything can happen during
71628 this function.</doc>
71629         <return-value transfer-ownership="none">
71630           <type name="none" c:type="void"/>
71631         </return-value>
71632       </method>
71633       <method name="size_allocate" c:identifier="gtk_widget_size_allocate">
71634         <doc xml:whitespace="preserve">This function is only used by #GtkContainer subclasses, to assign a size
71635 and position to their child widgets.
71636 In this function, the allocation may be adjusted. It will be forced
71637 to a 1x1 minimum size, and the adjust_size_allocation virtual
71638 method on the child will be used to adjust the allocation. Standard
71639 adjustments include removing the widget's margins, and applying the
71640 widget's #GtkWidget:halign and #GtkWidget:valign properties.</doc>
71641         <return-value transfer-ownership="none">
71642           <type name="none" c:type="void"/>
71643         </return-value>
71644         <parameters>
71645           <parameter name="allocation"
71646                      direction="inout"
71647                      caller-allocates="0"
71648                      transfer-ownership="full">
71649             <doc xml:whitespace="preserve">position and size to be allocated to @widget</doc>
71650             <type name="Allocation" c:type="GtkAllocation*"/>
71651           </parameter>
71652         </parameters>
71653       </method>
71654       <method name="size_request"
71655               c:identifier="gtk_widget_size_request"
71656               deprecated="Use gtk_size_request_get_size() instead."
71657               deprecated-version="3.0">
71658         <doc xml:whitespace="preserve">This function is typically used when implementing a #GtkContainer
71659 subclass.  Obtains the preferred size of a widget. The container
71660 uses this information to arrange its child widgets and decide what
71661 size allocations to give them with gtk_widget_size_allocate().
71662 You can also call this function from an application, with some
71663 caveats. Most notably, getting a size request requires the widget
71664 to be associated with a screen, because font information may be
71665 needed. Multihead-aware applications should keep this in mind.
71666 Also remember that the size request is not necessarily the size
71667 a widget will actually be allocated.</doc>
71668         <return-value transfer-ownership="none">
71669           <type name="none" c:type="void"/>
71670         </return-value>
71671         <parameters>
71672           <parameter name="requisition"
71673                      direction="out"
71674                      caller-allocates="1"
71675                      transfer-ownership="none">
71676             <doc xml:whitespace="preserve">a #GtkRequisition to be filled in</doc>
71677             <type name="Requisition" c:type="GtkRequisition*"/>
71678           </parameter>
71679         </parameters>
71680       </method>
71681       <method name="style_attach"
71682               c:identifier="gtk_widget_style_attach"
71683               version="2.20">
71684         <doc xml:whitespace="preserve">This function attaches the widget's #GtkStyle to the widget's
71685 #GdkWindow. It is a replacement for
71686 &lt;programlisting&gt;
71687 widget-&gt;style = gtk_style_attach (widget-&gt;style, widget-&gt;window);
71688 &lt;/programlisting&gt;
71689 and should only ever be called in a derived widget's "realize"
71690 implementation which does not chain up to its parent class'
71691 "realize" implementation, because one of the parent classes
71692 (finally #GtkWidget) would attach the style itself.</doc>
71693         <return-value transfer-ownership="none">
71694           <type name="none" c:type="void"/>
71695         </return-value>
71696       </method>
71697       <method name="style_get"
71698               c:identifier="gtk_widget_style_get"
71699               introspectable="0">
71700         <doc xml:whitespace="preserve">Gets the values of a multiple style properties of @widget.</doc>
71701         <return-value transfer-ownership="none">
71702           <type name="none" c:type="void"/>
71703         </return-value>
71704         <parameters>
71705           <parameter name="first_property_name" transfer-ownership="none">
71706             <doc xml:whitespace="preserve">the name of the first property to get</doc>
71707             <type name="utf8" c:type="gchar*"/>
71708           </parameter>
71709           <parameter transfer-ownership="none">
71710             <varargs>
71711             </varargs>
71712           </parameter>
71713         </parameters>
71714       </method>
71715       <method name="style_get_property"
71716               c:identifier="gtk_widget_style_get_property">
71717         <doc xml:whitespace="preserve">Gets the value of a style property of @widget.</doc>
71718         <return-value transfer-ownership="none">
71719           <type name="none" c:type="void"/>
71720         </return-value>
71721         <parameters>
71722           <parameter name="property_name" transfer-ownership="none">
71723             <doc xml:whitespace="preserve">the name of a style property</doc>
71724             <type name="utf8" c:type="gchar*"/>
71725           </parameter>
71726           <parameter name="value" transfer-ownership="none">
71727             <doc xml:whitespace="preserve">location to return the property value</doc>
71728             <type name="GObject.Value" c:type="GValue*"/>
71729           </parameter>
71730         </parameters>
71731       </method>
71732       <method name="style_get_valist"
71733               c:identifier="gtk_widget_style_get_valist"
71734               introspectable="0">
71735         <doc xml:whitespace="preserve">Non-vararg variant of gtk_widget_style_get(). Used primarily by language 
71736 bindings.</doc>
71737         <return-value transfer-ownership="none">
71738           <type name="none" c:type="void"/>
71739         </return-value>
71740         <parameters>
71741           <parameter name="first_property_name" transfer-ownership="none">
71742             <doc xml:whitespace="preserve">the name of the first property to get</doc>
71743             <type name="utf8" c:type="gchar*"/>
71744           </parameter>
71745           <parameter name="var_args" transfer-ownership="none">
71746             <doc xml:whitespace="preserve">a &lt;type&gt;va_list&lt;/type&gt; of pairs of property names and locations to return the property values, starting with the location for @first_property_name.</doc>
71747             <type name="va_list" c:type="va_list"/>
71748           </parameter>
71749         </parameters>
71750       </method>
71751       <method name="thaw_child_notify"
71752               c:identifier="gtk_widget_thaw_child_notify">
71753         <doc xml:whitespace="preserve">Reverts the effect of a previous call to gtk_widget_freeze_child_notify().
71754 This causes all queued #GtkWidget::child-notify signals on @widget to be 
71755 emitted.</doc>
71756         <return-value transfer-ownership="none">
71757           <type name="none" c:type="void"/>
71758         </return-value>
71759       </method>
71760       <method name="translate_coordinates"
71761               c:identifier="gtk_widget_translate_coordinates">
71762         <doc xml:whitespace="preserve">Translate coordinates relative to @src_widget's allocation to coordinates
71763 relative to @dest_widget's allocations. In order to perform this
71764 operation, both widgets must be realized, and must share a common
71765 toplevel.
71766 was no common ancestor. In this case, nothing is stored in
71767 *@dest_x and *@dest_y. Otherwise %TRUE.</doc>
71768         <return-value transfer-ownership="none">
71769           <doc xml:whitespace="preserve">%FALSE if either widget was not realized, or there</doc>
71770           <type name="gboolean" c:type="gboolean"/>
71771         </return-value>
71772         <parameters>
71773           <parameter name="dest_widget" transfer-ownership="none">
71774             <doc xml:whitespace="preserve">a #GtkWidget</doc>
71775             <type name="Widget" c:type="GtkWidget*"/>
71776           </parameter>
71777           <parameter name="src_x" transfer-ownership="none">
71778             <doc xml:whitespace="preserve">X position relative to @src_widget</doc>
71779             <type name="gint" c:type="gint"/>
71780           </parameter>
71781           <parameter name="src_y" transfer-ownership="none">
71782             <doc xml:whitespace="preserve">Y position relative to @src_widget</doc>
71783             <type name="gint" c:type="gint"/>
71784           </parameter>
71785           <parameter name="dest_x"
71786                      direction="out"
71787                      caller-allocates="0"
71788                      transfer-ownership="full">
71789             <doc xml:whitespace="preserve">location to store X position relative to @dest_widget</doc>
71790             <type name="gint" c:type="gint*"/>
71791           </parameter>
71792           <parameter name="dest_y"
71793                      direction="out"
71794                      caller-allocates="0"
71795                      transfer-ownership="full">
71796             <doc xml:whitespace="preserve">location to store Y position relative to @dest_widget</doc>
71797             <type name="gint" c:type="gint*"/>
71798           </parameter>
71799         </parameters>
71800       </method>
71801       <method name="trigger_tooltip_query"
71802               c:identifier="gtk_widget_trigger_tooltip_query"
71803               version="2.12">
71804         <doc xml:whitespace="preserve">Triggers a tooltip query on the display where the toplevel of @widget
71805 is located. See gtk_tooltip_trigger_tooltip_query() for more
71806 information.</doc>
71807         <return-value transfer-ownership="none">
71808           <type name="none" c:type="void"/>
71809         </return-value>
71810       </method>
71811       <method name="unmap" c:identifier="gtk_widget_unmap">
71812         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Causes
71813 a widget to be unmapped if it's currently mapped.</doc>
71814         <return-value transfer-ownership="none">
71815           <type name="none" c:type="void"/>
71816         </return-value>
71817       </method>
71818       <method name="unparent" c:identifier="gtk_widget_unparent">
71819         <doc xml:whitespace="preserve">This function is only for use in widget implementations.
71820 Should be called by implementations of the remove method
71821 on #GtkContainer, to dissociate a child from the container.</doc>
71822         <return-value transfer-ownership="none">
71823           <type name="none" c:type="void"/>
71824         </return-value>
71825       </method>
71826       <method name="unrealize" c:identifier="gtk_widget_unrealize">
71827         <doc xml:whitespace="preserve">This function is only useful in widget implementations.
71828 Causes a widget to be unrealized (frees all GDK resources
71829 associated with the widget, such as @widget-&gt;window).</doc>
71830         <return-value transfer-ownership="none">
71831           <type name="none" c:type="void"/>
71832         </return-value>
71833       </method>
71834       <property name="app-paintable" writable="1" transfer-ownership="none">
71835         <type name="gboolean"/>
71836       </property>
71837       <property name="can-default" writable="1" transfer-ownership="none">
71838         <type name="gboolean"/>
71839       </property>
71840       <property name="can-focus" writable="1" transfer-ownership="none">
71841         <type name="gboolean"/>
71842       </property>
71843       <property name="composite-child" transfer-ownership="none">
71844         <type name="gboolean"/>
71845       </property>
71846       <property name="double-buffered" writable="1" transfer-ownership="none">
71847         <type name="gboolean"/>
71848       </property>
71849       <property name="events" writable="1" transfer-ownership="none">
71850         <type name="Gdk.EventMask"/>
71851       </property>
71852       <property name="extension-events" writable="1" transfer-ownership="none">
71853         <type name="Gdk.ExtensionMode"/>
71854       </property>
71855       <property name="halign"
71856                 version="3.0"
71857                 writable="1"
71858                 transfer-ownership="none">
71859         <doc xml:whitespace="preserve">How to distribute horizontal space if widget gets extra space, see #GtkAlign</doc>
71860         <type name="Align"/>
71861       </property>
71862       <property name="has-default" writable="1" transfer-ownership="none">
71863         <type name="gboolean"/>
71864       </property>
71865       <property name="has-focus" writable="1" transfer-ownership="none">
71866         <type name="gboolean"/>
71867       </property>
71868       <property name="has-tooltip"
71869                 version="2.12"
71870                 writable="1"
71871                 transfer-ownership="none">
71872         <doc xml:whitespace="preserve">Enables or disables the emission of #GtkWidget::query-tooltip on @widget.  
71873 A value of %TRUE indicates that @widget can have a tooltip, in this case
71874 the widget will be queried using #GtkWidget::query-tooltip to determine
71875 whether it will provide a tooltip or not.
71876 Note that setting this property to %TRUE for the first time will change
71877 the event masks of the GdkWindows of this widget to include leave-notify
71878 and motion-notify events.  This cannot and will not be undone when the
71879 property is set to %FALSE again.</doc>
71880         <type name="gboolean"/>
71881       </property>
71882       <property name="height-request" writable="1" transfer-ownership="none">
71883         <type name="gint"/>
71884       </property>
71885       <property name="is-focus" writable="1" transfer-ownership="none">
71886         <type name="gboolean"/>
71887       </property>
71888       <property name="margin" writable="1" transfer-ownership="none">
71889         <type name="gint"/>
71890       </property>
71891       <property name="margin-bottom" writable="1" transfer-ownership="none">
71892         <type name="gint"/>
71893       </property>
71894       <property name="margin-left" writable="1" transfer-ownership="none">
71895         <type name="gint"/>
71896       </property>
71897       <property name="margin-right" writable="1" transfer-ownership="none">
71898         <type name="gint"/>
71899       </property>
71900       <property name="margin-top" writable="1" transfer-ownership="none">
71901         <type name="gint"/>
71902       </property>
71903       <property name="name" writable="1" transfer-ownership="none">
71904         <type name="utf8"/>
71905       </property>
71906       <property name="no-show-all" writable="1" transfer-ownership="none">
71907         <type name="gboolean"/>
71908       </property>
71909       <property name="parent" writable="1" transfer-ownership="none">
71910         <type name="Container"/>
71911       </property>
71912       <property name="receives-default" writable="1" transfer-ownership="none">
71913         <type name="gboolean"/>
71914       </property>
71915       <property name="sensitive" writable="1" transfer-ownership="none">
71916         <type name="gboolean"/>
71917       </property>
71918       <property name="style" writable="1" transfer-ownership="none">
71919         <type name="Style"/>
71920       </property>
71921       <property name="tooltip-markup"
71922                 version="2.12"
71923                 writable="1"
71924                 transfer-ownership="none">
71925         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string, which is marked up
71926 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
71927 Also see gtk_tooltip_set_markup().
71928 This is a convenience property which will take care of getting the
71929 will automatically be set to %TRUE and there will be taken care of
71930 #GtkWidget::query-tooltip in the default signal handler.</doc>
71931         <type name="utf8"/>
71932       </property>
71933       <property name="tooltip-text"
71934                 version="2.12"
71935                 writable="1"
71936                 transfer-ownership="none">
71937         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string.
71938 Also see gtk_tooltip_set_text().
71939 This is a convenience property which will take care of getting the
71940 will automatically be set to %TRUE and there will be taken care of
71941 #GtkWidget::query-tooltip in the default signal handler.</doc>
71942         <type name="utf8"/>
71943       </property>
71944       <property name="valign"
71945                 version="3.0"
71946                 writable="1"
71947                 transfer-ownership="none">
71948         <doc xml:whitespace="preserve">How to distribute vertical space if widget gets extra space, see #GtkAlign</doc>
71949         <type name="Align"/>
71950       </property>
71951       <property name="visible" writable="1" transfer-ownership="none">
71952         <type name="gboolean"/>
71953       </property>
71954       <property name="width-request" writable="1" transfer-ownership="none">
71955         <type name="gint"/>
71956       </property>
71957       <property name="window" version="2.14" transfer-ownership="none">
71958         <doc xml:whitespace="preserve">The widget's window if it is realized, %NULL otherwise.</doc>
71959         <type name="Gdk.Window"/>
71960       </property>
71961       <field name="object">
71962         <type name="Object" c:type="GtkObject"/>
71963       </field>
71964       <field name="private_flags" bits="16">
71965         <type name="guint" c:type="guint"/>
71966       </field>
71967       <field name="priv">
71968         <type name="WidgetPrivate" c:type="GtkWidgetPrivate*"/>
71969       </field>
71970       <glib:signal name="accel-closures-changed">
71971         <return-value transfer-ownership="none">
71972           <type name="none"/>
71973         </return-value>
71974       </glib:signal>
71975       <glib:signal name="button-press-event">
71976         <doc xml:whitespace="preserve">The ::button-press-event signal will be emitted when a button
71977 (typically from a mouse) is pressed.
71978 To receive this signal, the #GdkWindow associated to the 
71979 widget needs to enable the #GDK_BUTTON_PRESS_MASK mask.
71980 This signal will be sent to the grab widget if there is one.
71981 %FALSE to propagate the event further.</doc>
71982         <return-value transfer-ownership="none">
71983           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
71984           <type name="gboolean"/>
71985         </return-value>
71986         <parameters>
71987           <parameter name="object" transfer-ownership="none">
71988             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal.</doc>
71989             <type name="Gdk.EventButton"/>
71990           </parameter>
71991         </parameters>
71992       </glib:signal>
71993       <glib:signal name="button-release-event">
71994         <doc xml:whitespace="preserve">The ::button-release-event signal will be emitted when a button
71995 (typically from a mouse) is released.
71996 To receive this signal, the #GdkWindow associated to the 
71997 widget needs to enable the #GDK_BUTTON_RELEASE_MASK mask.
71998 This signal will be sent to the grab widget if there is one.
71999 %FALSE to propagate the event further.</doc>
72000         <return-value transfer-ownership="none">
72001           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72002           <type name="gboolean"/>
72003         </return-value>
72004         <parameters>
72005           <parameter name="object" transfer-ownership="none">
72006             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal.</doc>
72007             <type name="Gdk.EventButton"/>
72008           </parameter>
72009         </parameters>
72010       </glib:signal>
72011       <glib:signal name="can-activate-accel">
72012         <doc xml:whitespace="preserve">Determines whether an accelerator that activates the signal
72013 identified by @signal_id can currently be activated.
72014 This signal is present to allow applications and derived
72015 widgets to override the default #GtkWidget handling
72016 for determining whether an accelerator can be activated.</doc>
72017         <return-value transfer-ownership="none">
72018           <doc xml:whitespace="preserve">%TRUE if the signal can be activated.</doc>
72019           <type name="gboolean"/>
72020         </return-value>
72021         <parameters>
72022           <parameter name="object" transfer-ownership="none">
72023             <doc xml:whitespace="preserve">the ID of a signal installed on @widget</doc>
72024             <type name="guint"/>
72025           </parameter>
72026         </parameters>
72027       </glib:signal>
72028       <glib:signal name="child-notify" introspectable="0">
72029         <doc xml:whitespace="preserve">The ::child-notify signal is emitted for each 
72030 &lt;link linkend="child-properties"&gt;child property&lt;/link&gt;  that has
72031 changed on an object. The signal's detail holds the property name.</doc>
72032         <return-value transfer-ownership="none">
72033           <type name="none"/>
72034         </return-value>
72035         <parameters>
72036           <parameter name="object" transfer-ownership="none">
72037             <doc xml:whitespace="preserve">the #GParamSpec of the changed child property</doc>
72038             <type/>
72039           </parameter>
72040         </parameters>
72041       </glib:signal>
72042       <glib:signal name="client-event">
72043         <doc xml:whitespace="preserve">The ::client-event will be emitted when the @widget's window
72044 receives a message (via a ClientMessage event) from another
72045 application.
72046 the event. %FALSE to propagate the event further.</doc>
72047         <return-value transfer-ownership="none">
72048           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for</doc>
72049           <type name="gboolean"/>
72050         </return-value>
72051         <parameters>
72052           <parameter name="object" transfer-ownership="none">
72053             <doc xml:whitespace="preserve">the #GdkEventClient which triggered this signal.</doc>
72054             <type name="Gdk.EventClient"/>
72055           </parameter>
72056         </parameters>
72057       </glib:signal>
72058       <glib:signal name="composited-changed">
72059         <doc xml:whitespace="preserve">The ::composited-changed signal is emitted when the composited
72060 status of @widget&lt;!-- --&gt;s screen changes. 
72061 See gdk_screen_is_composited().</doc>
72062         <return-value transfer-ownership="none">
72063           <type name="none"/>
72064         </return-value>
72065       </glib:signal>
72066       <glib:signal name="configure-event">
72067         <return-value transfer-ownership="none">
72068           <type name="gboolean"/>
72069         </return-value>
72070         <parameters>
72071           <parameter name="object" transfer-ownership="none">
72072             <type name="Gdk.Event"/>
72073           </parameter>
72074         </parameters>
72075       </glib:signal>
72076       <glib:signal name="damage-event" version="2.14">
72077         <doc xml:whitespace="preserve">Emitted when a redirected window belonging to @widget gets drawn into.
72078 The region/area members of the event shows what area of the redirected
72079 drawable was drawn into.
72080 %FALSE to propagate the event further.</doc>
72081         <return-value transfer-ownership="none">
72082           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72083           <type name="gboolean"/>
72084         </return-value>
72085         <parameters>
72086           <parameter name="object" transfer-ownership="none">
72087             <doc xml:whitespace="preserve">the #GdkEventExpose event</doc>
72088             <type name="Gdk.Event"/>
72089           </parameter>
72090         </parameters>
72091       </glib:signal>
72092       <glib:signal name="delete-event">
72093         <doc xml:whitespace="preserve">The ::delete-event signal is emitted if a user requests that
72094 a toplevel window is closed. The default handler for this signal
72095 destroys the window. Connecting gtk_widget_hide_on_delete() to
72096 this signal will cause the window to be hidden instead, so that
72097 it can later be shown again without reconstructing it.
72098 %FALSE to propagate the event further.</doc>
72099         <return-value transfer-ownership="none">
72100           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72101           <type name="gboolean"/>
72102         </return-value>
72103         <parameters>
72104           <parameter name="object" transfer-ownership="none">
72105             <doc xml:whitespace="preserve">the event which triggered this signal</doc>
72106             <type name="Gdk.Event"/>
72107           </parameter>
72108         </parameters>
72109       </glib:signal>
72110       <glib:signal name="destroy-event">
72111         <doc xml:whitespace="preserve">The ::destroy-event signal is emitted when a #GdkWindow is destroyed.
72112 You rarely get this signal, because most widgets disconnect themselves 
72113 from their window before they destroy it, so no widget owns the 
72114 window at destroy time.
72115 To receive this signal, the #GdkWindow associated to the widget needs
72116 to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask
72117 automatically for all new windows.
72118 %FALSE to propagate the event further.</doc>
72119         <return-value transfer-ownership="none">
72120           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72121           <type name="gboolean"/>
72122         </return-value>
72123         <parameters>
72124           <parameter name="object" transfer-ownership="none">
72125             <doc xml:whitespace="preserve">the event which triggered this signal</doc>
72126             <type name="Gdk.Event"/>
72127           </parameter>
72128         </parameters>
72129       </glib:signal>
72130       <glib:signal name="direction-changed">
72131         <doc xml:whitespace="preserve">The ::direction-changed signal is emitted when the text direction
72132 of a widget changes.</doc>
72133         <return-value transfer-ownership="none">
72134           <type name="none"/>
72135         </return-value>
72136         <parameters>
72137           <parameter name="object" transfer-ownership="none">
72138             <doc xml:whitespace="preserve">the previous text direction of @widget</doc>
72139             <type name="TextDirection"/>
72140           </parameter>
72141         </parameters>
72142       </glib:signal>
72143       <glib:signal name="drag-begin">
72144         <doc xml:whitespace="preserve">The ::drag-begin signal is emitted on the drag source when a drag is 
72145 started. A typical reason to connect to this signal is to set up a 
72146 custom drag icon with gtk_drag_source_set_icon().
72147 Note that some widgets set up a drag icon in the default handler of
72148 this signal, so you may have to use g_signal_connect_after() to
72149 override what the default handler did.</doc>
72150         <return-value transfer-ownership="none">
72151           <type name="none"/>
72152         </return-value>
72153         <parameters>
72154           <parameter name="object" transfer-ownership="none">
72155             <doc xml:whitespace="preserve">the drag context</doc>
72156             <type name="Gdk.DragContext"/>
72157           </parameter>
72158         </parameters>
72159       </glib:signal>
72160       <glib:signal name="drag-data-delete">
72161         <doc xml:whitespace="preserve">The ::drag-data-delete signal is emitted on the drag source when a drag 
72162 with the action %GDK_ACTION_MOVE is successfully completed. The signal 
72163 handler is responsible for deleting the data that has been dropped. What 
72164 "delete" means depends on the context of the drag operation.</doc>
72165         <return-value transfer-ownership="none">
72166           <type name="none"/>
72167         </return-value>
72168         <parameters>
72169           <parameter name="object" transfer-ownership="none">
72170             <doc xml:whitespace="preserve">the drag context</doc>
72171             <type name="Gdk.DragContext"/>
72172           </parameter>
72173         </parameters>
72174       </glib:signal>
72175       <glib:signal name="drag-data-get">
72176         <doc xml:whitespace="preserve">The ::drag-data-get signal is emitted on the drag source when the drop 
72177 site requests the data which is dragged. It is the responsibility of 
72178 the signal handler to fill @data with the data in the format which 
72179 is indicated by @info. See gtk_selection_data_set() and 
72180 gtk_selection_data_set_text().</doc>
72181         <return-value transfer-ownership="none">
72182           <type name="none"/>
72183         </return-value>
72184         <parameters>
72185           <parameter name="object" transfer-ownership="none">
72186             <doc xml:whitespace="preserve">the drag context</doc>
72187             <type name="Gdk.DragContext"/>
72188           </parameter>
72189           <parameter name="p0" transfer-ownership="none">
72190             <doc xml:whitespace="preserve">the #GtkSelectionData to be filled with the dragged data</doc>
72191             <type name="SelectionData"/>
72192           </parameter>
72193           <parameter name="p1" transfer-ownership="none">
72194             <doc xml:whitespace="preserve">the info that has been registered with the target in the #GtkTargetList</doc>
72195             <type name="guint"/>
72196           </parameter>
72197           <parameter name="p2" transfer-ownership="none">
72198             <doc xml:whitespace="preserve">the timestamp at which the data was requested</doc>
72199             <type name="guint"/>
72200           </parameter>
72201         </parameters>
72202       </glib:signal>
72203       <glib:signal name="drag-data-received">
72204         <doc xml:whitespace="preserve">The ::drag-data-received signal is emitted on the drop site when the 
72205 dragged data has been received. If the data was received in order to 
72206 determine whether the drop will be accepted, the handler is expected 
72207 to call gdk_drag_status() and &lt;emphasis&gt;not&lt;/emphasis&gt; finish the drag. 
72208 If the data was received in response to a #GtkWidget::drag-drop signal 
72209 (and this is the last target to be received), the handler for this 
72210 signal is expected to process the received data and then call 
72211 gtk_drag_finish(), setting the @success parameter depending on whether 
72212 the data was processed successfully. 
72213 The handler may inspect and modify @drag_context-&gt;action before calling 
72214 gtk_drag_finish(), e.g. to implement %GDK_ACTION_ASK as shown in the 
72215 following example:
72216 |[
72217 void  
72218 drag_data_received (GtkWidget          *widget,
72219 GdkDragContext     *drag_context,
72220 gint                x,
72221 gint                y,
72222 GtkSelectionData   *data,
72223 guint               info,
72224 guint               time)
72225 {
72226 if ((data-&gt;length &gt;= 0) &amp;&amp; (data-&gt;format == 8))
72227 {
72228 if (drag_context-&gt;action == GDK_ACTION_ASK) 
72229 {
72230 GtkWidget *dialog;
72231 gint response;
72232 dialog = gtk_message_dialog_new (NULL,
72233 GTK_DIALOG_MODAL | 
72234 GTK_DIALOG_DESTROY_WITH_PARENT,
72235 GTK_MESSAGE_INFO,
72236 GTK_BUTTONS_YES_NO,
72237 "Move the data ?\n");
72238 response = gtk_dialog_run (GTK_DIALOG (dialog));
72239 gtk_widget_destroy (dialog);
72240 if (response == GTK_RESPONSE_YES)
72241 drag_context-&gt;action = GDK_ACTION_MOVE;
72242 else
72243 drag_context-&gt;action = GDK_ACTION_COPY;
72244 }
72245 gtk_drag_finish (drag_context, TRUE, FALSE, time);
72246 return;
72247 }
72248 gtk_drag_finish (drag_context, FALSE, FALSE, time);
72249 }
72250 ]|</doc>
72251         <return-value transfer-ownership="none">
72252           <type name="none"/>
72253         </return-value>
72254         <parameters>
72255           <parameter name="object" transfer-ownership="none">
72256             <doc xml:whitespace="preserve">the drag context</doc>
72257             <type name="Gdk.DragContext"/>
72258           </parameter>
72259           <parameter name="p0" transfer-ownership="none">
72260             <doc xml:whitespace="preserve">where the drop happened</doc>
72261             <type name="gint"/>
72262           </parameter>
72263           <parameter name="p1" transfer-ownership="none">
72264             <doc xml:whitespace="preserve">where the drop happened</doc>
72265             <type name="gint"/>
72266           </parameter>
72267           <parameter name="p2" transfer-ownership="none">
72268             <doc xml:whitespace="preserve">the received data</doc>
72269             <type name="SelectionData"/>
72270           </parameter>
72271           <parameter name="p3" transfer-ownership="none">
72272             <doc xml:whitespace="preserve">the info that has been registered with the target in the #GtkTargetList</doc>
72273             <type name="guint"/>
72274           </parameter>
72275           <parameter name="p4" transfer-ownership="none">
72276             <doc xml:whitespace="preserve">the timestamp at which the data was received</doc>
72277             <type name="guint"/>
72278           </parameter>
72279         </parameters>
72280       </glib:signal>
72281       <glib:signal name="drag-drop">
72282         <doc xml:whitespace="preserve">The ::drag-drop signal is emitted on the drop site when the user drops 
72283 the data onto the widget. The signal handler must determine whether 
72284 the cursor position is in a drop zone or not. If it is not in a drop 
72285 zone, it returns %FALSE and no further processing is necessary. 
72286 Otherwise, the handler returns %TRUE. In this case, the handler must 
72287 ensure that gtk_drag_finish() is called to let the source know that 
72288 the drop is done. The call to gtk_drag_finish() can be done either 
72289 directly or in a #GtkWidget::drag-data-received handler which gets 
72290 triggered by calling gtk_drag_get_data() to receive the data for one 
72291 or more of the supported targets.</doc>
72292         <return-value transfer-ownership="none">
72293           <doc xml:whitespace="preserve">whether the cursor position is in a drop zone</doc>
72294           <type name="gboolean"/>
72295         </return-value>
72296         <parameters>
72297           <parameter name="object" transfer-ownership="none">
72298             <doc xml:whitespace="preserve">the drag context</doc>
72299             <type name="Gdk.DragContext"/>
72300           </parameter>
72301           <parameter name="p0" transfer-ownership="none">
72302             <doc xml:whitespace="preserve">the x coordinate of the current cursor position</doc>
72303             <type name="gint"/>
72304           </parameter>
72305           <parameter name="p1" transfer-ownership="none">
72306             <doc xml:whitespace="preserve">the y coordinate of the current cursor position</doc>
72307             <type name="gint"/>
72308           </parameter>
72309           <parameter name="p2" transfer-ownership="none">
72310             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
72311             <type name="guint"/>
72312           </parameter>
72313         </parameters>
72314       </glib:signal>
72315       <glib:signal name="drag-end">
72316         <doc xml:whitespace="preserve">The ::drag-end signal is emitted on the drag source when a drag is 
72317 finished.  A typical reason to connect to this signal is to undo 
72318 things done in #GtkWidget::drag-begin.</doc>
72319         <return-value transfer-ownership="none">
72320           <type name="none"/>
72321         </return-value>
72322         <parameters>
72323           <parameter name="object" transfer-ownership="none">
72324             <doc xml:whitespace="preserve">the drag context</doc>
72325             <type name="Gdk.DragContext"/>
72326           </parameter>
72327         </parameters>
72328       </glib:signal>
72329       <glib:signal name="drag-failed" version="2.12">
72330         <doc xml:whitespace="preserve">The ::drag-failed signal is emitted on the drag source when a drag has
72331 failed. The signal handler may hook custom code to handle a failed DND
72332 operation based on the type of error, it returns %TRUE is the failure has
72333 been already handled (not showing the default "drag operation failed"
72334 animation), otherwise it returns %FALSE.</doc>
72335         <return-value transfer-ownership="none">
72336           <doc xml:whitespace="preserve">%TRUE if the failed drag operation has been already handled.</doc>
72337           <type name="gboolean"/>
72338         </return-value>
72339         <parameters>
72340           <parameter name="object" transfer-ownership="none">
72341             <doc xml:whitespace="preserve">the drag context</doc>
72342             <type name="Gdk.DragContext"/>
72343           </parameter>
72344           <parameter name="p0" transfer-ownership="none">
72345             <doc xml:whitespace="preserve">the result of the drag operation</doc>
72346             <type name="DragResult"/>
72347           </parameter>
72348         </parameters>
72349       </glib:signal>
72350       <glib:signal name="drag-leave">
72351         <doc xml:whitespace="preserve">The ::drag-leave signal is emitted on the drop site when the cursor 
72352 leaves the widget. A typical reason to connect to this signal is to 
72353 undo things done in #GtkWidget::drag-motion, e.g. undo highlighting 
72354 with gtk_drag_unhighlight()</doc>
72355         <return-value transfer-ownership="none">
72356           <type name="none"/>
72357         </return-value>
72358         <parameters>
72359           <parameter name="object" transfer-ownership="none">
72360             <doc xml:whitespace="preserve">the drag context</doc>
72361             <type name="Gdk.DragContext"/>
72362           </parameter>
72363           <parameter name="p0" transfer-ownership="none">
72364             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
72365             <type name="guint"/>
72366           </parameter>
72367         </parameters>
72368       </glib:signal>
72369       <glib:signal name="drag-motion">
72370         <doc xml:whitespace="preserve">The drag-motion signal is emitted on the drop site when the user
72371 moves the cursor over the widget during a drag. The signal handler
72372 must determine whether the cursor position is in a drop zone or not.
72373 If it is not in a drop zone, it returns %FALSE and no further processing
72374 is necessary. Otherwise, the handler returns %TRUE. In this case, the
72375 handler is responsible for providing the necessary information for
72376 displaying feedback to the user, by calling gdk_drag_status().
72377 If the decision whether the drop will be accepted or rejected can't be
72378 made based solely on the cursor position and the type of the data, the
72379 handler may inspect the dragged data by calling gtk_drag_get_data() and
72380 defer the gdk_drag_status() call to the #GtkWidget::drag-data-received
72381 handler. Note that you cannot not pass #GTK_DEST_DEFAULT_DROP,
72382 #GTK_DEST_DEFAULT_MOTION or #GTK_DEST_DEFAULT_ALL to gtk_drag_dest_set()
72383 when using the drag-motion signal that way.
72384 Also note that there is no drag-enter signal. The drag receiver has to
72385 keep track of whether he has received any drag-motion signals since the
72386 last #GtkWidget::drag-leave and if not, treat the drag-motion signal as
72387 an "enter" signal. Upon an "enter", the handler will typically highlight
72388 the drop site with gtk_drag_highlight().
72389 |[
72390 static void
72391 drag_motion (GtkWidget *widget,
72392 GdkDragContext *context,
72393 gint x,
72394 gint y,
72395 guint time)
72396 {
72397 GdkAtom target;
72398 PrivateData *private_data = GET_PRIVATE_DATA (widget);
72399 if (!private_data-&gt;drag_highlight) 
72400 {
72401 private_data-&gt;drag_highlight = 1;
72402 gtk_drag_highlight (widget);
72403 }
72404 target = gtk_drag_dest_find_target (widget, context, NULL);
72405 if (target == GDK_NONE)
72406 gdk_drag_status (context, 0, time);
72407 else 
72408 {
72409 private_data-&gt;pending_status = context-&gt;suggested_action;
72410 gtk_drag_get_data (widget, context, target, time);
72411 }
72412 return TRUE;
72413 }
72414 static void
72415 drag_data_received (GtkWidget        *widget,
72416 GdkDragContext   *context,
72417 gint              x,
72418 gint              y,
72419 GtkSelectionData *selection_data,
72420 guint             info,
72421 guint             time)
72422 {
72423 PrivateData *private_data = GET_PRIVATE_DATA (widget);
72424 if (private_data-&gt;suggested_action) 
72425 {
72426 private_data-&gt;suggested_action = 0;
72427 /&amp;ast; We are getting this data due to a request in drag_motion,
72428 * rather than due to a request in drag_drop, so we are just
72429 * supposed to call gdk_drag_status (), not actually paste in 
72430 * the data.
72431 &amp;ast;/
72432 str = gtk_selection_data_get_text (selection_data);
72433 if (!data_is_acceptable (str)) 
72434 gdk_drag_status (context, 0, time);
72435 else
72436 gdk_drag_status (context, private_data-&gt;suggested_action, time);
72437 }
72438 else
72439 {
72440 /&amp;ast; accept the drop &amp;ast;/
72441 }
72442 }
72443 ]|</doc>
72444         <return-value transfer-ownership="none">
72445           <doc xml:whitespace="preserve">whether the cursor position is in a drop zone</doc>
72446           <type name="gboolean"/>
72447         </return-value>
72448         <parameters>
72449           <parameter name="object" transfer-ownership="none">
72450             <doc xml:whitespace="preserve">the drag context</doc>
72451             <type name="Gdk.DragContext"/>
72452           </parameter>
72453           <parameter name="p0" transfer-ownership="none">
72454             <doc xml:whitespace="preserve">the x coordinate of the current cursor position</doc>
72455             <type name="gint"/>
72456           </parameter>
72457           <parameter name="p1" transfer-ownership="none">
72458             <doc xml:whitespace="preserve">the y coordinate of the current cursor position</doc>
72459             <type name="gint"/>
72460           </parameter>
72461           <parameter name="p2" transfer-ownership="none">
72462             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
72463             <type name="guint"/>
72464           </parameter>
72465         </parameters>
72466       </glib:signal>
72467       <glib:signal name="enter-notify-event">
72468         <doc xml:whitespace="preserve">The ::enter-notify-event will be emitted when the pointer enters
72469 the @widget's window.
72470 To receive this signal, the #GdkWindow associated to the widget needs
72471 to enable the #GDK_ENTER_NOTIFY_MASK mask.
72472 This signal will be sent to the grab widget if there is one.
72473 %FALSE to propagate the event further.</doc>
72474         <return-value transfer-ownership="none">
72475           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72476           <type name="gboolean"/>
72477         </return-value>
72478         <parameters>
72479           <parameter name="object" transfer-ownership="none">
72480             <doc xml:whitespace="preserve">the #GdkEventCrossing which triggered this signal.</doc>
72481             <type name="Gdk.EventCrossing"/>
72482           </parameter>
72483         </parameters>
72484       </glib:signal>
72485       <glib:signal name="event">
72486         <doc xml:whitespace="preserve">The GTK+ main loop will emit three signals for each GDK event delivered
72487 signal that matches the type of event delivered (e.g. 
72488 #GtkWidget::key-press-event) and finally a generic 
72489 #GtkWidget::event-after signal.
72490 and to cancel the emission of the second specific ::event signal.
72491 %FALSE to propagate the event further and to allow the emission of 
72492 the second signal. The ::event-after signal is emitted regardless of
72493 the return value.</doc>
72494         <return-value transfer-ownership="none">
72495           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event</doc>
72496           <type name="gboolean"/>
72497         </return-value>
72498         <parameters>
72499           <parameter name="object" transfer-ownership="none">
72500             <doc xml:whitespace="preserve">the #GdkEvent which triggered this signal</doc>
72501             <type name="Gdk.Event"/>
72502           </parameter>
72503         </parameters>
72504       </glib:signal>
72505       <glib:signal name="event-after">
72506         <doc xml:whitespace="preserve">After the emission of the #GtkWidget::event signal and (optionally) 
72507 the second more specific signal, ::event-after will be emitted 
72508 regardless of the previous two signals handlers return values.</doc>
72509         <return-value transfer-ownership="none">
72510           <type name="none"/>
72511         </return-value>
72512         <parameters>
72513           <parameter name="object" transfer-ownership="none">
72514             <doc xml:whitespace="preserve">the #GdkEvent which triggered this signal</doc>
72515             <type name="Gdk.Event"/>
72516           </parameter>
72517         </parameters>
72518       </glib:signal>
72519       <glib:signal name="expose-event">
72520         <doc xml:whitespace="preserve">The ::expose-event signal is emitted when an area of a previously
72521 obscured #GdkWindow is made visible and needs to be redrawn.
72522 #GTK_NO_WINDOW widgets will get a synthesized event from their parent 
72523 widget.
72524 To receive this signal, the #GdkWindow associated to the widget needs
72525 to enable the #GDK_EXPOSURE_MASK mask.
72526 %FALSE to propagate the event further.</doc>
72527         <return-value transfer-ownership="none">
72528           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72529           <type name="gboolean"/>
72530         </return-value>
72531         <parameters>
72532           <parameter name="object" transfer-ownership="none">
72533             <doc xml:whitespace="preserve">the #GdkEventExpose which triggered this signal.</doc>
72534             <type name="Gdk.EventExpose"/>
72535           </parameter>
72536         </parameters>
72537       </glib:signal>
72538       <glib:signal name="focus">
72539         <return-value transfer-ownership="none">
72540           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
72541           <type name="gboolean"/>
72542         </return-value>
72543         <parameters>
72544           <parameter name="object" transfer-ownership="none">
72545             <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
72546             <type name="DirectionType"/>
72547           </parameter>
72548         </parameters>
72549       </glib:signal>
72550       <glib:signal name="focus-in-event">
72551         <return-value transfer-ownership="none">
72552           <type name="gboolean"/>
72553         </return-value>
72554         <parameters>
72555           <parameter name="object" transfer-ownership="none">
72556             <type name="Gdk.Event"/>
72557           </parameter>
72558         </parameters>
72559       </glib:signal>
72560       <glib:signal name="focus-out-event">
72561         <return-value transfer-ownership="none">
72562           <type name="gboolean"/>
72563         </return-value>
72564         <parameters>
72565           <parameter name="object" transfer-ownership="none">
72566             <type name="Gdk.Event"/>
72567           </parameter>
72568         </parameters>
72569       </glib:signal>
72570       <glib:signal name="grab-broken-event" version="2.8">
72571         <doc xml:whitespace="preserve">Emitted when a pointer or keyboard grab on a window belonging 
72572 to @widget gets broken. 
72573 On X11, this happens when the grab window becomes unviewable 
72574 (i.e. it or one of its ancestors is unmapped), or if the same 
72575 application grabs the pointer or keyboard again.
72576 the event. %FALSE to propagate the event further.</doc>
72577         <return-value transfer-ownership="none">
72578           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for</doc>
72579           <type name="gboolean"/>
72580         </return-value>
72581         <parameters>
72582           <parameter name="object" transfer-ownership="none">
72583             <doc xml:whitespace="preserve">the #GdkEventGrabBroken event</doc>
72584             <type name="Gdk.Event"/>
72585           </parameter>
72586         </parameters>
72587       </glib:signal>
72588       <glib:signal name="grab-focus">
72589         <return-value transfer-ownership="none">
72590           <type name="none"/>
72591         </return-value>
72592       </glib:signal>
72593       <glib:signal name="grab-notify">
72594         <doc xml:whitespace="preserve">The ::grab-notify signal is emitted when a widget becomes
72595 shadowed by a GTK+ grab (not a pointer or keyboard grab) on 
72596 another widget, or when it becomes unshadowed due to a grab 
72597 being removed.
72598 A widget is shadowed by a gtk_grab_add() when the topmost 
72599 grab widget in the grab stack of its window group is not 
72600 its ancestor.</doc>
72601         <return-value transfer-ownership="none">
72602           <type name="none"/>
72603         </return-value>
72604         <parameters>
72605           <parameter name="object" transfer-ownership="none">
72606             <doc xml:whitespace="preserve">%FALSE if the widget becomes shadowed, %TRUE if it becomes unshadowed</doc>
72607             <type name="gboolean"/>
72608           </parameter>
72609         </parameters>
72610       </glib:signal>
72611       <glib:signal name="hide">
72612         <return-value transfer-ownership="none">
72613           <type name="none"/>
72614         </return-value>
72615       </glib:signal>
72616       <glib:signal name="hierarchy-changed">
72617         <doc xml:whitespace="preserve">The ::hierarchy-changed signal is emitted when the
72618 anchored state of a widget changes. A widget is
72619 &lt;firstterm&gt;anchored&lt;/firstterm&gt; when its toplevel
72620 ancestor is a #GtkWindow. This signal is emitted when
72621 a widget changes from un-anchored to anchored or vice-versa.</doc>
72622         <return-value transfer-ownership="none">
72623           <type name="none"/>
72624         </return-value>
72625         <parameters>
72626           <parameter name="object" transfer-ownership="none" allow-none="1">
72627             <doc xml:whitespace="preserve">the previous toplevel ancestor, or %NULL if the widget was previously unanchored</doc>
72628             <type name="Widget"/>
72629           </parameter>
72630         </parameters>
72631       </glib:signal>
72632       <glib:signal name="key-press-event">
72633         <doc xml:whitespace="preserve">The ::key-press-event signal is emitted when a key is pressed.
72634 To receive this signal, the #GdkWindow associated to the widget needs
72635 to enable the #GDK_KEY_PRESS_MASK mask.
72636 This signal will be sent to the grab widget if there is one.
72637 %FALSE to propagate the event further.</doc>
72638         <return-value transfer-ownership="none">
72639           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72640           <type name="gboolean"/>
72641         </return-value>
72642         <parameters>
72643           <parameter name="object" transfer-ownership="none">
72644             <doc xml:whitespace="preserve">the #GdkEventKey which triggered this signal.</doc>
72645             <type name="Gdk.EventKey"/>
72646           </parameter>
72647         </parameters>
72648       </glib:signal>
72649       <glib:signal name="key-release-event">
72650         <doc xml:whitespace="preserve">The ::key-release-event signal is emitted when a key is pressed.
72651 To receive this signal, the #GdkWindow associated to the widget needs
72652 to enable the #GDK_KEY_RELEASE_MASK mask.
72653 This signal will be sent to the grab widget if there is one.
72654 %FALSE to propagate the event further.</doc>
72655         <return-value transfer-ownership="none">
72656           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72657           <type name="gboolean"/>
72658         </return-value>
72659         <parameters>
72660           <parameter name="object" transfer-ownership="none">
72661             <doc xml:whitespace="preserve">the #GdkEventKey which triggered this signal.</doc>
72662             <type name="Gdk.EventKey"/>
72663           </parameter>
72664         </parameters>
72665       </glib:signal>
72666       <glib:signal name="keynav-failed" version="2.12">
72667         <doc xml:whitespace="preserve">Gets emitted if keyboard navigation fails. 
72668 See gtk_widget_keynav_failed() for details.
72669 if the emitting widget should try to handle the keyboard
72670 navigation attempt in its parent container(s).</doc>
72671         <return-value transfer-ownership="none">
72672           <doc xml:whitespace="preserve">%TRUE if stopping keyboard navigation is fine, %FALSE</doc>
72673           <type name="gboolean"/>
72674         </return-value>
72675         <parameters>
72676           <parameter name="object" transfer-ownership="none">
72677             <doc xml:whitespace="preserve">the direction of movement</doc>
72678             <type name="DirectionType"/>
72679           </parameter>
72680         </parameters>
72681       </glib:signal>
72682       <glib:signal name="leave-notify-event">
72683         <doc xml:whitespace="preserve">The ::leave-notify-event will be emitted when the pointer leaves
72684 the @widget's window.
72685 To receive this signal, the #GdkWindow associated to the widget needs
72686 to enable the #GDK_LEAVE_NOTIFY_MASK mask.
72687 This signal will be sent to the grab widget if there is one.
72688 %FALSE to propagate the event further.</doc>
72689         <return-value transfer-ownership="none">
72690           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72691           <type name="gboolean"/>
72692         </return-value>
72693         <parameters>
72694           <parameter name="object" transfer-ownership="none">
72695             <doc xml:whitespace="preserve">the #GdkEventCrossing which triggered this signal.</doc>
72696             <type name="Gdk.EventCrossing"/>
72697           </parameter>
72698         </parameters>
72699       </glib:signal>
72700       <glib:signal name="map">
72701         <return-value transfer-ownership="none">
72702           <type name="none"/>
72703         </return-value>
72704       </glib:signal>
72705       <glib:signal name="map-event">
72706         <return-value transfer-ownership="none">
72707           <type name="gboolean"/>
72708         </return-value>
72709         <parameters>
72710           <parameter name="object" transfer-ownership="none">
72711             <type name="Gdk.Event"/>
72712           </parameter>
72713         </parameters>
72714       </glib:signal>
72715       <glib:signal name="mnemonic-activate">
72716         <return-value transfer-ownership="none">
72717           <type name="gboolean"/>
72718         </return-value>
72719         <parameters>
72720           <parameter name="object" transfer-ownership="none">
72721             <type name="gboolean"/>
72722           </parameter>
72723         </parameters>
72724       </glib:signal>
72725       <glib:signal name="motion-notify-event">
72726         <doc xml:whitespace="preserve">The ::motion-notify-event signal is emitted when the pointer moves 
72727 over the widget's #GdkWindow.
72728 To receive this signal, the #GdkWindow associated to the widget 
72729 needs to enable the #GDK_POINTER_MOTION_MASK mask.
72730 This signal will be sent to the grab widget if there is one.
72731 %FALSE to propagate the event further.</doc>
72732         <return-value transfer-ownership="none">
72733           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72734           <type name="gboolean"/>
72735         </return-value>
72736         <parameters>
72737           <parameter name="object" transfer-ownership="none">
72738             <doc xml:whitespace="preserve">the #GdkEventMotion which triggered this signal.</doc>
72739             <type name="Gdk.EventMotion"/>
72740           </parameter>
72741         </parameters>
72742       </glib:signal>
72743       <glib:signal name="move-focus">
72744         <return-value transfer-ownership="none">
72745           <type name="none"/>
72746         </return-value>
72747         <parameters>
72748           <parameter name="object" transfer-ownership="none">
72749             <type name="DirectionType"/>
72750           </parameter>
72751         </parameters>
72752       </glib:signal>
72753       <glib:signal name="no-expose-event">
72754         <doc xml:whitespace="preserve">The ::no-expose-event will be emitted when the @widget's window is 
72755 drawn as a copy of another #GdkDrawable which was completely unobscured.
72756 If the source window was partially obscured #GdkEventExpose events will
72757 be generated for those areas.
72758 %FALSE to propagate the event further.</doc>
72759         <return-value transfer-ownership="none">
72760           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72761           <type name="gboolean"/>
72762         </return-value>
72763         <parameters>
72764           <parameter name="object" transfer-ownership="none">
72765             <doc xml:whitespace="preserve">the #GdkEventNoExpose which triggered this signal.</doc>
72766             <type name="Gdk.EventNoExpose"/>
72767           </parameter>
72768         </parameters>
72769       </glib:signal>
72770       <glib:signal name="parent-set">
72771         <doc xml:whitespace="preserve">The ::parent-set signal is emitted when a new parent 
72772 has been set on a widget.</doc>
72773         <return-value transfer-ownership="none">
72774           <type name="none"/>
72775         </return-value>
72776         <parameters>
72777           <parameter name="object" transfer-ownership="none" allow-none="1">
72778             <doc xml:whitespace="preserve">the previous parent, or %NULL if the widget just got its initial parent.</doc>
72779             <type name="Widget"/>
72780           </parameter>
72781         </parameters>
72782       </glib:signal>
72783       <glib:signal name="popup-menu">
72784         <return-value transfer-ownership="none">
72785           <type name="gboolean"/>
72786         </return-value>
72787       </glib:signal>
72788       <glib:signal name="property-notify-event">
72789         <return-value transfer-ownership="none">
72790           <type name="gboolean"/>
72791         </return-value>
72792         <parameters>
72793           <parameter name="object" transfer-ownership="none">
72794             <type name="Gdk.Event"/>
72795           </parameter>
72796         </parameters>
72797       </glib:signal>
72798       <glib:signal name="proximity-in-event">
72799         <return-value transfer-ownership="none">
72800           <type name="gboolean"/>
72801         </return-value>
72802         <parameters>
72803           <parameter name="object" transfer-ownership="none">
72804             <type name="Gdk.Event"/>
72805           </parameter>
72806         </parameters>
72807       </glib:signal>
72808       <glib:signal name="proximity-out-event">
72809         <return-value transfer-ownership="none">
72810           <type name="gboolean"/>
72811         </return-value>
72812         <parameters>
72813           <parameter name="object" transfer-ownership="none">
72814             <type name="Gdk.Event"/>
72815           </parameter>
72816         </parameters>
72817       </glib:signal>
72818       <glib:signal name="query-tooltip" version="2.12">
72819         <doc xml:whitespace="preserve">Emitted when #GtkWidget:has-tooltip is %TRUE and the #GtkSettings:gtk-tooltip-timeout 
72820 has expired with the cursor hovering "above" @widget; or emitted when @widget got 
72821 focus in keyboard mode.
72822 Using the given coordinates, the signal handler should determine
72823 whether a tooltip should be shown for @widget. If this is the case
72824 %TRUE should be returned, %FALSE otherwise.  Note that if
72825 should not be used.
72826 The signal handler is free to manipulate @tooltip with the therefore
72827 destined function calls.</doc>
72828         <return-value transfer-ownership="none">
72829           <doc xml:whitespace="preserve">%TRUE if @tooltip should be shown right now, %FALSE otherwise.</doc>
72830           <type name="gboolean"/>
72831         </return-value>
72832         <parameters>
72833           <parameter name="object" transfer-ownership="none">
72834             <doc xml:whitespace="preserve">the x coordinate of the cursor position where the request has been emitted, relative to @widget-&gt;window</doc>
72835             <type name="gint"/>
72836           </parameter>
72837           <parameter name="p0" transfer-ownership="none">
72838             <doc xml:whitespace="preserve">the y coordinate of the cursor position where the request has been emitted, relative to @widget-&gt;window</doc>
72839             <type name="gint"/>
72840           </parameter>
72841           <parameter name="p1" transfer-ownership="none">
72842             <doc xml:whitespace="preserve">%TRUE if the tooltip was trigged using the keyboard</doc>
72843             <type name="gboolean"/>
72844           </parameter>
72845           <parameter name="p2" transfer-ownership="none">
72846             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
72847             <type name="Tooltip"/>
72848           </parameter>
72849         </parameters>
72850       </glib:signal>
72851       <glib:signal name="realize">
72852         <return-value transfer-ownership="none">
72853           <type name="none"/>
72854         </return-value>
72855       </glib:signal>
72856       <glib:signal name="screen-changed">
72857         <doc xml:whitespace="preserve">The ::screen-changed signal gets emitted when the
72858 screen of a widget has changed.</doc>
72859         <return-value transfer-ownership="none">
72860           <type name="none"/>
72861         </return-value>
72862         <parameters>
72863           <parameter name="object" transfer-ownership="none" allow-none="1">
72864             <doc xml:whitespace="preserve">the previous screen, or %NULL if the widget was not associated with a screen before</doc>
72865             <type name="Gdk.Screen"/>
72866           </parameter>
72867         </parameters>
72868       </glib:signal>
72869       <glib:signal name="scroll-event">
72870         <doc xml:whitespace="preserve">The ::scroll-event signal is emitted when a button in the 4 to 7
72871 range is pressed. Wheel mice are usually configured to generate 
72872 button press events for buttons 4 and 5 when the wheel is turned.
72873 To receive this signal, the #GdkWindow associated to the widget needs
72874 to enable the #GDK_BUTTON_PRESS_MASK mask.
72875 This signal will be sent to the grab widget if there is one.
72876 %FALSE to propagate the event further.</doc>
72877         <return-value transfer-ownership="none">
72878           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
72879           <type name="gboolean"/>
72880         </return-value>
72881         <parameters>
72882           <parameter name="object" transfer-ownership="none">
72883             <doc xml:whitespace="preserve">the #GdkEventScroll which triggered this signal.</doc>
72884             <type name="Gdk.EventScroll"/>
72885           </parameter>
72886         </parameters>
72887       </glib:signal>
72888       <glib:signal name="selection-clear-event">
72889         <return-value transfer-ownership="none">
72890           <type name="gboolean"/>
72891         </return-value>
72892         <parameters>
72893           <parameter name="object" transfer-ownership="none">
72894             <type name="Gdk.Event"/>
72895           </parameter>
72896         </parameters>
72897       </glib:signal>
72898       <glib:signal name="selection-get">
72899         <return-value transfer-ownership="none">
72900           <type name="none"/>
72901         </return-value>
72902         <parameters>
72903           <parameter name="object" transfer-ownership="none">
72904             <type name="SelectionData"/>
72905           </parameter>
72906           <parameter name="p0" transfer-ownership="none">
72907             <type name="guint"/>
72908           </parameter>
72909           <parameter name="p1" transfer-ownership="none">
72910             <type name="guint"/>
72911           </parameter>
72912         </parameters>
72913       </glib:signal>
72914       <glib:signal name="selection-notify-event">
72915         <return-value transfer-ownership="none">
72916           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
72917           <type name="gboolean"/>
72918         </return-value>
72919         <parameters>
72920           <parameter name="object" transfer-ownership="none">
72921             <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
72922             <type name="Gdk.Event"/>
72923           </parameter>
72924         </parameters>
72925       </glib:signal>
72926       <glib:signal name="selection-received">
72927         <return-value transfer-ownership="none">
72928           <type name="none"/>
72929         </return-value>
72930         <parameters>
72931           <parameter name="object" transfer-ownership="none">
72932             <type name="SelectionData"/>
72933           </parameter>
72934           <parameter name="p0" transfer-ownership="none">
72935             <type name="guint"/>
72936           </parameter>
72937         </parameters>
72938       </glib:signal>
72939       <glib:signal name="selection-request-event">
72940         <return-value transfer-ownership="none">
72941           <type name="gboolean"/>
72942         </return-value>
72943         <parameters>
72944           <parameter name="object" transfer-ownership="none">
72945             <type name="Gdk.Event"/>
72946           </parameter>
72947         </parameters>
72948       </glib:signal>
72949       <glib:signal name="show">
72950         <return-value transfer-ownership="none">
72951           <type name="none"/>
72952         </return-value>
72953       </glib:signal>
72954       <glib:signal name="show-help">
72955         <return-value transfer-ownership="none">
72956           <type name="gboolean"/>
72957         </return-value>
72958         <parameters>
72959           <parameter name="object" transfer-ownership="none">
72960             <type name="WidgetHelpType"/>
72961           </parameter>
72962         </parameters>
72963       </glib:signal>
72964       <glib:signal name="size-allocate" introspectable="0">
72965         <return-value transfer-ownership="none">
72966           <type name="none"/>
72967         </return-value>
72968         <parameters>
72969           <parameter name="object" transfer-ownership="none">
72970             <type/>
72971           </parameter>
72972         </parameters>
72973       </glib:signal>
72974       <glib:signal name="size-request">
72975         <return-value transfer-ownership="none">
72976           <type name="none"/>
72977         </return-value>
72978         <parameters>
72979           <parameter name="object" transfer-ownership="none">
72980             <type name="Requisition"/>
72981           </parameter>
72982         </parameters>
72983       </glib:signal>
72984       <glib:signal name="state-changed">
72985         <doc xml:whitespace="preserve">The ::state-changed signal is emitted when the widget state changes.
72986 See gtk_widget_get_state().</doc>
72987         <return-value transfer-ownership="none">
72988           <type name="none"/>
72989         </return-value>
72990         <parameters>
72991           <parameter name="object" transfer-ownership="none">
72992             <doc xml:whitespace="preserve">the previous state</doc>
72993             <type name="StateType"/>
72994           </parameter>
72995         </parameters>
72996       </glib:signal>
72997       <glib:signal name="style-set">
72998         <doc xml:whitespace="preserve">The ::style-set signal is emitted when a new style has been set 
72999 on a widget. Note that style-modifying functions like 
73000 gtk_widget_modify_base() also cause this signal to be emitted.</doc>
73001         <return-value transfer-ownership="none">
73002           <type name="none"/>
73003         </return-value>
73004         <parameters>
73005           <parameter name="object" transfer-ownership="none" allow-none="1">
73006             <doc xml:whitespace="preserve">the previous style, or %NULL if the widget just got its initial style</doc>
73007             <type name="Style"/>
73008           </parameter>
73009         </parameters>
73010       </glib:signal>
73011       <glib:signal name="unmap">
73012         <return-value transfer-ownership="none">
73013           <type name="none"/>
73014         </return-value>
73015       </glib:signal>
73016       <glib:signal name="unmap-event">
73017         <return-value transfer-ownership="none">
73018           <type name="gboolean"/>
73019         </return-value>
73020         <parameters>
73021           <parameter name="object" transfer-ownership="none">
73022             <type name="Gdk.Event"/>
73023           </parameter>
73024         </parameters>
73025       </glib:signal>
73026       <glib:signal name="unrealize">
73027         <return-value transfer-ownership="none">
73028           <type name="none"/>
73029         </return-value>
73030       </glib:signal>
73031       <glib:signal name="visibility-notify-event">
73032         <doc xml:whitespace="preserve">The ::visibility-notify-event will be emitted when the @widget's window
73033 is obscured or unobscured.
73034 To receive this signal the #GdkWindow associated to the widget needs
73035 to enable the #GDK_VISIBILITY_NOTIFY_MASK mask.
73036 %FALSE to propagate the event further.</doc>
73037         <return-value transfer-ownership="none">
73038           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
73039           <type name="gboolean"/>
73040         </return-value>
73041         <parameters>
73042           <parameter name="object" transfer-ownership="none">
73043             <doc xml:whitespace="preserve">the #GdkEventVisibility which triggered this signal.</doc>
73044             <type name="Gdk.EventVisibility"/>
73045           </parameter>
73046         </parameters>
73047       </glib:signal>
73048       <glib:signal name="window-state-event">
73049         <doc xml:whitespace="preserve">The ::window-state-event will be emitted when the state of the 
73050 toplevel window associated to the @widget changes.
73051 To receive this signal the #GdkWindow associated to the widget 
73052 needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable 
73053 this mask automatically for all new windows.
73054 event. %FALSE to propagate the event further.</doc>
73055         <return-value transfer-ownership="none">
73056           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the</doc>
73057           <type name="gboolean"/>
73058         </return-value>
73059         <parameters>
73060           <parameter name="object" transfer-ownership="none">
73061             <doc xml:whitespace="preserve">the #GdkEventWindowState which triggered this signal.</doc>
73062             <type name="Gdk.EventWindowState"/>
73063           </parameter>
73064         </parameters>
73065       </glib:signal>
73066     </class>
73067     <record name="WidgetAuxInfo" c:type="GtkWidgetAuxInfo">
73068       <field name="width" writable="1">
73069         <type name="gint" c:type="gint"/>
73070       </field>
73071       <field name="height" writable="1">
73072         <type name="gint" c:type="gint"/>
73073       </field>
73074       <field name="halign" writable="1" bits="4">
73075         <type name="guint" c:type="guint"/>
73076       </field>
73077       <field name="valign" writable="1" bits="4">
73078         <type name="guint" c:type="guint"/>
73079       </field>
73080       <field name="margin" writable="1">
73081         <type name="Border" c:type="GtkBorder"/>
73082       </field>
73083     </record>
73084     <record name="WidgetClass"
73085             c:type="GtkWidgetClass"
73086             glib:is-gtype-struct-for="Widget">
73087       <field name="parent_class">
73088         <type name="ObjectClass" c:type="GtkObjectClass"/>
73089       </field>
73090       <field name="activate_signal">
73091         <type name="guint" c:type="guint"/>
73092       </field>
73093       <field name="set_scroll_adjustments_signal">
73094         <type name="guint" c:type="guint"/>
73095       </field>
73096       <field name="dispatch_child_properties_changed">
73097         <callback name="dispatch_child_properties_changed">
73098           <return-value transfer-ownership="none">
73099             <type name="none" c:type="void"/>
73100           </return-value>
73101           <parameters>
73102             <parameter name="widget" transfer-ownership="none">
73103               <type name="Widget" c:type="GtkWidget*"/>
73104             </parameter>
73105             <parameter name="n_pspecs" transfer-ownership="none">
73106               <type name="guint" c:type="guint"/>
73107             </parameter>
73108             <parameter name="pspecs" transfer-ownership="none">
73109               <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
73110             </parameter>
73111           </parameters>
73112         </callback>
73113       </field>
73114       <field name="show">
73115         <callback name="show">
73116           <return-value transfer-ownership="none">
73117             <type name="none" c:type="void"/>
73118           </return-value>
73119           <parameters>
73120             <parameter name="widget" transfer-ownership="none">
73121               <type name="Widget" c:type="GtkWidget*"/>
73122             </parameter>
73123           </parameters>
73124         </callback>
73125       </field>
73126       <field name="show_all">
73127         <callback name="show_all">
73128           <return-value transfer-ownership="none">
73129             <type name="none" c:type="void"/>
73130           </return-value>
73131           <parameters>
73132             <parameter name="widget" transfer-ownership="none">
73133               <type name="Widget" c:type="GtkWidget*"/>
73134             </parameter>
73135           </parameters>
73136         </callback>
73137       </field>
73138       <field name="hide">
73139         <callback name="hide">
73140           <return-value transfer-ownership="none">
73141             <type name="none" c:type="void"/>
73142           </return-value>
73143           <parameters>
73144             <parameter name="widget" transfer-ownership="none">
73145               <type name="Widget" c:type="GtkWidget*"/>
73146             </parameter>
73147           </parameters>
73148         </callback>
73149       </field>
73150       <field name="hide_all">
73151         <callback name="hide_all">
73152           <return-value transfer-ownership="none">
73153             <type name="none" c:type="void"/>
73154           </return-value>
73155           <parameters>
73156             <parameter name="widget" transfer-ownership="none">
73157               <type name="Widget" c:type="GtkWidget*"/>
73158             </parameter>
73159           </parameters>
73160         </callback>
73161       </field>
73162       <field name="map">
73163         <callback name="map">
73164           <return-value transfer-ownership="none">
73165             <type name="none" c:type="void"/>
73166           </return-value>
73167           <parameters>
73168             <parameter name="widget" transfer-ownership="none">
73169               <type name="Widget" c:type="GtkWidget*"/>
73170             </parameter>
73171           </parameters>
73172         </callback>
73173       </field>
73174       <field name="unmap">
73175         <callback name="unmap">
73176           <return-value transfer-ownership="none">
73177             <type name="none" c:type="void"/>
73178           </return-value>
73179           <parameters>
73180             <parameter name="widget" transfer-ownership="none">
73181               <type name="Widget" c:type="GtkWidget*"/>
73182             </parameter>
73183           </parameters>
73184         </callback>
73185       </field>
73186       <field name="realize">
73187         <callback name="realize">
73188           <return-value transfer-ownership="none">
73189             <type name="none" c:type="void"/>
73190           </return-value>
73191           <parameters>
73192             <parameter name="widget" transfer-ownership="none">
73193               <type name="Widget" c:type="GtkWidget*"/>
73194             </parameter>
73195           </parameters>
73196         </callback>
73197       </field>
73198       <field name="unrealize">
73199         <callback name="unrealize">
73200           <return-value transfer-ownership="none">
73201             <type name="none" c:type="void"/>
73202           </return-value>
73203           <parameters>
73204             <parameter name="widget" transfer-ownership="none">
73205               <type name="Widget" c:type="GtkWidget*"/>
73206             </parameter>
73207           </parameters>
73208         </callback>
73209       </field>
73210       <field name="size_request">
73211         <callback name="size_request">
73212           <return-value transfer-ownership="none">
73213             <type name="none" c:type="void"/>
73214           </return-value>
73215           <parameters>
73216             <parameter name="widget" transfer-ownership="none">
73217               <type name="Widget" c:type="GtkWidget*"/>
73218             </parameter>
73219             <parameter name="requisition" transfer-ownership="none">
73220               <type name="Requisition" c:type="GtkRequisition*"/>
73221             </parameter>
73222           </parameters>
73223         </callback>
73224       </field>
73225       <field name="size_allocate">
73226         <callback name="size_allocate">
73227           <return-value transfer-ownership="none">
73228             <type name="none" c:type="void"/>
73229           </return-value>
73230           <parameters>
73231             <parameter name="widget" transfer-ownership="none">
73232               <type name="Widget" c:type="GtkWidget*"/>
73233             </parameter>
73234             <parameter name="allocation" transfer-ownership="none">
73235               <type name="Allocation" c:type="GtkAllocation*"/>
73236             </parameter>
73237           </parameters>
73238         </callback>
73239       </field>
73240       <field name="state_changed">
73241         <callback name="state_changed">
73242           <return-value transfer-ownership="none">
73243             <type name="none" c:type="void"/>
73244           </return-value>
73245           <parameters>
73246             <parameter name="widget" transfer-ownership="none">
73247               <type name="Widget" c:type="GtkWidget*"/>
73248             </parameter>
73249             <parameter name="previous_state" transfer-ownership="none">
73250               <type name="StateType" c:type="GtkStateType"/>
73251             </parameter>
73252           </parameters>
73253         </callback>
73254       </field>
73255       <field name="parent_set">
73256         <callback name="parent_set">
73257           <return-value transfer-ownership="none">
73258             <type name="none" c:type="void"/>
73259           </return-value>
73260           <parameters>
73261             <parameter name="widget" transfer-ownership="none">
73262               <type name="Widget" c:type="GtkWidget*"/>
73263             </parameter>
73264             <parameter name="previous_parent" transfer-ownership="none">
73265               <type name="Widget" c:type="GtkWidget*"/>
73266             </parameter>
73267           </parameters>
73268         </callback>
73269       </field>
73270       <field name="hierarchy_changed">
73271         <callback name="hierarchy_changed">
73272           <return-value transfer-ownership="none">
73273             <type name="none" c:type="void"/>
73274           </return-value>
73275           <parameters>
73276             <parameter name="widget" transfer-ownership="none">
73277               <type name="Widget" c:type="GtkWidget*"/>
73278             </parameter>
73279             <parameter name="previous_toplevel" transfer-ownership="none">
73280               <type name="Widget" c:type="GtkWidget*"/>
73281             </parameter>
73282           </parameters>
73283         </callback>
73284       </field>
73285       <field name="style_set">
73286         <callback name="style_set">
73287           <return-value transfer-ownership="none">
73288             <type name="none" c:type="void"/>
73289           </return-value>
73290           <parameters>
73291             <parameter name="widget" transfer-ownership="none">
73292               <type name="Widget" c:type="GtkWidget*"/>
73293             </parameter>
73294             <parameter name="previous_style" transfer-ownership="none">
73295               <type name="Style" c:type="GtkStyle*"/>
73296             </parameter>
73297           </parameters>
73298         </callback>
73299       </field>
73300       <field name="direction_changed">
73301         <callback name="direction_changed">
73302           <return-value transfer-ownership="none">
73303             <type name="none" c:type="void"/>
73304           </return-value>
73305           <parameters>
73306             <parameter name="widget" transfer-ownership="none">
73307               <type name="Widget" c:type="GtkWidget*"/>
73308             </parameter>
73309             <parameter name="previous_direction" transfer-ownership="none">
73310               <type name="TextDirection" c:type="GtkTextDirection"/>
73311             </parameter>
73312           </parameters>
73313         </callback>
73314       </field>
73315       <field name="grab_notify">
73316         <callback name="grab_notify">
73317           <return-value transfer-ownership="none">
73318             <type name="none" c:type="void"/>
73319           </return-value>
73320           <parameters>
73321             <parameter name="widget" transfer-ownership="none">
73322               <type name="Widget" c:type="GtkWidget*"/>
73323             </parameter>
73324             <parameter name="was_grabbed" transfer-ownership="none">
73325               <type name="gboolean" c:type="gboolean"/>
73326             </parameter>
73327           </parameters>
73328         </callback>
73329       </field>
73330       <field name="child_notify">
73331         <callback name="child_notify">
73332           <return-value transfer-ownership="none">
73333             <type name="none" c:type="void"/>
73334           </return-value>
73335           <parameters>
73336             <parameter name="widget" transfer-ownership="none">
73337               <type name="Widget" c:type="GtkWidget*"/>
73338             </parameter>
73339             <parameter name="pspec" transfer-ownership="none">
73340               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
73341             </parameter>
73342           </parameters>
73343         </callback>
73344       </field>
73345       <field name="mnemonic_activate">
73346         <callback name="mnemonic_activate">
73347           <return-value transfer-ownership="none">
73348             <type name="gboolean" c:type="gboolean"/>
73349           </return-value>
73350           <parameters>
73351             <parameter name="widget" transfer-ownership="none">
73352               <type name="Widget" c:type="GtkWidget*"/>
73353             </parameter>
73354             <parameter name="group_cycling" transfer-ownership="none">
73355               <type name="gboolean" c:type="gboolean"/>
73356             </parameter>
73357           </parameters>
73358         </callback>
73359       </field>
73360       <field name="grab_focus">
73361         <callback name="grab_focus">
73362           <return-value transfer-ownership="none">
73363             <type name="none" c:type="void"/>
73364           </return-value>
73365           <parameters>
73366             <parameter name="widget" transfer-ownership="none">
73367               <type name="Widget" c:type="GtkWidget*"/>
73368             </parameter>
73369           </parameters>
73370         </callback>
73371       </field>
73372       <field name="focus">
73373         <callback name="focus">
73374           <return-value transfer-ownership="none">
73375             <type name="gboolean" c:type="gboolean"/>
73376           </return-value>
73377           <parameters>
73378             <parameter name="widget" transfer-ownership="none">
73379               <type name="Widget" c:type="GtkWidget*"/>
73380             </parameter>
73381             <parameter name="direction" transfer-ownership="none">
73382               <type name="DirectionType" c:type="GtkDirectionType"/>
73383             </parameter>
73384           </parameters>
73385         </callback>
73386       </field>
73387       <field name="event">
73388         <callback name="event">
73389           <return-value transfer-ownership="none">
73390             <type name="gboolean" c:type="gboolean"/>
73391           </return-value>
73392           <parameters>
73393             <parameter name="widget" transfer-ownership="none">
73394               <type name="Widget" c:type="GtkWidget*"/>
73395             </parameter>
73396             <parameter name="event" transfer-ownership="none">
73397               <type name="Gdk.Event" c:type="GdkEvent*"/>
73398             </parameter>
73399           </parameters>
73400         </callback>
73401       </field>
73402       <field name="button_press_event">
73403         <callback name="button_press_event">
73404           <return-value transfer-ownership="none">
73405             <type name="gboolean" c:type="gboolean"/>
73406           </return-value>
73407           <parameters>
73408             <parameter name="widget" transfer-ownership="none">
73409               <type name="Widget" c:type="GtkWidget*"/>
73410             </parameter>
73411             <parameter name="event" transfer-ownership="none">
73412               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
73413             </parameter>
73414           </parameters>
73415         </callback>
73416       </field>
73417       <field name="button_release_event">
73418         <callback name="button_release_event">
73419           <return-value transfer-ownership="none">
73420             <type name="gboolean" c:type="gboolean"/>
73421           </return-value>
73422           <parameters>
73423             <parameter name="widget" transfer-ownership="none">
73424               <type name="Widget" c:type="GtkWidget*"/>
73425             </parameter>
73426             <parameter name="event" transfer-ownership="none">
73427               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
73428             </parameter>
73429           </parameters>
73430         </callback>
73431       </field>
73432       <field name="scroll_event">
73433         <callback name="scroll_event">
73434           <return-value transfer-ownership="none">
73435             <type name="gboolean" c:type="gboolean"/>
73436           </return-value>
73437           <parameters>
73438             <parameter name="widget" transfer-ownership="none">
73439               <type name="Widget" c:type="GtkWidget*"/>
73440             </parameter>
73441             <parameter name="event" transfer-ownership="none">
73442               <type name="Gdk.EventScroll" c:type="GdkEventScroll*"/>
73443             </parameter>
73444           </parameters>
73445         </callback>
73446       </field>
73447       <field name="motion_notify_event">
73448         <callback name="motion_notify_event">
73449           <return-value transfer-ownership="none">
73450             <type name="gboolean" c:type="gboolean"/>
73451           </return-value>
73452           <parameters>
73453             <parameter name="widget" transfer-ownership="none">
73454               <type name="Widget" c:type="GtkWidget*"/>
73455             </parameter>
73456             <parameter name="event" transfer-ownership="none">
73457               <type name="Gdk.EventMotion" c:type="GdkEventMotion*"/>
73458             </parameter>
73459           </parameters>
73460         </callback>
73461       </field>
73462       <field name="delete_event">
73463         <callback name="delete_event">
73464           <return-value transfer-ownership="none">
73465             <type name="gboolean" c:type="gboolean"/>
73466           </return-value>
73467           <parameters>
73468             <parameter name="widget" transfer-ownership="none">
73469               <type name="Widget" c:type="GtkWidget*"/>
73470             </parameter>
73471             <parameter name="event" transfer-ownership="none">
73472               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
73473             </parameter>
73474           </parameters>
73475         </callback>
73476       </field>
73477       <field name="destroy_event">
73478         <callback name="destroy_event">
73479           <return-value transfer-ownership="none">
73480             <type name="gboolean" c:type="gboolean"/>
73481           </return-value>
73482           <parameters>
73483             <parameter name="widget" transfer-ownership="none">
73484               <type name="Widget" c:type="GtkWidget*"/>
73485             </parameter>
73486             <parameter name="event" transfer-ownership="none">
73487               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
73488             </parameter>
73489           </parameters>
73490         </callback>
73491       </field>
73492       <field name="expose_event">
73493         <callback name="expose_event">
73494           <return-value transfer-ownership="none">
73495             <type name="gboolean" c:type="gboolean"/>
73496           </return-value>
73497           <parameters>
73498             <parameter name="widget" transfer-ownership="none">
73499               <type name="Widget" c:type="GtkWidget*"/>
73500             </parameter>
73501             <parameter name="event" transfer-ownership="none">
73502               <type name="Gdk.EventExpose" c:type="GdkEventExpose*"/>
73503             </parameter>
73504           </parameters>
73505         </callback>
73506       </field>
73507       <field name="key_press_event">
73508         <callback name="key_press_event">
73509           <return-value transfer-ownership="none">
73510             <type name="gboolean" c:type="gboolean"/>
73511           </return-value>
73512           <parameters>
73513             <parameter name="widget" transfer-ownership="none">
73514               <type name="Widget" c:type="GtkWidget*"/>
73515             </parameter>
73516             <parameter name="event" transfer-ownership="none">
73517               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
73518             </parameter>
73519           </parameters>
73520         </callback>
73521       </field>
73522       <field name="key_release_event">
73523         <callback name="key_release_event">
73524           <return-value transfer-ownership="none">
73525             <type name="gboolean" c:type="gboolean"/>
73526           </return-value>
73527           <parameters>
73528             <parameter name="widget" transfer-ownership="none">
73529               <type name="Widget" c:type="GtkWidget*"/>
73530             </parameter>
73531             <parameter name="event" transfer-ownership="none">
73532               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
73533             </parameter>
73534           </parameters>
73535         </callback>
73536       </field>
73537       <field name="enter_notify_event">
73538         <callback name="enter_notify_event">
73539           <return-value transfer-ownership="none">
73540             <type name="gboolean" c:type="gboolean"/>
73541           </return-value>
73542           <parameters>
73543             <parameter name="widget" transfer-ownership="none">
73544               <type name="Widget" c:type="GtkWidget*"/>
73545             </parameter>
73546             <parameter name="event" transfer-ownership="none">
73547               <type name="Gdk.EventCrossing" c:type="GdkEventCrossing*"/>
73548             </parameter>
73549           </parameters>
73550         </callback>
73551       </field>
73552       <field name="leave_notify_event">
73553         <callback name="leave_notify_event">
73554           <return-value transfer-ownership="none">
73555             <type name="gboolean" c:type="gboolean"/>
73556           </return-value>
73557           <parameters>
73558             <parameter name="widget" transfer-ownership="none">
73559               <type name="Widget" c:type="GtkWidget*"/>
73560             </parameter>
73561             <parameter name="event" transfer-ownership="none">
73562               <type name="Gdk.EventCrossing" c:type="GdkEventCrossing*"/>
73563             </parameter>
73564           </parameters>
73565         </callback>
73566       </field>
73567       <field name="configure_event">
73568         <callback name="configure_event">
73569           <return-value transfer-ownership="none">
73570             <type name="gboolean" c:type="gboolean"/>
73571           </return-value>
73572           <parameters>
73573             <parameter name="widget" transfer-ownership="none">
73574               <type name="Widget" c:type="GtkWidget*"/>
73575             </parameter>
73576             <parameter name="event" transfer-ownership="none">
73577               <type name="Gdk.EventConfigure" c:type="GdkEventConfigure*"/>
73578             </parameter>
73579           </parameters>
73580         </callback>
73581       </field>
73582       <field name="focus_in_event">
73583         <callback name="focus_in_event">
73584           <return-value transfer-ownership="none">
73585             <type name="gboolean" c:type="gboolean"/>
73586           </return-value>
73587           <parameters>
73588             <parameter name="widget" transfer-ownership="none">
73589               <type name="Widget" c:type="GtkWidget*"/>
73590             </parameter>
73591             <parameter name="event" transfer-ownership="none">
73592               <type name="Gdk.EventFocus" c:type="GdkEventFocus*"/>
73593             </parameter>
73594           </parameters>
73595         </callback>
73596       </field>
73597       <field name="focus_out_event">
73598         <callback name="focus_out_event">
73599           <return-value transfer-ownership="none">
73600             <type name="gboolean" c:type="gboolean"/>
73601           </return-value>
73602           <parameters>
73603             <parameter name="widget" transfer-ownership="none">
73604               <type name="Widget" c:type="GtkWidget*"/>
73605             </parameter>
73606             <parameter name="event" transfer-ownership="none">
73607               <type name="Gdk.EventFocus" c:type="GdkEventFocus*"/>
73608             </parameter>
73609           </parameters>
73610         </callback>
73611       </field>
73612       <field name="map_event">
73613         <callback name="map_event">
73614           <return-value transfer-ownership="none">
73615             <type name="gboolean" c:type="gboolean"/>
73616           </return-value>
73617           <parameters>
73618             <parameter name="widget" transfer-ownership="none">
73619               <type name="Widget" c:type="GtkWidget*"/>
73620             </parameter>
73621             <parameter name="event" transfer-ownership="none">
73622               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
73623             </parameter>
73624           </parameters>
73625         </callback>
73626       </field>
73627       <field name="unmap_event">
73628         <callback name="unmap_event">
73629           <return-value transfer-ownership="none">
73630             <type name="gboolean" c:type="gboolean"/>
73631           </return-value>
73632           <parameters>
73633             <parameter name="widget" transfer-ownership="none">
73634               <type name="Widget" c:type="GtkWidget*"/>
73635             </parameter>
73636             <parameter name="event" transfer-ownership="none">
73637               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
73638             </parameter>
73639           </parameters>
73640         </callback>
73641       </field>
73642       <field name="property_notify_event">
73643         <callback name="property_notify_event">
73644           <return-value transfer-ownership="none">
73645             <type name="gboolean" c:type="gboolean"/>
73646           </return-value>
73647           <parameters>
73648             <parameter name="widget" transfer-ownership="none">
73649               <type name="Widget" c:type="GtkWidget*"/>
73650             </parameter>
73651             <parameter name="event" transfer-ownership="none">
73652               <type name="Gdk.EventProperty" c:type="GdkEventProperty*"/>
73653             </parameter>
73654           </parameters>
73655         </callback>
73656       </field>
73657       <field name="selection_clear_event">
73658         <callback name="selection_clear_event">
73659           <return-value transfer-ownership="none">
73660             <type name="gboolean" c:type="gboolean"/>
73661           </return-value>
73662           <parameters>
73663             <parameter name="widget" transfer-ownership="none">
73664               <type name="Widget" c:type="GtkWidget*"/>
73665             </parameter>
73666             <parameter name="event" transfer-ownership="none">
73667               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
73668             </parameter>
73669           </parameters>
73670         </callback>
73671       </field>
73672       <field name="selection_request_event">
73673         <callback name="selection_request_event">
73674           <return-value transfer-ownership="none">
73675             <type name="gboolean" c:type="gboolean"/>
73676           </return-value>
73677           <parameters>
73678             <parameter name="widget" transfer-ownership="none">
73679               <type name="Widget" c:type="GtkWidget*"/>
73680             </parameter>
73681             <parameter name="event" transfer-ownership="none">
73682               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
73683             </parameter>
73684           </parameters>
73685         </callback>
73686       </field>
73687       <field name="selection_notify_event">
73688         <callback name="selection_notify_event">
73689           <return-value transfer-ownership="none">
73690             <type name="gboolean" c:type="gboolean"/>
73691           </return-value>
73692           <parameters>
73693             <parameter name="widget" transfer-ownership="none">
73694               <type name="Widget" c:type="GtkWidget*"/>
73695             </parameter>
73696             <parameter name="event" transfer-ownership="none">
73697               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
73698             </parameter>
73699           </parameters>
73700         </callback>
73701       </field>
73702       <field name="proximity_in_event">
73703         <callback name="proximity_in_event">
73704           <return-value transfer-ownership="none">
73705             <type name="gboolean" c:type="gboolean"/>
73706           </return-value>
73707           <parameters>
73708             <parameter name="widget" transfer-ownership="none">
73709               <type name="Widget" c:type="GtkWidget*"/>
73710             </parameter>
73711             <parameter name="event" transfer-ownership="none">
73712               <type name="Gdk.EventProximity" c:type="GdkEventProximity*"/>
73713             </parameter>
73714           </parameters>
73715         </callback>
73716       </field>
73717       <field name="proximity_out_event">
73718         <callback name="proximity_out_event">
73719           <return-value transfer-ownership="none">
73720             <type name="gboolean" c:type="gboolean"/>
73721           </return-value>
73722           <parameters>
73723             <parameter name="widget" transfer-ownership="none">
73724               <type name="Widget" c:type="GtkWidget*"/>
73725             </parameter>
73726             <parameter name="event" transfer-ownership="none">
73727               <type name="Gdk.EventProximity" c:type="GdkEventProximity*"/>
73728             </parameter>
73729           </parameters>
73730         </callback>
73731       </field>
73732       <field name="visibility_notify_event">
73733         <callback name="visibility_notify_event">
73734           <return-value transfer-ownership="none">
73735             <type name="gboolean" c:type="gboolean"/>
73736           </return-value>
73737           <parameters>
73738             <parameter name="widget" transfer-ownership="none">
73739               <type name="Widget" c:type="GtkWidget*"/>
73740             </parameter>
73741             <parameter name="event" transfer-ownership="none">
73742               <type name="Gdk.EventVisibility" c:type="GdkEventVisibility*"/>
73743             </parameter>
73744           </parameters>
73745         </callback>
73746       </field>
73747       <field name="client_event">
73748         <callback name="client_event">
73749           <return-value transfer-ownership="none">
73750             <type name="gboolean" c:type="gboolean"/>
73751           </return-value>
73752           <parameters>
73753             <parameter name="widget" transfer-ownership="none">
73754               <type name="Widget" c:type="GtkWidget*"/>
73755             </parameter>
73756             <parameter name="event" transfer-ownership="none">
73757               <type name="Gdk.EventClient" c:type="GdkEventClient*"/>
73758             </parameter>
73759           </parameters>
73760         </callback>
73761       </field>
73762       <field name="no_expose_event">
73763         <callback name="no_expose_event">
73764           <return-value transfer-ownership="none">
73765             <type name="gboolean" c:type="gboolean"/>
73766           </return-value>
73767           <parameters>
73768             <parameter name="widget" transfer-ownership="none">
73769               <type name="Widget" c:type="GtkWidget*"/>
73770             </parameter>
73771             <parameter name="event" transfer-ownership="none">
73772               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
73773             </parameter>
73774           </parameters>
73775         </callback>
73776       </field>
73777       <field name="window_state_event">
73778         <callback name="window_state_event">
73779           <return-value transfer-ownership="none">
73780             <type name="gboolean" c:type="gboolean"/>
73781           </return-value>
73782           <parameters>
73783             <parameter name="widget" transfer-ownership="none">
73784               <type name="Widget" c:type="GtkWidget*"/>
73785             </parameter>
73786             <parameter name="event" transfer-ownership="none">
73787               <type name="Gdk.EventWindowState" c:type="GdkEventWindowState*"/>
73788             </parameter>
73789           </parameters>
73790         </callback>
73791       </field>
73792       <field name="selection_get">
73793         <callback name="selection_get">
73794           <return-value transfer-ownership="none">
73795             <type name="none" c:type="void"/>
73796           </return-value>
73797           <parameters>
73798             <parameter name="widget" transfer-ownership="none">
73799               <type name="Widget" c:type="GtkWidget*"/>
73800             </parameter>
73801             <parameter name="selection_data" transfer-ownership="none">
73802               <type name="SelectionData" c:type="GtkSelectionData*"/>
73803             </parameter>
73804             <parameter name="info" transfer-ownership="none">
73805               <type name="guint" c:type="guint"/>
73806             </parameter>
73807             <parameter name="time_" transfer-ownership="none">
73808               <type name="guint" c:type="guint"/>
73809             </parameter>
73810           </parameters>
73811         </callback>
73812       </field>
73813       <field name="selection_received">
73814         <callback name="selection_received">
73815           <return-value transfer-ownership="none">
73816             <type name="none" c:type="void"/>
73817           </return-value>
73818           <parameters>
73819             <parameter name="widget" transfer-ownership="none">
73820               <type name="Widget" c:type="GtkWidget*"/>
73821             </parameter>
73822             <parameter name="selection_data" transfer-ownership="none">
73823               <type name="SelectionData" c:type="GtkSelectionData*"/>
73824             </parameter>
73825             <parameter name="time_" transfer-ownership="none">
73826               <type name="guint" c:type="guint"/>
73827             </parameter>
73828           </parameters>
73829         </callback>
73830       </field>
73831       <field name="drag_begin">
73832         <callback name="drag_begin">
73833           <return-value transfer-ownership="none">
73834             <type name="none" c:type="void"/>
73835           </return-value>
73836           <parameters>
73837             <parameter name="widget" transfer-ownership="none">
73838               <type name="Widget" c:type="GtkWidget*"/>
73839             </parameter>
73840             <parameter name="context" transfer-ownership="none">
73841               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73842             </parameter>
73843           </parameters>
73844         </callback>
73845       </field>
73846       <field name="drag_end">
73847         <callback name="drag_end">
73848           <return-value transfer-ownership="none">
73849             <type name="none" c:type="void"/>
73850           </return-value>
73851           <parameters>
73852             <parameter name="widget" transfer-ownership="none">
73853               <type name="Widget" c:type="GtkWidget*"/>
73854             </parameter>
73855             <parameter name="context" transfer-ownership="none">
73856               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73857             </parameter>
73858           </parameters>
73859         </callback>
73860       </field>
73861       <field name="drag_data_get">
73862         <callback name="drag_data_get">
73863           <return-value transfer-ownership="none">
73864             <type name="none" c:type="void"/>
73865           </return-value>
73866           <parameters>
73867             <parameter name="widget" transfer-ownership="none">
73868               <type name="Widget" c:type="GtkWidget*"/>
73869             </parameter>
73870             <parameter name="context" transfer-ownership="none">
73871               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73872             </parameter>
73873             <parameter name="selection_data" transfer-ownership="none">
73874               <type name="SelectionData" c:type="GtkSelectionData*"/>
73875             </parameter>
73876             <parameter name="info" transfer-ownership="none">
73877               <type name="guint" c:type="guint"/>
73878             </parameter>
73879             <parameter name="time_" transfer-ownership="none">
73880               <type name="guint" c:type="guint"/>
73881             </parameter>
73882           </parameters>
73883         </callback>
73884       </field>
73885       <field name="drag_data_delete">
73886         <callback name="drag_data_delete">
73887           <return-value transfer-ownership="none">
73888             <type name="none" c:type="void"/>
73889           </return-value>
73890           <parameters>
73891             <parameter name="widget" transfer-ownership="none">
73892               <type name="Widget" c:type="GtkWidget*"/>
73893             </parameter>
73894             <parameter name="context" transfer-ownership="none">
73895               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73896             </parameter>
73897           </parameters>
73898         </callback>
73899       </field>
73900       <field name="drag_leave">
73901         <callback name="drag_leave">
73902           <return-value transfer-ownership="none">
73903             <type name="none" c:type="void"/>
73904           </return-value>
73905           <parameters>
73906             <parameter name="widget" transfer-ownership="none">
73907               <type name="Widget" c:type="GtkWidget*"/>
73908             </parameter>
73909             <parameter name="context" transfer-ownership="none">
73910               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73911             </parameter>
73912             <parameter name="time_" transfer-ownership="none">
73913               <type name="guint" c:type="guint"/>
73914             </parameter>
73915           </parameters>
73916         </callback>
73917       </field>
73918       <field name="drag_motion">
73919         <callback name="drag_motion">
73920           <return-value transfer-ownership="none">
73921             <type name="gboolean" c:type="gboolean"/>
73922           </return-value>
73923           <parameters>
73924             <parameter name="widget" transfer-ownership="none">
73925               <type name="Widget" c:type="GtkWidget*"/>
73926             </parameter>
73927             <parameter name="context" transfer-ownership="none">
73928               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73929             </parameter>
73930             <parameter name="x" transfer-ownership="none">
73931               <type name="gint" c:type="gint"/>
73932             </parameter>
73933             <parameter name="y" transfer-ownership="none">
73934               <type name="gint" c:type="gint"/>
73935             </parameter>
73936             <parameter name="time_" transfer-ownership="none">
73937               <type name="guint" c:type="guint"/>
73938             </parameter>
73939           </parameters>
73940         </callback>
73941       </field>
73942       <field name="drag_drop">
73943         <callback name="drag_drop">
73944           <return-value transfer-ownership="none">
73945             <type name="gboolean" c:type="gboolean"/>
73946           </return-value>
73947           <parameters>
73948             <parameter name="widget" transfer-ownership="none">
73949               <type name="Widget" c:type="GtkWidget*"/>
73950             </parameter>
73951             <parameter name="context" transfer-ownership="none">
73952               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73953             </parameter>
73954             <parameter name="x" transfer-ownership="none">
73955               <type name="gint" c:type="gint"/>
73956             </parameter>
73957             <parameter name="y" transfer-ownership="none">
73958               <type name="gint" c:type="gint"/>
73959             </parameter>
73960             <parameter name="time_" transfer-ownership="none">
73961               <type name="guint" c:type="guint"/>
73962             </parameter>
73963           </parameters>
73964         </callback>
73965       </field>
73966       <field name="drag_data_received">
73967         <callback name="drag_data_received">
73968           <return-value transfer-ownership="none">
73969             <type name="none" c:type="void"/>
73970           </return-value>
73971           <parameters>
73972             <parameter name="widget" transfer-ownership="none">
73973               <type name="Widget" c:type="GtkWidget*"/>
73974             </parameter>
73975             <parameter name="context" transfer-ownership="none">
73976               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
73977             </parameter>
73978             <parameter name="x" transfer-ownership="none">
73979               <type name="gint" c:type="gint"/>
73980             </parameter>
73981             <parameter name="y" transfer-ownership="none">
73982               <type name="gint" c:type="gint"/>
73983             </parameter>
73984             <parameter name="selection_data" transfer-ownership="none">
73985               <type name="SelectionData" c:type="GtkSelectionData*"/>
73986             </parameter>
73987             <parameter name="info" transfer-ownership="none">
73988               <type name="guint" c:type="guint"/>
73989             </parameter>
73990             <parameter name="time_" transfer-ownership="none">
73991               <type name="guint" c:type="guint"/>
73992             </parameter>
73993           </parameters>
73994         </callback>
73995       </field>
73996       <field name="popup_menu">
73997         <callback name="popup_menu">
73998           <return-value transfer-ownership="none">
73999             <type name="gboolean" c:type="gboolean"/>
74000           </return-value>
74001           <parameters>
74002             <parameter name="widget" transfer-ownership="none">
74003               <type name="Widget" c:type="GtkWidget*"/>
74004             </parameter>
74005           </parameters>
74006         </callback>
74007       </field>
74008       <field name="show_help">
74009         <callback name="show_help">
74010           <return-value transfer-ownership="none">
74011             <type name="gboolean" c:type="gboolean"/>
74012           </return-value>
74013           <parameters>
74014             <parameter name="widget" transfer-ownership="none">
74015               <type name="Widget" c:type="GtkWidget*"/>
74016             </parameter>
74017             <parameter name="help_type" transfer-ownership="none">
74018               <type name="WidgetHelpType" c:type="GtkWidgetHelpType"/>
74019             </parameter>
74020           </parameters>
74021         </callback>
74022       </field>
74023       <field name="get_accessible">
74024         <callback name="get_accessible">
74025           <return-value transfer-ownership="none">
74026             <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
74027             <type name="Atk.Object" c:type="AtkObject*"/>
74028           </return-value>
74029           <parameters>
74030             <parameter name="widget" transfer-ownership="none">
74031               <type name="Widget" c:type="GtkWidget*"/>
74032             </parameter>
74033           </parameters>
74034         </callback>
74035       </field>
74036       <field name="screen_changed">
74037         <callback name="screen_changed">
74038           <return-value transfer-ownership="none">
74039             <type name="none" c:type="void"/>
74040           </return-value>
74041           <parameters>
74042             <parameter name="widget" transfer-ownership="none">
74043               <type name="Widget" c:type="GtkWidget*"/>
74044             </parameter>
74045             <parameter name="previous_screen" transfer-ownership="none">
74046               <type name="Gdk.Screen" c:type="GdkScreen*"/>
74047             </parameter>
74048           </parameters>
74049         </callback>
74050       </field>
74051       <field name="can_activate_accel">
74052         <callback name="can_activate_accel">
74053           <return-value transfer-ownership="none">
74054             <type name="gboolean" c:type="gboolean"/>
74055           </return-value>
74056           <parameters>
74057             <parameter name="widget" transfer-ownership="none">
74058               <type name="Widget" c:type="GtkWidget*"/>
74059             </parameter>
74060             <parameter name="signal_id" transfer-ownership="none">
74061               <type name="guint" c:type="guint"/>
74062             </parameter>
74063           </parameters>
74064         </callback>
74065       </field>
74066       <field name="grab_broken_event">
74067         <callback name="grab_broken_event">
74068           <return-value transfer-ownership="none">
74069             <type name="gboolean" c:type="gboolean"/>
74070           </return-value>
74071           <parameters>
74072             <parameter name="widget" transfer-ownership="none">
74073               <type name="Widget" c:type="GtkWidget*"/>
74074             </parameter>
74075             <parameter name="event" transfer-ownership="none">
74076               <type name="Gdk.EventGrabBroken" c:type="GdkEventGrabBroken*"/>
74077             </parameter>
74078           </parameters>
74079         </callback>
74080       </field>
74081       <field name="composited_changed">
74082         <callback name="composited_changed">
74083           <return-value transfer-ownership="none">
74084             <type name="none" c:type="void"/>
74085           </return-value>
74086           <parameters>
74087             <parameter name="widget" transfer-ownership="none">
74088               <type name="Widget" c:type="GtkWidget*"/>
74089             </parameter>
74090           </parameters>
74091         </callback>
74092       </field>
74093       <field name="query_tooltip">
74094         <callback name="query_tooltip">
74095           <return-value transfer-ownership="none">
74096             <type name="gboolean" c:type="gboolean"/>
74097           </return-value>
74098           <parameters>
74099             <parameter name="widget" transfer-ownership="none">
74100               <type name="Widget" c:type="GtkWidget*"/>
74101             </parameter>
74102             <parameter name="x" transfer-ownership="none">
74103               <type name="gint" c:type="gint"/>
74104             </parameter>
74105             <parameter name="y" transfer-ownership="none">
74106               <type name="gint" c:type="gint"/>
74107             </parameter>
74108             <parameter name="keyboard_tooltip" transfer-ownership="none">
74109               <type name="gboolean" c:type="gboolean"/>
74110             </parameter>
74111             <parameter name="tooltip" transfer-ownership="none">
74112               <type name="Tooltip" c:type="GtkTooltip*"/>
74113             </parameter>
74114           </parameters>
74115         </callback>
74116       </field>
74117       <field name="adjust_size_request">
74118         <callback name="adjust_size_request">
74119           <return-value transfer-ownership="none">
74120             <type name="none" c:type="void"/>
74121           </return-value>
74122           <parameters>
74123             <parameter name="widget" transfer-ownership="none">
74124               <type name="Widget" c:type="GtkWidget*"/>
74125             </parameter>
74126             <parameter name="orientation" transfer-ownership="none">
74127               <type name="Orientation" c:type="GtkOrientation"/>
74128             </parameter>
74129             <parameter name="for_size" transfer-ownership="none">
74130               <type name="gint" c:type="gint"/>
74131             </parameter>
74132             <parameter name="minimum_size" transfer-ownership="none">
74133               <type name="gint" c:type="gint*"/>
74134             </parameter>
74135             <parameter name="natural_size" transfer-ownership="none">
74136               <type name="gint" c:type="gint*"/>
74137             </parameter>
74138           </parameters>
74139         </callback>
74140       </field>
74141       <field name="adjust_size_allocation">
74142         <callback name="adjust_size_allocation">
74143           <return-value transfer-ownership="none">
74144             <type name="none" c:type="void"/>
74145           </return-value>
74146           <parameters>
74147             <parameter name="widget" transfer-ownership="none">
74148               <type name="Widget" c:type="GtkWidget*"/>
74149             </parameter>
74150             <parameter name="allocation" transfer-ownership="none">
74151               <type name="Allocation" c:type="GtkAllocation*"/>
74152             </parameter>
74153           </parameters>
74154         </callback>
74155       </field>
74156       <field name="_gtk_reserved1" introspectable="0">
74157         <callback name="_gtk_reserved1">
74158           <return-value transfer-ownership="none">
74159             <type name="none" c:type="void"/>
74160           </return-value>
74161         </callback>
74162       </field>
74163       <field name="_gtk_reserved2" introspectable="0">
74164         <callback name="_gtk_reserved2">
74165           <return-value transfer-ownership="none">
74166             <type name="none" c:type="void"/>
74167           </return-value>
74168         </callback>
74169       </field>
74170       <field name="_gtk_reserved3" introspectable="0">
74171         <callback name="_gtk_reserved3">
74172           <return-value transfer-ownership="none">
74173             <type name="none" c:type="void"/>
74174           </return-value>
74175         </callback>
74176       </field>
74177       <field name="_gtk_reserved4" introspectable="0">
74178         <callback name="_gtk_reserved4">
74179           <return-value transfer-ownership="none">
74180             <type name="none" c:type="void"/>
74181           </return-value>
74182         </callback>
74183       </field>
74184       <field name="_gtk_reserved5" introspectable="0">
74185         <callback name="_gtk_reserved5">
74186           <return-value transfer-ownership="none">
74187             <type name="none" c:type="void"/>
74188           </return-value>
74189         </callback>
74190       </field>
74191       <field name="_gtk_reserved6" introspectable="0">
74192         <callback name="_gtk_reserved6">
74193           <return-value transfer-ownership="none">
74194             <type name="none" c:type="void"/>
74195           </return-value>
74196         </callback>
74197       </field>
74198       <field name="_gtk_reserved7" introspectable="0">
74199         <callback name="_gtk_reserved7">
74200           <return-value transfer-ownership="none">
74201             <type name="none" c:type="void"/>
74202           </return-value>
74203         </callback>
74204       </field>
74205       <field name="_gtk_reserved8" introspectable="0">
74206         <callback name="_gtk_reserved8">
74207           <return-value transfer-ownership="none">
74208             <type name="none" c:type="void"/>
74209           </return-value>
74210         </callback>
74211       </field>
74212       <method name="find_style_property"
74213               c:identifier="gtk_widget_class_find_style_property"
74214               version="2.2"
74215               introspectable="0">
74216         <doc xml:whitespace="preserve">Finds a style property of a widget class by name.</doc>
74217         <return-value>
74218           <doc xml:whitespace="preserve">the #GParamSpec of the style property or %NULL if @class has no style property with that name.</doc>
74219           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
74220         </return-value>
74221         <parameters>
74222           <parameter name="property_name" transfer-ownership="none">
74223             <doc xml:whitespace="preserve">the name of the style property to find</doc>
74224             <type name="utf8" c:type="gchar*"/>
74225           </parameter>
74226         </parameters>
74227       </method>
74228       <method name="install_style_property"
74229               c:identifier="gtk_widget_class_install_style_property">
74230         <doc xml:whitespace="preserve">Installs a style property on a widget class. The parser for the
74231 style property is determined by the value type of @pspec.</doc>
74232         <return-value transfer-ownership="none">
74233           <type name="none" c:type="void"/>
74234         </return-value>
74235         <parameters>
74236           <parameter name="pspec" transfer-ownership="none">
74237             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
74238             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
74239           </parameter>
74240         </parameters>
74241       </method>
74242       <method name="install_style_property_parser"
74243               c:identifier="gtk_widget_class_install_style_property_parser"
74244               introspectable="0">
74245         <doc xml:whitespace="preserve">Installs a style property on a widget class.</doc>
74246         <return-value transfer-ownership="none">
74247           <type name="none" c:type="void"/>
74248         </return-value>
74249         <parameters>
74250           <parameter name="pspec" transfer-ownership="none">
74251             <doc xml:whitespace="preserve">the #GParamSpec for the style property</doc>
74252             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
74253           </parameter>
74254           <parameter name="parser" transfer-ownership="none">
74255             <doc xml:whitespace="preserve">the parser for the style property</doc>
74256             <type name="RcPropertyParser" c:type="GtkRcPropertyParser"/>
74257           </parameter>
74258         </parameters>
74259       </method>
74260       <method name="list_style_properties"
74261               c:identifier="gtk_widget_class_list_style_properties"
74262               version="2.2"
74263               introspectable="0">
74264         <doc xml:whitespace="preserve">Returns all style properties of a widget class.</doc>
74265         <return-value>
74266           <doc xml:whitespace="preserve">an newly allocated array of #GParamSpec*. The array must be freed with g_free().</doc>
74267           <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
74268         </return-value>
74269         <parameters>
74270           <parameter name="n_properties" transfer-ownership="none">
74271             <doc xml:whitespace="preserve">location to return the number of style properties found</doc>
74272             <type name="guint" c:type="guint*"/>
74273           </parameter>
74274         </parameters>
74275       </method>
74276     </record>
74277     <bitfield name="WidgetFlags"
74278               glib:type-name="GtkWidgetFlags"
74279               glib:get-type="gtk_widget_flags_get_type"
74280               c:type="GtkWidgetFlags">
74281       <doc xml:whitespace="preserve">Tells about certain properties of the widget.</doc>
74282       <member name="toplevel"
74283               value="16"
74284               c:identifier="GTK_TOPLEVEL"
74285               glib:nick="toplevel"/>
74286       <member name="no_window"
74287               value="32"
74288               c:identifier="GTK_NO_WINDOW"
74289               glib:nick="no-window"/>
74290       <member name="realized"
74291               value="64"
74292               c:identifier="GTK_REALIZED"
74293               glib:nick="realized"/>
74294       <member name="mapped"
74295               value="128"
74296               c:identifier="GTK_MAPPED"
74297               glib:nick="mapped"/>
74298       <member name="visible"
74299               value="256"
74300               c:identifier="GTK_VISIBLE"
74301               glib:nick="visible"/>
74302       <member name="sensitive"
74303               value="512"
74304               c:identifier="GTK_SENSITIVE"
74305               glib:nick="sensitive"/>
74306       <member name="parent_sensitive"
74307               value="1024"
74308               c:identifier="GTK_PARENT_SENSITIVE"
74309               glib:nick="parent-sensitive"/>
74310       <member name="can_focus"
74311               value="2048"
74312               c:identifier="GTK_CAN_FOCUS"
74313               glib:nick="can-focus"/>
74314       <member name="has_focus"
74315               value="4096"
74316               c:identifier="GTK_HAS_FOCUS"
74317               glib:nick="has-focus"/>
74318       <member name="can_default"
74319               value="8192"
74320               c:identifier="GTK_CAN_DEFAULT"
74321               glib:nick="can-default"/>
74322       <member name="has_default"
74323               value="16384"
74324               c:identifier="GTK_HAS_DEFAULT"
74325               glib:nick="has-default"/>
74326       <member name="has_grab"
74327               value="32768"
74328               c:identifier="GTK_HAS_GRAB"
74329               glib:nick="has-grab"/>
74330       <member name="rc_style"
74331               value="65536"
74332               c:identifier="GTK_RC_STYLE"
74333               glib:nick="rc-style"/>
74334       <member name="composite_child"
74335               value="131072"
74336               c:identifier="GTK_COMPOSITE_CHILD"
74337               glib:nick="composite-child"/>
74338       <member name="app_paintable"
74339               value="262144"
74340               c:identifier="GTK_APP_PAINTABLE"
74341               glib:nick="app-paintable"/>
74342       <member name="receives_default"
74343               value="524288"
74344               c:identifier="GTK_RECEIVES_DEFAULT"
74345               glib:nick="receives-default"/>
74346       <member name="double_buffered"
74347               value="1048576"
74348               c:identifier="GTK_DOUBLE_BUFFERED"
74349               glib:nick="double-buffered"/>
74350       <member name="no_show_all"
74351               value="2097152"
74352               c:identifier="GTK_NO_SHOW_ALL"
74353               glib:nick="no-show-all"/>
74354       <member name="multidevice"
74355               value="4194304"
74356               c:identifier="GTK_MULTIDEVICE"
74357               glib:nick="multidevice"/>
74358     </bitfield>
74359     <enumeration name="WidgetHelpType"
74360                  glib:type-name="GtkWidgetHelpType"
74361                  glib:get-type="gtk_widget_help_type_get_type"
74362                  c:type="GtkWidgetHelpType">
74363       <member name="tooltip"
74364               value="0"
74365               c:identifier="GTK_WIDGET_HELP_TOOLTIP"
74366               glib:nick="tooltip"/>
74367       <member name="whats_this"
74368               value="1"
74369               c:identifier="GTK_WIDGET_HELP_WHATS_THIS"
74370               glib:nick="whats-this"/>
74371     </enumeration>
74372     <record name="WidgetPrivate" c:type="GtkWidgetPrivate" disguised="1">
74373     </record>
74374     <record name="WidgetShapeInfo" c:type="GtkWidgetShapeInfo">
74375       <field name="offset_x" writable="1">
74376         <type name="gint16" c:type="gint16"/>
74377       </field>
74378       <field name="offset_y" writable="1">
74379         <type name="gint16" c:type="gint16"/>
74380       </field>
74381       <field name="shape_mask" writable="1">
74382         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
74383       </field>
74384     </record>
74385     <class name="Window"
74386            c:symbol-prefix="window"
74387            c:type="GtkWindow"
74388            parent="Bin"
74389            glib:type-name="GtkWindow"
74390            glib:get-type="gtk_window_get_type"
74391            glib:type-struct="WindowClass">
74392       <implements name="Atk.ImplementorIface"/>
74393       <implements name="Buildable"/>
74394       <implements name="SizeRequest"/>
74395       <constructor name="new" c:identifier="gtk_window_new">
74396         <doc xml:whitespace="preserve">Creates a new #GtkWindow, which is a toplevel window that can
74397 contain other widgets. Nearly always, the type of the window should
74398 be #GTK_WINDOW_TOPLEVEL. If you're implementing something like a
74399 popup menu from scratch (which is a bad idea, just use #GtkMenu),
74400 you might use #GTK_WINDOW_POPUP. #GTK_WINDOW_POPUP is not for
74401 dialogs, though in some other toolkits dialogs are called "popups".
74402 In GTK+, #GTK_WINDOW_POPUP means a pop-up menu or pop-up tooltip.
74403 On X11, popup windows are not controlled by the &lt;link
74404 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;.
74405 If you simply want an undecorated window (no window borders), use
74406 gtk_window_set_decorated(), don't use #GTK_WINDOW_POPUP.</doc>
74407         <return-value transfer-ownership="none">
74408           <doc xml:whitespace="preserve">a new #GtkWindow.</doc>
74409           <type name="Widget" c:type="GtkWidget*"/>
74410         </return-value>
74411         <parameters>
74412           <parameter name="type" transfer-ownership="none">
74413             <doc xml:whitespace="preserve">type of window</doc>
74414             <type name="WindowType" c:type="GtkWindowType"/>
74415           </parameter>
74416         </parameters>
74417       </constructor>
74418       <function name="get_default_icon_list"
74419                 c:identifier="gtk_window_get_default_icon_list">
74420         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_default_icon_list().
74421 The list is a copy and should be freed with g_list_free(),
74422 but the pixbufs in the list have not had their reference count
74423 incremented.</doc>
74424         <return-value transfer-ownership="container">
74425           <doc xml:whitespace="preserve">copy of default icon list</doc>
74426           <type name="GLib.List" c:type="GList*">
74427             <type name="GdkPixbuf.Pixbuf"/>
74428           </type>
74429         </return-value>
74430       </function>
74431       <function name="get_default_icon_name"
74432                 c:identifier="gtk_window_get_default_icon_name"
74433                 version="2.16">
74434         <doc xml:whitespace="preserve">Returns the fallback icon name for windows that has been set
74435 with gtk_window_set_default_icon_name(). The returned
74436 string is owned by GTK+ and should not be modified. It
74437 is only valid until the next call to
74438 gtk_window_set_default_icon_name().</doc>
74439         <return-value transfer-ownership="none">
74440           <doc xml:whitespace="preserve">the fallback icon name for windows</doc>
74441           <type name="utf8" c:type="gchar*"/>
74442         </return-value>
74443       </function>
74444       <function name="list_toplevels" c:identifier="gtk_window_list_toplevels">
74445         <doc xml:whitespace="preserve">Returns a list of all existing toplevel windows. The widgets
74446 in the list are not individually referenced. If you want
74447 to iterate through the list and perform actions involving
74448 callbacks that might destroy the widgets, you &lt;emphasis&gt;must&lt;/emphasis&gt; call
74449 &lt;literal&gt;g_list_foreach (result, (GFunc)g_object_ref, NULL)&lt;/literal&gt; first, and
74450 then unref all the widgets afterwards.</doc>
74451         <return-value transfer-ownership="container">
74452           <doc xml:whitespace="preserve">list of toplevel widgets</doc>
74453           <type name="GLib.List" c:type="GList*">
74454             <type name="Widget"/>
74455           </type>
74456         </return-value>
74457       </function>
74458       <function name="set_auto_startup_notification"
74459                 c:identifier="gtk_window_set_auto_startup_notification"
74460                 version="2.2">
74461         <doc xml:whitespace="preserve">By default, after showing the first #GtkWindow, GTK+ calls 
74462 gdk_notify_startup_complete().  Call this function to disable 
74463 the automatic startup notification. You might do this if your 
74464 first window is a splash screen, and you want to delay notification 
74465 until after your real main window has been shown, for example.
74466 In that example, you would disable startup notification
74467 temporarily, show your splash screen, then re-enable it so that
74468 showing the main window would automatically result in notification.</doc>
74469         <return-value transfer-ownership="none">
74470           <type name="none" c:type="void"/>
74471         </return-value>
74472         <parameters>
74473           <parameter name="setting" transfer-ownership="none">
74474             <doc xml:whitespace="preserve">%TRUE to automatically do startup notification</doc>
74475             <type name="gboolean" c:type="gboolean"/>
74476           </parameter>
74477         </parameters>
74478       </function>
74479       <function name="set_default_icon"
74480                 c:identifier="gtk_window_set_default_icon"
74481                 version="2.4">
74482         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
74483 had gtk_window_set_icon() called on them from a pixbuf.</doc>
74484         <return-value transfer-ownership="none">
74485           <type name="none" c:type="void"/>
74486         </return-value>
74487         <parameters>
74488           <parameter name="icon" transfer-ownership="none">
74489             <doc xml:whitespace="preserve">the icon</doc>
74490             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
74491           </parameter>
74492         </parameters>
74493       </function>
74494       <function name="set_default_icon_from_file"
74495                 c:identifier="gtk_window_set_default_icon_from_file"
74496                 version="2.2"
74497                 throws="1">
74498         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
74499 had gtk_window_set_icon_list() called on them from a file
74500 on disk. Warns on failure if @err is %NULL.</doc>
74501         <return-value transfer-ownership="none">
74502           <doc xml:whitespace="preserve">%TRUE if setting the icon succeeded.</doc>
74503           <type name="gboolean" c:type="gboolean"/>
74504         </return-value>
74505         <parameters>
74506           <parameter name="filename" transfer-ownership="none">
74507             <doc xml:whitespace="preserve">location of icon file</doc>
74508             <type name="utf8" c:type="gchar*"/>
74509           </parameter>
74510         </parameters>
74511       </function>
74512       <function name="set_default_icon_list"
74513                 c:identifier="gtk_window_set_default_icon_list">
74514         <doc xml:whitespace="preserve">Sets an icon list to be used as fallback for windows that haven't
74515 had gtk_window_set_icon_list() called on them to set up a
74516 window-specific icon list. This function allows you to set up the
74517 icon for all windows in your app at once.
74518 See gtk_window_set_icon_list() for more details.</doc>
74519         <return-value transfer-ownership="none">
74520           <type name="none" c:type="void"/>
74521         </return-value>
74522         <parameters>
74523           <parameter name="list" transfer-ownership="container">
74524             <doc xml:whitespace="preserve">a list of #GdkPixbuf</doc>
74525             <type name="GLib.List" c:type="GList*">
74526               <type name="GdkPixbuf.Pixbuf"/>
74527             </type>
74528           </parameter>
74529         </parameters>
74530       </function>
74531       <function name="set_default_icon_name"
74532                 c:identifier="gtk_window_set_default_icon_name"
74533                 version="2.6">
74534         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
74535 had gtk_window_set_icon_list() called on them from a named
74536 themed icon, see gtk_window_set_icon_name().</doc>
74537         <return-value transfer-ownership="none">
74538           <type name="none" c:type="void"/>
74539         </return-value>
74540         <parameters>
74541           <parameter name="name" transfer-ownership="none">
74542             <doc xml:whitespace="preserve">the name of the themed icon</doc>
74543             <type name="utf8" c:type="gchar*"/>
74544           </parameter>
74545         </parameters>
74546       </function>
74547       <virtual-method name="move_focus">
74548         <return-value transfer-ownership="none">
74549           <type name="none" c:type="void"/>
74550         </return-value>
74551         <parameters>
74552           <parameter name="direction" transfer-ownership="none">
74553             <type name="DirectionType" c:type="GtkDirectionType"/>
74554           </parameter>
74555         </parameters>
74556       </virtual-method>
74557       <method name="activate_default"
74558               c:identifier="gtk_window_activate_default">
74559         <doc xml:whitespace="preserve">Activates the default widget for the window, unless the current 
74560 focused widget has been configured to receive the default action 
74561 (see gtk_widget_set_receives_default()), in which case the
74562 focused widget is activated.</doc>
74563         <return-value transfer-ownership="none">
74564           <doc xml:whitespace="preserve">%TRUE if a widget got activated.</doc>
74565           <type name="gboolean" c:type="gboolean"/>
74566         </return-value>
74567       </method>
74568       <method name="activate_focus" c:identifier="gtk_window_activate_focus">
74569         <doc xml:whitespace="preserve">Activates the current focused widget within the window.</doc>
74570         <return-value transfer-ownership="none">
74571           <doc xml:whitespace="preserve">%TRUE if a widget got activated.</doc>
74572           <type name="gboolean" c:type="gboolean"/>
74573         </return-value>
74574       </method>
74575       <method name="activate_key"
74576               c:identifier="gtk_window_activate_key"
74577               version="2.4">
74578         <doc xml:whitespace="preserve">Activates mnemonics and accelerators for this #GtkWindow. This is normally
74579 called by the default ::key_press_event handler for toplevel windows,
74580 however in some cases it may be useful to call this directly when
74581 overriding the standard key handling for a toplevel window.</doc>
74582         <return-value transfer-ownership="none">
74583           <doc xml:whitespace="preserve">%TRUE if a mnemonic or accelerator was found and activated.</doc>
74584           <type name="gboolean" c:type="gboolean"/>
74585         </return-value>
74586         <parameters>
74587           <parameter name="event" transfer-ownership="none">
74588             <doc xml:whitespace="preserve">a #GdkEventKey</doc>
74589             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
74590           </parameter>
74591         </parameters>
74592       </method>
74593       <method name="add_accel_group" c:identifier="gtk_window_add_accel_group">
74594         <doc xml:whitespace="preserve">Associate @accel_group with @window, such that calling
74595 gtk_accel_groups_activate() on @window will activate accelerators
74596 in @accel_group.</doc>
74597         <return-value transfer-ownership="none">
74598           <type name="none" c:type="void"/>
74599         </return-value>
74600         <parameters>
74601           <parameter name="accel_group" transfer-ownership="none">
74602             <doc xml:whitespace="preserve">a #GtkAccelGroup</doc>
74603             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
74604           </parameter>
74605         </parameters>
74606       </method>
74607       <method name="add_embedded_xid"
74608               c:identifier="gtk_window_add_embedded_xid">
74609         <return-value transfer-ownership="none">
74610           <type name="none" c:type="void"/>
74611         </return-value>
74612         <parameters>
74613           <parameter name="xid" transfer-ownership="none">
74614             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
74615           </parameter>
74616         </parameters>
74617       </method>
74618       <method name="add_mnemonic" c:identifier="gtk_window_add_mnemonic">
74619         <doc xml:whitespace="preserve">Adds a mnemonic to this window.</doc>
74620         <return-value transfer-ownership="none">
74621           <type name="none" c:type="void"/>
74622         </return-value>
74623         <parameters>
74624           <parameter name="keyval" transfer-ownership="none">
74625             <doc xml:whitespace="preserve">the mnemonic</doc>
74626             <type name="guint" c:type="guint"/>
74627           </parameter>
74628           <parameter name="target" transfer-ownership="none">
74629             <doc xml:whitespace="preserve">the widget that gets activated by the mnemonic</doc>
74630             <type name="Widget" c:type="GtkWidget*"/>
74631           </parameter>
74632         </parameters>
74633       </method>
74634       <method name="begin_move_drag" c:identifier="gtk_window_begin_move_drag">
74635         <doc xml:whitespace="preserve">Starts moving a window. This function is used if an application has
74636 window movement grips. When GDK can support it, the window movement
74637 will be done using the standard mechanism for the &lt;link
74638 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; or windowing
74639 system. Otherwise, GDK will try to emulate window movement,
74640 potentially not all that well, depending on the windowing system.</doc>
74641         <return-value transfer-ownership="none">
74642           <type name="none" c:type="void"/>
74643         </return-value>
74644         <parameters>
74645           <parameter name="button" transfer-ownership="none">
74646             <doc xml:whitespace="preserve">mouse button that initiated the drag</doc>
74647             <type name="gint" c:type="gint"/>
74648           </parameter>
74649           <parameter name="root_x" transfer-ownership="none">
74650             <doc xml:whitespace="preserve">X position where the user clicked to initiate the drag, in root window coordinates</doc>
74651             <type name="gint" c:type="gint"/>
74652           </parameter>
74653           <parameter name="root_y" transfer-ownership="none">
74654             <doc xml:whitespace="preserve">Y position where the user clicked to initiate the drag</doc>
74655             <type name="gint" c:type="gint"/>
74656           </parameter>
74657           <parameter name="timestamp" transfer-ownership="none">
74658             <doc xml:whitespace="preserve">timestamp from the click event that initiated the drag</doc>
74659             <type name="guint32" c:type="guint32"/>
74660           </parameter>
74661         </parameters>
74662       </method>
74663       <method name="begin_resize_drag"
74664               c:identifier="gtk_window_begin_resize_drag">
74665         <doc xml:whitespace="preserve">Starts resizing a window. This function is used if an application
74666 has window resizing controls. When GDK can support it, the resize
74667 will be done using the standard mechanism for the &lt;link
74668 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; or windowing
74669 system. Otherwise, GDK will try to emulate window resizing,
74670 potentially not all that well, depending on the windowing system.</doc>
74671         <return-value transfer-ownership="none">
74672           <type name="none" c:type="void"/>
74673         </return-value>
74674         <parameters>
74675           <parameter name="edge" transfer-ownership="none">
74676             <doc xml:whitespace="preserve">position of the resize control</doc>
74677             <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
74678           </parameter>
74679           <parameter name="button" transfer-ownership="none">
74680             <doc xml:whitespace="preserve">mouse button that initiated the drag</doc>
74681             <type name="gint" c:type="gint"/>
74682           </parameter>
74683           <parameter name="root_x" transfer-ownership="none">
74684             <doc xml:whitespace="preserve">X position where the user clicked to initiate the drag, in root window coordinates</doc>
74685             <type name="gint" c:type="gint"/>
74686           </parameter>
74687           <parameter name="root_y" transfer-ownership="none">
74688             <doc xml:whitespace="preserve">Y position where the user clicked to initiate the drag</doc>
74689             <type name="gint" c:type="gint"/>
74690           </parameter>
74691           <parameter name="timestamp" transfer-ownership="none">
74692             <doc xml:whitespace="preserve">timestamp from the click event that initiated the drag</doc>
74693             <type name="guint32" c:type="guint32"/>
74694           </parameter>
74695         </parameters>
74696       </method>
74697       <method name="deiconify" c:identifier="gtk_window_deiconify">
74698         <doc xml:whitespace="preserve">Asks to deiconify (i.e. unminimize) the specified @window. Note
74699 that you shouldn't assume the window is definitely deiconified
74700 afterward, because other entities (e.g. the user or &lt;link
74701 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could iconify it
74702 again before your code which assumes deiconification gets to run.
74703 You can track iconification via the "window-state-event" signal
74704 on #GtkWidget.</doc>
74705         <return-value transfer-ownership="none">
74706           <type name="none" c:type="void"/>
74707         </return-value>
74708       </method>
74709       <method name="fullscreen"
74710               c:identifier="gtk_window_fullscreen"
74711               version="2.2">
74712         <doc xml:whitespace="preserve">Asks to place @window in the fullscreen state. Note that you
74713 shouldn't assume the window is definitely full screen afterward,
74714 because other entities (e.g. the user or &lt;link
74715 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unfullscreen it
74716 again, and not all window managers honor requests to fullscreen
74717 windows. But normally the window will end up fullscreen. Just
74718 don't write code that crashes if not.
74719 You can track the fullscreen state via the "window-state-event" signal
74720 on #GtkWidget.</doc>
74721         <return-value transfer-ownership="none">
74722           <type name="none" c:type="void"/>
74723         </return-value>
74724       </method>
74725       <method name="get_accept_focus"
74726               c:identifier="gtk_window_get_accept_focus"
74727               version="2.4">
74728         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_accept_focus().</doc>
74729         <return-value transfer-ownership="none">
74730           <doc xml:whitespace="preserve">%TRUE if window should receive the input focus</doc>
74731           <type name="gboolean" c:type="gboolean"/>
74732         </return-value>
74733       </method>
74734       <method name="get_decorated" c:identifier="gtk_window_get_decorated">
74735         <doc xml:whitespace="preserve">Returns whether the window has been set to have decorations
74736 such as a title bar via gtk_window_set_decorated().</doc>
74737         <return-value transfer-ownership="none">
74738           <doc xml:whitespace="preserve">%TRUE if the window has been set to have decorations</doc>
74739           <type name="gboolean" c:type="gboolean"/>
74740         </return-value>
74741       </method>
74742       <method name="get_default_size"
74743               c:identifier="gtk_window_get_default_size">
74744         <doc xml:whitespace="preserve">Gets the default size of the window. A value of -1 for the width or
74745 height indicates that a default size has not been explicitly set
74746 for that dimension, so the "natural" size of the window will be
74747 used.</doc>
74748         <return-value transfer-ownership="none">
74749           <type name="none" c:type="void"/>
74750         </return-value>
74751         <parameters>
74752           <parameter name="width"
74753                      direction="out"
74754                      caller-allocates="0"
74755                      transfer-ownership="full"
74756                      allow-none="1">
74757             <doc xml:whitespace="preserve">location to store the default width, or %NULL</doc>
74758             <type name="gint" c:type="gint*"/>
74759           </parameter>
74760           <parameter name="height"
74761                      direction="out"
74762                      caller-allocates="0"
74763                      transfer-ownership="full"
74764                      allow-none="1">
74765             <doc xml:whitespace="preserve">location to store the default height, or %NULL</doc>
74766             <type name="gint" c:type="gint*"/>
74767           </parameter>
74768         </parameters>
74769       </method>
74770       <method name="get_default_widget"
74771               c:identifier="gtk_window_get_default_widget"
74772               version="2.14">
74773         <doc xml:whitespace="preserve">Returns the default widget for @window. See gtk_window_set_default()
74774 for more details.</doc>
74775         <return-value transfer-ownership="none">
74776           <doc xml:whitespace="preserve">the default widget, or %NULL if there is none.</doc>
74777           <type name="Widget" c:type="GtkWidget*"/>
74778         </return-value>
74779       </method>
74780       <method name="get_deletable"
74781               c:identifier="gtk_window_get_deletable"
74782               version="2.10">
74783         <doc xml:whitespace="preserve">Returns whether the window has been set to have a close button
74784 via gtk_window_set_deletable().</doc>
74785         <return-value transfer-ownership="none">
74786           <doc xml:whitespace="preserve">%TRUE if the window has been set to have a close button</doc>
74787           <type name="gboolean" c:type="gboolean"/>
74788         </return-value>
74789       </method>
74790       <method name="get_destroy_with_parent"
74791               c:identifier="gtk_window_get_destroy_with_parent">
74792         <doc xml:whitespace="preserve">Returns whether the window will be destroyed with its transient parent. See
74793 gtk_window_set_destroy_with_parent ().</doc>
74794         <return-value transfer-ownership="none">
74795           <doc xml:whitespace="preserve">%TRUE if the window will be destroyed with its transient parent.</doc>
74796           <type name="gboolean" c:type="gboolean"/>
74797         </return-value>
74798       </method>
74799       <method name="get_focus" c:identifier="gtk_window_get_focus">
74800         <doc xml:whitespace="preserve">Retrieves the current focused widget within the window.
74801 Note that this is the widget that would have the focus
74802 if the toplevel window focused; if the toplevel window
74803 is not focused then  &lt;literal&gt;gtk_widget_has_focus (widget)&lt;/literal&gt; will
74804 not be %TRUE for the widget.</doc>
74805         <return-value transfer-ownership="none">
74806           <doc xml:whitespace="preserve">the currently focused widget, or %NULL if there is none.</doc>
74807           <type name="Widget" c:type="GtkWidget*"/>
74808         </return-value>
74809       </method>
74810       <method name="get_focus_on_map"
74811               c:identifier="gtk_window_get_focus_on_map"
74812               version="2.6">
74813         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_focus_on_map().
74814 mapped.</doc>
74815         <return-value transfer-ownership="none">
74816           <doc xml:whitespace="preserve">%TRUE if window should receive the input focus when</doc>
74817           <type name="gboolean" c:type="gboolean"/>
74818         </return-value>
74819       </method>
74820       <method name="get_frame_dimensions"
74821               c:identifier="gtk_window_get_frame_dimensions">
74822         <doc xml:whitespace="preserve">(Note: this is a special-purpose function intended for the
74823 framebuffer port; see gtk_window_set_has_frame(). It will not
74824 return the size of the window border drawn by the &lt;link
74825 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;, which is the normal
74826 case when using a windowing system.  See
74827 gdk_window_get_frame_extents() to get the standard window border
74828 extents.)
74829 Retrieves the dimensions of the frame window for this toplevel.
74830 See gtk_window_set_has_frame(), gtk_window_set_frame_dimensions().</doc>
74831         <return-value transfer-ownership="none">
74832           <type name="none" c:type="void"/>
74833         </return-value>
74834         <parameters>
74835           <parameter name="left"
74836                      direction="out"
74837                      caller-allocates="0"
74838                      transfer-ownership="full"
74839                      allow-none="1">
74840             <doc xml:whitespace="preserve">location to store the width of the frame at the left, or %NULL</doc>
74841             <type name="gint" c:type="gint*"/>
74842           </parameter>
74843           <parameter name="top"
74844                      direction="out"
74845                      caller-allocates="0"
74846                      transfer-ownership="full"
74847                      allow-none="1">
74848             <doc xml:whitespace="preserve">location to store the height of the frame at the top, or %NULL</doc>
74849             <type name="gint" c:type="gint*"/>
74850           </parameter>
74851           <parameter name="right"
74852                      direction="out"
74853                      caller-allocates="0"
74854                      transfer-ownership="full"
74855                      allow-none="1">
74856             <doc xml:whitespace="preserve">location to store the width of the frame at the returns, or %NULL</doc>
74857             <type name="gint" c:type="gint*"/>
74858           </parameter>
74859           <parameter name="bottom"
74860                      direction="out"
74861                      caller-allocates="0"
74862                      transfer-ownership="full"
74863                      allow-none="1">
74864             <doc xml:whitespace="preserve">location to store the height of the frame at the bottom, or %NULL</doc>
74865             <type name="gint" c:type="gint*"/>
74866           </parameter>
74867         </parameters>
74868       </method>
74869       <method name="get_gravity" c:identifier="gtk_window_get_gravity">
74870         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_gravity().</doc>
74871         <return-value transfer-ownership="none">
74872           <doc xml:whitespace="preserve">window gravity</doc>
74873           <type name="Gdk.Gravity" c:type="GdkGravity"/>
74874         </return-value>
74875       </method>
74876       <method name="get_group"
74877               c:identifier="gtk_window_get_group"
74878               version="2.10">
74879         <doc xml:whitespace="preserve">Returns the group for @window or the default group, if
74880 window group.</doc>
74881         <return-value transfer-ownership="none">
74882           <doc xml:whitespace="preserve">the #GtkWindowGroup for a window or the default group</doc>
74883           <type name="WindowGroup" c:type="GtkWindowGroup*"/>
74884         </return-value>
74885       </method>
74886       <method name="get_has_frame" c:identifier="gtk_window_get_has_frame">
74887         <doc xml:whitespace="preserve">Accessor for whether the window has a frame window exterior to
74888 via gtk_window_set_has_frame().</doc>
74889         <return-value transfer-ownership="none">
74890           <doc xml:whitespace="preserve">%TRUE if a frame has been added to the window</doc>
74891           <type name="gboolean" c:type="gboolean"/>
74892         </return-value>
74893       </method>
74894       <method name="get_icon" c:identifier="gtk_window_get_icon">
74895         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_icon() (or if you've
74896 called gtk_window_set_icon_list(), gets the first icon in
74897 the icon list).</doc>
74898         <return-value transfer-ownership="none">
74899           <doc xml:whitespace="preserve">icon for window</doc>
74900           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
74901         </return-value>
74902       </method>
74903       <method name="get_icon_list" c:identifier="gtk_window_get_icon_list">
74904         <doc xml:whitespace="preserve">Retrieves the list of icons set by gtk_window_set_icon_list().
74905 The list is copied, but the reference count on each
74906 member won't be incremented.</doc>
74907         <return-value transfer-ownership="container">
74908           <doc xml:whitespace="preserve">copy of window's icon list</doc>
74909           <type name="GLib.List" c:type="GList*">
74910             <type name="GdkPixbuf.Pixbuf"/>
74911           </type>
74912         </return-value>
74913       </method>
74914       <method name="get_icon_name"
74915               c:identifier="gtk_window_get_icon_name"
74916               version="2.6">
74917         <doc xml:whitespace="preserve">Returns the name of the themed icon for the window,
74918 see gtk_window_set_icon_name().
74919 no themed icon</doc>
74920         <return-value transfer-ownership="none">
74921           <doc xml:whitespace="preserve">the icon name or %NULL if the window has</doc>
74922           <type name="utf8" c:type="gchar*"/>
74923         </return-value>
74924       </method>
74925       <method name="get_mnemonic_modifier"
74926               c:identifier="gtk_window_get_mnemonic_modifier">
74927         <doc xml:whitespace="preserve">Returns the mnemonic modifier for this window. See
74928 gtk_window_set_mnemonic_modifier().
74929 mnemonics on this window.</doc>
74930         <return-value transfer-ownership="none">
74931           <doc xml:whitespace="preserve">the modifier mask used to activate</doc>
74932           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
74933         </return-value>
74934       </method>
74935       <method name="get_mnemonics_visible"
74936               c:identifier="gtk_window_get_mnemonics_visible"
74937               version="2.20">
74938         <doc xml:whitespace="preserve">Gets the value of the #GtkWindow:mnemonics-visible property.
74939 in this window.</doc>
74940         <return-value transfer-ownership="none">
74941           <doc xml:whitespace="preserve">%TRUE if mnemonics are supposed to be visible</doc>
74942           <type name="gboolean" c:type="gboolean"/>
74943         </return-value>
74944       </method>
74945       <method name="get_modal" c:identifier="gtk_window_get_modal">
74946         <doc xml:whitespace="preserve">Returns whether the window is modal. See gtk_window_set_modal().
74947 establishes a grab when shown</doc>
74948         <return-value transfer-ownership="none">
74949           <doc xml:whitespace="preserve">%TRUE if the window is set to be modal and</doc>
74950           <type name="gboolean" c:type="gboolean"/>
74951         </return-value>
74952       </method>
74953       <method name="get_opacity"
74954               c:identifier="gtk_window_get_opacity"
74955               version="2.12">
74956         <doc xml:whitespace="preserve">Fetches the requested opacity for this window. See
74957 gtk_window_set_opacity().</doc>
74958         <return-value transfer-ownership="none">
74959           <doc xml:whitespace="preserve">the requested opacity for this window.</doc>
74960           <type name="gdouble" c:type="gdouble"/>
74961         </return-value>
74962       </method>
74963       <method name="get_position" c:identifier="gtk_window_get_position">
74964         <doc xml:whitespace="preserve">This function returns the position you need to pass to
74965 gtk_window_move() to keep @window in its current position.  This
74966 means that the meaning of the returned value varies with window
74967 gravity. See gtk_window_move() for more details.
74968 If you haven't changed the window gravity, its gravity will be
74969 #GDK_GRAVITY_NORTH_WEST. This means that gtk_window_get_position()
74970 gets the position of the top-left corner of the window manager
74971 frame for the window. gtk_window_move() sets the position of this
74972 same top-left corner.
74973 gtk_window_get_position() is not 100% reliable because the X Window System
74974 does not specify a way to obtain the geometry of the
74975 decorations placed on a window by the window manager.
74976 Thus GTK+ is using a "best guess" that works with most
74977 window managers.
74978 Moreover, nearly all window managers are historically broken with
74979 respect to their handling of window gravity. So moving a window to
74980 its current position as returned by gtk_window_get_position() tends
74981 to result in moving the window slightly. Window managers are
74982 slowly getting better over time.
74983 If a window has gravity #GDK_GRAVITY_STATIC the window manager
74984 frame is not relevant, and thus gtk_window_get_position() will
74985 always produce accurate results. However you can't use static
74986 gravity to do things like place a window in a corner of the screen,
74987 because static gravity ignores the window manager decorations.
74988 If you are saving and restoring your application's window
74989 positions, you should know that it's impossible for applications to
74990 do this without getting it somewhat wrong because applications do
74991 not have sufficient knowledge of window manager state. The Correct
74992 Mechanism is to support the session management protocol (see the
74993 "GnomeClient" object in the GNOME libraries for example) and allow
74994 the window manager to save your window sizes and positions.</doc>
74995         <return-value transfer-ownership="none">
74996           <type name="none" c:type="void"/>
74997         </return-value>
74998         <parameters>
74999           <parameter name="root_x"
75000                      direction="out"
75001                      caller-allocates="0"
75002                      transfer-ownership="full">
75003             <doc xml:whitespace="preserve">return location for X coordinate of gravity-determined reference point</doc>
75004             <type name="gint" c:type="gint*"/>
75005           </parameter>
75006           <parameter name="root_y"
75007                      direction="out"
75008                      caller-allocates="0"
75009                      transfer-ownership="full">
75010             <doc xml:whitespace="preserve">return location for Y coordinate of gravity-determined reference point</doc>
75011             <type name="gint" c:type="gint*"/>
75012           </parameter>
75013         </parameters>
75014       </method>
75015       <method name="get_resizable" c:identifier="gtk_window_get_resizable">
75016         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_resizable().</doc>
75017         <return-value transfer-ownership="none">
75018           <doc xml:whitespace="preserve">%TRUE if the user can resize the window</doc>
75019           <type name="gboolean" c:type="gboolean"/>
75020         </return-value>
75021       </method>
75022       <method name="get_role" c:identifier="gtk_window_get_role">
75023         <doc xml:whitespace="preserve">Returns the role of the window. See gtk_window_set_role() for
75024 further explanation.
75025 returned is owned by the widget and must not be modified
75026 or freed.</doc>
75027         <return-value transfer-ownership="none">
75028           <doc xml:whitespace="preserve">the role of the window if set, or %NULL. The</doc>
75029           <type name="utf8" c:type="gchar*"/>
75030         </return-value>
75031       </method>
75032       <method name="get_screen"
75033               c:identifier="gtk_window_get_screen"
75034               version="2.2">
75035         <doc xml:whitespace="preserve">Returns the #GdkScreen associated with @window.</doc>
75036         <return-value transfer-ownership="none">
75037           <doc xml:whitespace="preserve">a #GdkScreen.</doc>
75038           <type name="Gdk.Screen" c:type="GdkScreen*"/>
75039         </return-value>
75040       </method>
75041       <method name="get_size" c:identifier="gtk_window_get_size">
75042         <doc xml:whitespace="preserve">Obtains the current size of @window. If @window is not onscreen,
75043 it returns the size GTK+ will suggest to the &lt;link
75044 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; for the initial window
75045 size (but this is not reliably the same as the size the window
75046 manager will actually select). The size obtained by
75047 gtk_window_get_size() is the last size received in a
75048 #GdkEventConfigure, that is, GTK+ uses its locally-stored size,
75049 rather than querying the X server for the size. As a result, if you
75050 call gtk_window_resize() then immediately call
75051 gtk_window_get_size(), the size won't have taken effect yet. After
75052 the window manager processes the resize request, GTK+ receives
75053 notification that the size has changed via a configure event, and
75054 the size of the window gets updated.
75055 because the size of the window may change between the time that you
75056 get the size and the time that you perform some action assuming
75057 that size is the current size. To avoid race conditions, connect to
75058 "configure-event" on the window and adjust your size-dependent
75059 state to match the size delivered in the #GdkEventConfigure.
75060 size of the window manager decorations (aka the window frame or
75061 border). Those are not drawn by GTK+ and GTK+ has no reliable
75062 method of determining their size.
75063 the window onscreen, there may be a better way. The preferred
75064 way is to simply set the window's semantic type with
75065 gtk_window_set_type_hint(), which allows the window manager to
75066 e.g. center dialogs. Also, if you set the transient parent of
75067 dialogs with gtk_window_set_transient_for() window managers
75068 will often center the dialog over its parent window. It's
75069 much preferred to let the window manager handle these
75070 things rather than doing it yourself, because all apps will
75071 behave consistently and according to user prefs if the window
75072 manager handles it. Also, the window manager can take the size
75073 of the window decorations/border into account, while your
75074 application cannot.
75075 In any case, if you insist on application-specified window
75076 positioning, there's &lt;emphasis&gt;still&lt;/emphasis&gt; a better way than
75077 doing it yourself - gtk_window_set_position() will frequently
75078 handle the details for you.</doc>
75079         <return-value transfer-ownership="none">
75080           <type name="none" c:type="void"/>
75081         </return-value>
75082         <parameters>
75083           <parameter name="width"
75084                      direction="out"
75085                      caller-allocates="0"
75086                      transfer-ownership="full"
75087                      allow-none="1">
75088             <doc xml:whitespace="preserve">return location for width, or %NULL</doc>
75089             <type name="gint" c:type="gint*"/>
75090           </parameter>
75091           <parameter name="height"
75092                      direction="out"
75093                      caller-allocates="0"
75094                      transfer-ownership="full"
75095                      allow-none="1">
75096             <doc xml:whitespace="preserve">return location for height, or %NULL</doc>
75097             <type name="gint" c:type="gint*"/>
75098           </parameter>
75099         </parameters>
75100       </method>
75101       <method name="get_skip_pager_hint"
75102               c:identifier="gtk_window_get_skip_pager_hint"
75103               version="2.2">
75104         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_skip_pager_hint().</doc>
75105         <return-value transfer-ownership="none">
75106           <doc xml:whitespace="preserve">%TRUE if window shouldn't be in pager</doc>
75107           <type name="gboolean" c:type="gboolean"/>
75108         </return-value>
75109       </method>
75110       <method name="get_skip_taskbar_hint"
75111               c:identifier="gtk_window_get_skip_taskbar_hint"
75112               version="2.2">
75113         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_skip_taskbar_hint()</doc>
75114         <return-value transfer-ownership="none">
75115           <doc xml:whitespace="preserve">%TRUE if window shouldn't be in taskbar</doc>
75116           <type name="gboolean" c:type="gboolean"/>
75117         </return-value>
75118       </method>
75119       <method name="get_title" c:identifier="gtk_window_get_title">
75120         <doc xml:whitespace="preserve">Retrieves the title of the window. See gtk_window_set_title().
75121 been set explicitely. The returned string is owned by the widget
75122 and must not be modified or freed.</doc>
75123         <return-value transfer-ownership="none">
75124           <doc xml:whitespace="preserve">the title of the window, or %NULL if none has</doc>
75125           <type name="utf8" c:type="gchar*"/>
75126         </return-value>
75127       </method>
75128       <method name="get_transient_for"
75129               c:identifier="gtk_window_get_transient_for">
75130         <doc xml:whitespace="preserve">Fetches the transient parent for this window. See
75131 gtk_window_set_transient_for().
75132 if no transient parent has been set.</doc>
75133         <return-value transfer-ownership="none">
75134           <doc xml:whitespace="preserve">the transient parent for this window, or %NULL</doc>
75135           <type name="Window" c:type="GtkWindow*"/>
75136         </return-value>
75137       </method>
75138       <method name="get_type_hint" c:identifier="gtk_window_get_type_hint">
75139         <doc xml:whitespace="preserve">Gets the type hint for this window. See gtk_window_set_type_hint().</doc>
75140         <return-value transfer-ownership="none">
75141           <doc xml:whitespace="preserve">the type hint for @window.</doc>
75142           <type name="Gdk.WindowTypeHint" c:type="GdkWindowTypeHint"/>
75143         </return-value>
75144       </method>
75145       <method name="get_urgency_hint"
75146               c:identifier="gtk_window_get_urgency_hint"
75147               version="2.8">
75148         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_urgency_hint()</doc>
75149         <return-value transfer-ownership="none">
75150           <doc xml:whitespace="preserve">%TRUE if window is urgent</doc>
75151           <type name="gboolean" c:type="gboolean"/>
75152         </return-value>
75153       </method>
75154       <method name="get_window_type"
75155               c:identifier="gtk_window_get_window_type"
75156               version="2.20">
75157         <doc xml:whitespace="preserve">Gets the type of the window. See #GtkWindowType.</doc>
75158         <return-value transfer-ownership="none">
75159           <doc xml:whitespace="preserve">the type of the window</doc>
75160           <type name="WindowType" c:type="GtkWindowType"/>
75161         </return-value>
75162       </method>
75163       <method name="has_group" c:identifier="gtk_window_has_group">
75164         <doc xml:whitespace="preserve">Returns whether @window has an explicit window group.
75165 Since 2.22</doc>
75166         <return-value transfer-ownership="none">
75167           <doc xml:whitespace="preserve">%TRUE if @window has an explicit window group.</doc>
75168           <type name="gboolean" c:type="gboolean"/>
75169         </return-value>
75170       </method>
75171       <method name="has_toplevel_focus"
75172               c:identifier="gtk_window_has_toplevel_focus"
75173               version="2.4">
75174         <doc xml:whitespace="preserve">Returns whether the input focus is within this GtkWindow.
75175 For real toplevel windows, this is identical to gtk_window_is_active(),
75176 but for embedded windows, like #GtkPlug, the results will differ.</doc>
75177         <return-value transfer-ownership="none">
75178           <doc xml:whitespace="preserve">%TRUE if the input focus is within this GtkWindow</doc>
75179           <type name="gboolean" c:type="gboolean"/>
75180         </return-value>
75181       </method>
75182       <method name="iconify" c:identifier="gtk_window_iconify">
75183         <doc xml:whitespace="preserve">Asks to iconify (i.e. minimize) the specified @window. Note that
75184 you shouldn't assume the window is definitely iconified afterward,
75185 because other entities (e.g. the user or &lt;link
75186 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could deiconify it
75187 again, or there may not be a window manager in which case
75188 iconification isn't possible, etc. But normally the window will end
75189 up iconified. Just don't write code that crashes if not.
75190 It's permitted to call this function before showing a window,
75191 in which case the window will be iconified before it ever appears
75192 onscreen.
75193 You can track iconification via the "window-state-event" signal
75194 on #GtkWidget.</doc>
75195         <return-value transfer-ownership="none">
75196           <type name="none" c:type="void"/>
75197         </return-value>
75198       </method>
75199       <method name="is_active"
75200               c:identifier="gtk_window_is_active"
75201               version="2.4">
75202         <doc xml:whitespace="preserve">Returns whether the window is part of the current active toplevel.
75203 (That is, the toplevel window receiving keystrokes.)
75204 The return value is %TRUE if the window is active toplevel
75205 itself, but also if it is, say, a #GtkPlug embedded in the active toplevel.
75206 You might use this function if you wanted to draw a widget
75207 differently in an active window from a widget in an inactive window.
75208 See gtk_window_has_toplevel_focus()</doc>
75209         <return-value transfer-ownership="none">
75210           <doc xml:whitespace="preserve">%TRUE if the window part of the current active window.</doc>
75211           <type name="gboolean" c:type="gboolean"/>
75212         </return-value>
75213       </method>
75214       <method name="maximize" c:identifier="gtk_window_maximize">
75215         <doc xml:whitespace="preserve">Asks to maximize @window, so that it becomes full-screen. Note that
75216 you shouldn't assume the window is definitely maximized afterward,
75217 because other entities (e.g. the user or &lt;link
75218 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unmaximize it
75219 again, and not all window managers support maximization. But
75220 normally the window will end up maximized. Just don't write code
75221 that crashes if not.
75222 It's permitted to call this function before showing a window,
75223 in which case the window will be maximized when it appears onscreen
75224 initially.
75225 You can track maximization via the "window-state-event" signal
75226 on #GtkWidget.</doc>
75227         <return-value transfer-ownership="none">
75228           <type name="none" c:type="void"/>
75229         </return-value>
75230       </method>
75231       <method name="mnemonic_activate"
75232               c:identifier="gtk_window_mnemonic_activate">
75233         <doc xml:whitespace="preserve">Activates the targets associated with the mnemonic.</doc>
75234         <return-value transfer-ownership="none">
75235           <doc xml:whitespace="preserve">%TRUE if the activation is done.</doc>
75236           <type name="gboolean" c:type="gboolean"/>
75237         </return-value>
75238         <parameters>
75239           <parameter name="keyval" transfer-ownership="none">
75240             <doc xml:whitespace="preserve">the mnemonic</doc>
75241             <type name="guint" c:type="guint"/>
75242           </parameter>
75243           <parameter name="modifier" transfer-ownership="none">
75244             <doc xml:whitespace="preserve">the modifiers</doc>
75245             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
75246           </parameter>
75247         </parameters>
75248       </method>
75249       <method name="move" c:identifier="gtk_window_move">
75250         <doc xml:whitespace="preserve">Asks the &lt;link linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; to move
75251 this; most window managers ignore requests for initial window
75252 positions (instead using a user-defined placement algorithm) and
75253 honor requests after the window has already been shown.
75254 reference point for the window. The gravity determines two things:
75255 first, the location of the reference point in root window
75256 coordinates; and second, which point on the window is positioned at
75257 the reference point.
75258 By default the gravity is #GDK_GRAVITY_NORTH_WEST, so the reference
75259 point is simply the @x, @y supplied to gtk_window_move(). The
75260 top-left corner of the window decorations (aka window frame or
75261 border) will be placed at @x, @y.  Therefore, to position a window
75262 at the top left of the screen, you want to use the default gravity
75263 (which is #GDK_GRAVITY_NORTH_WEST) and move the window to 0,0.
75264 To position a window at the bottom right corner of the screen, you
75265 would set #GDK_GRAVITY_SOUTH_EAST, which means that the reference
75266 point is at @x + the window width and @y + the window height, and
75267 the bottom-right corner of the window border will be placed at that
75268 reference point. So, to place a window in the bottom right corner
75269 you would first set gravity to south east, then write:
75270 &lt;literal&gt;gtk_window_move (window, gdk_screen_width () - window_width,
75271 gdk_screen_height () - window_height)&lt;/literal&gt; (note that this
75272 example does not take multi-head scenarios into account).
75273 The Extended Window Manager Hints specification at &lt;ulink 
75274 url="http://www.freedesktop.org/Standards/wm-spec"&gt;
75275 http://www.freedesktop.org/Standards/wm-spec&lt;/ulink&gt; has a 
75276 nice table of gravities in the "implementation notes" section.
75277 The gtk_window_get_position() documentation may also be relevant.</doc>
75278         <return-value transfer-ownership="none">
75279           <type name="none" c:type="void"/>
75280         </return-value>
75281         <parameters>
75282           <parameter name="x" transfer-ownership="none">
75283             <doc xml:whitespace="preserve">X coordinate to move window to</doc>
75284             <type name="gint" c:type="gint"/>
75285           </parameter>
75286           <parameter name="y" transfer-ownership="none">
75287             <doc xml:whitespace="preserve">Y coordinate to move window to</doc>
75288             <type name="gint" c:type="gint"/>
75289           </parameter>
75290         </parameters>
75291       </method>
75292       <method name="parse_geometry" c:identifier="gtk_window_parse_geometry">
75293         <doc xml:whitespace="preserve">Parses a standard X Window System geometry string - see the
75294 manual page for X (type 'man X') for details on this.
75295 gtk_window_parse_geometry() does work on all GTK+ ports
75296 including Win32 but is primarily intended for an X environment.
75297 If either a size or a position can be extracted from the
75298 geometry string, gtk_window_parse_geometry() returns %TRUE
75299 and calls gtk_window_set_default_size() and/or gtk_window_move()
75300 to resize/move the window.
75301 If gtk_window_parse_geometry() returns %TRUE, it will also
75302 set the #GDK_HINT_USER_POS and/or #GDK_HINT_USER_SIZE hints
75303 indicating to the window manager that the size/position of
75304 the window was user-specified. This causes most window
75305 managers to honor the geometry.
75306 Note that for gtk_window_parse_geometry() to work as expected, it has
75307 to be called when the window has its "final" size, i.e. after calling
75308 gtk_widget_show_all() on the contents and gtk_window_set_geometry_hints()
75309 on the window.
75310 |[
75311 #include &lt;gtk/gtk.h&gt;
75312 static void
75313 fill_with_content (GtkWidget *vbox)
75314 {
75315 /&amp;ast; fill with content... &amp;ast;/
75316 }
75317 int
75318 main (int argc, char *argv[])
75319 {
75320 GtkWidget *window, *vbox;
75321 GdkGeometry size_hints = {
75322 100, 50, 0, 0, 100, 50, 10, 10, 0.0, 0.0, GDK_GRAVITY_NORTH_WEST  
75323 };
75324 gtk_init (&amp;argc, &amp;argv);
75325 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
75326 vbox = gtk_vbox_new (FALSE, 0);
75327 gtk_container_add (GTK_CONTAINER (window), vbox);
75328 fill_with_content (vbox);
75329 gtk_widget_show_all (vbox);
75330 gtk_window_set_geometry_hints (GTK_WINDOW (window),
75331 window,
75332 &amp;size_hints,
75333 GDK_HINT_MIN_SIZE | 
75334 GDK_HINT_BASE_SIZE | 
75335 GDK_HINT_RESIZE_INC);
75336 if (argc &amp;gt; 1)
75337 {
75338 if (!gtk_window_parse_geometry (GTK_WINDOW (window), argv[1]))
75339 fprintf (stderr, "Failed to parse '%s'\n", argv[1]);
75340 }
75341 gtk_widget_show_all (window);
75342 gtk_main ();
75343 return 0;
75344 }
75345 ]|</doc>
75346         <return-value transfer-ownership="none">
75347           <doc xml:whitespace="preserve">%TRUE if string was parsed successfully</doc>
75348           <type name="gboolean" c:type="gboolean"/>
75349         </return-value>
75350         <parameters>
75351           <parameter name="geometry" transfer-ownership="none">
75352             <doc xml:whitespace="preserve">geometry string</doc>
75353             <type name="utf8" c:type="gchar*"/>
75354           </parameter>
75355         </parameters>
75356       </method>
75357       <method name="present" c:identifier="gtk_window_present">
75358         <doc xml:whitespace="preserve">Presents a window to the user. This may mean raising the window
75359 in the stacking order, deiconifying it, moving it to the current
75360 desktop, and/or giving it the keyboard focus, possibly dependent
75361 on the user's platform, window manager, and preferences.
75362 If @window is hidden, this function calls gtk_widget_show()
75363 as well.
75364 This function should be used when the user tries to open a window
75365 that's already open. Say for example the preferences dialog is
75366 currently open, and the user chooses Preferences from the menu
75367 a second time; use gtk_window_present() to move the already-open dialog
75368 where the user can see it.
75369 If you are calling this function in response to a user interaction,
75370 it is preferable to use gtk_window_present_with_time().</doc>
75371         <return-value transfer-ownership="none">
75372           <type name="none" c:type="void"/>
75373         </return-value>
75374       </method>
75375       <method name="present_with_time"
75376               c:identifier="gtk_window_present_with_time"
75377               version="2.8">
75378         <doc xml:whitespace="preserve">Presents a window to the user in response to a user interaction.
75379 If you need to present a window without a timestamp, use 
75380 gtk_window_present(). See gtk_window_present() for details.</doc>
75381         <return-value transfer-ownership="none">
75382           <type name="none" c:type="void"/>
75383         </return-value>
75384         <parameters>
75385           <parameter name="timestamp" transfer-ownership="none">
75386             <doc xml:whitespace="preserve">the timestamp of the user interaction (typically a button or key press event) which triggered this call</doc>
75387             <type name="guint32" c:type="guint32"/>
75388           </parameter>
75389         </parameters>
75390       </method>
75391       <method name="propagate_key_event"
75392               c:identifier="gtk_window_propagate_key_event"
75393               version="2.4">
75394         <doc xml:whitespace="preserve">Propagate a key press or release event to the focus widget and
75395 up the focus container chain until a widget handles @event.
75396 This is normally called by the default ::key_press_event and
75397 ::key_release_event handlers for toplevel windows,
75398 however in some cases it may be useful to call this directly when
75399 overriding the standard key handling for a toplevel window.</doc>
75400         <return-value transfer-ownership="none">
75401           <doc xml:whitespace="preserve">%TRUE if a widget in the focus chain handled the event.</doc>
75402           <type name="gboolean" c:type="gboolean"/>
75403         </return-value>
75404         <parameters>
75405           <parameter name="event" transfer-ownership="none">
75406             <doc xml:whitespace="preserve">a #GdkEventKey</doc>
75407             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
75408           </parameter>
75409         </parameters>
75410       </method>
75411       <method name="remove_accel_group"
75412               c:identifier="gtk_window_remove_accel_group">
75413         <doc xml:whitespace="preserve">Reverses the effects of gtk_window_add_accel_group().</doc>
75414         <return-value transfer-ownership="none">
75415           <type name="none" c:type="void"/>
75416         </return-value>
75417         <parameters>
75418           <parameter name="accel_group" transfer-ownership="none">
75419             <doc xml:whitespace="preserve">a #GtkAccelGroup</doc>
75420             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
75421           </parameter>
75422         </parameters>
75423       </method>
75424       <method name="remove_embedded_xid"
75425               c:identifier="gtk_window_remove_embedded_xid">
75426         <return-value transfer-ownership="none">
75427           <type name="none" c:type="void"/>
75428         </return-value>
75429         <parameters>
75430           <parameter name="xid" transfer-ownership="none">
75431             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
75432           </parameter>
75433         </parameters>
75434       </method>
75435       <method name="remove_mnemonic" c:identifier="gtk_window_remove_mnemonic">
75436         <doc xml:whitespace="preserve">Removes a mnemonic from this window.</doc>
75437         <return-value transfer-ownership="none">
75438           <type name="none" c:type="void"/>
75439         </return-value>
75440         <parameters>
75441           <parameter name="keyval" transfer-ownership="none">
75442             <doc xml:whitespace="preserve">the mnemonic</doc>
75443             <type name="guint" c:type="guint"/>
75444           </parameter>
75445           <parameter name="target" transfer-ownership="none">
75446             <doc xml:whitespace="preserve">the widget that gets activated by the mnemonic</doc>
75447             <type name="Widget" c:type="GtkWidget*"/>
75448           </parameter>
75449         </parameters>
75450       </method>
75451       <method name="reshow_with_initial_size"
75452               c:identifier="gtk_window_reshow_with_initial_size">
75453         <doc xml:whitespace="preserve">Hides @window, then reshows it, resetting the
75454 default size and position of the window. Used
75455 by GUI builders only.</doc>
75456         <return-value transfer-ownership="none">
75457           <type name="none" c:type="void"/>
75458         </return-value>
75459       </method>
75460       <method name="resize" c:identifier="gtk_window_resize">
75461         <doc xml:whitespace="preserve">Resizes the window as if the user had done so, obeying geometry
75462 constraints. The default geometry constraint is that windows may
75463 not be smaller than their size request; to override this
75464 constraint, call gtk_widget_set_size_request() to set the window's
75465 request to a smaller value.
75466 If gtk_window_resize() is called before showing a window for the
75467 first time, it overrides any default size set with
75468 gtk_window_set_default_size().
75469 Windows may not be resized smaller than 1 by 1 pixels.</doc>
75470         <return-value transfer-ownership="none">
75471           <type name="none" c:type="void"/>
75472         </return-value>
75473         <parameters>
75474           <parameter name="width" transfer-ownership="none">
75475             <doc xml:whitespace="preserve">width in pixels to resize the window to</doc>
75476             <type name="gint" c:type="gint"/>
75477           </parameter>
75478           <parameter name="height" transfer-ownership="none">
75479             <doc xml:whitespace="preserve">height in pixels to resize the window to</doc>
75480             <type name="gint" c:type="gint"/>
75481           </parameter>
75482         </parameters>
75483       </method>
75484       <method name="set_accept_focus"
75485               c:identifier="gtk_window_set_accept_focus"
75486               version="2.4">
75487         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to receive
75488 the input focus. This function sets this hint.</doc>
75489         <return-value transfer-ownership="none">
75490           <type name="none" c:type="void"/>
75491         </return-value>
75492         <parameters>
75493           <parameter name="setting" transfer-ownership="none">
75494             <doc xml:whitespace="preserve">%TRUE to let this window receive input focus</doc>
75495             <type name="gboolean" c:type="gboolean"/>
75496           </parameter>
75497         </parameters>
75498       </method>
75499       <method name="set_decorated" c:identifier="gtk_window_set_decorated">
75500         <doc xml:whitespace="preserve">By default, windows are decorated with a title bar, resize
75501 controls, etc.  Some &lt;link linkend="gtk-X11-arch"&gt;window
75502 managers&lt;/link&gt; allow GTK+ to disable these decorations, creating a
75503 borderless window. If you set the decorated property to %FALSE
75504 using this function, GTK+ will do its best to convince the window
75505 manager not to decorate the window. Depending on the system, this
75506 function may not have any effect when called on a window that is
75507 already visible, so you should call it before calling gtk_window_show().
75508 On Windows, this function always works, since there's no window manager
75509 policy involved.</doc>
75510         <return-value transfer-ownership="none">
75511           <type name="none" c:type="void"/>
75512         </return-value>
75513         <parameters>
75514           <parameter name="setting" transfer-ownership="none">
75515             <doc xml:whitespace="preserve">%TRUE to decorate the window</doc>
75516             <type name="gboolean" c:type="gboolean"/>
75517           </parameter>
75518         </parameters>
75519       </method>
75520       <method name="set_default" c:identifier="gtk_window_set_default">
75521         <doc xml:whitespace="preserve">The default widget is the widget that's activated when the user
75522 presses Enter in a dialog (for example). This function sets or
75523 unsets the default widget for a #GtkWindow about. When setting
75524 (rather than unsetting) the default widget it's generally easier to
75525 call gtk_widget_grab_focus() on the widget. Before making a widget
75526 the default widget, you must set the #GTK_CAN_DEFAULT flag on the
75527 widget you'd like to make the default using GTK_WIDGET_SET_FLAGS().</doc>
75528         <return-value transfer-ownership="none">
75529           <type name="none" c:type="void"/>
75530         </return-value>
75531         <parameters>
75532           <parameter name="default_widget"
75533                      transfer-ownership="none"
75534                      allow-none="1">
75535             <doc xml:whitespace="preserve">widget to be the default, or %NULL to unset the default widget for the toplevel.</doc>
75536             <type name="Widget" c:type="GtkWidget*"/>
75537           </parameter>
75538         </parameters>
75539       </method>
75540       <method name="set_default_size"
75541               c:identifier="gtk_window_set_default_size">
75542         <doc xml:whitespace="preserve">Sets the default size of a window. If the window's "natural" size
75543 (its size request) is larger than the default, the default will be
75544 ignored. More generally, if the default size does not obey the
75545 geometry hints for the window (gtk_window_set_geometry_hints() can
75546 be used to set these explicitly), the default size will be clamped
75547 to the nearest permitted size.
75548 Unlike gtk_widget_set_size_request(), which sets a size request for
75549 a widget and thus would keep users from shrinking the window, this
75550 function only sets the initial size, just as if the user had
75551 resized the window themselves. Users can still shrink the window
75552 again as they normally would. Setting a default size of -1 means to
75553 use the "natural" default size (the size request of the window).
75554 For more control over a window's initial size and how resizing works,
75555 investigate gtk_window_set_geometry_hints().
75556 For some uses, gtk_window_resize() is a more appropriate function.
75557 gtk_window_resize() changes the current size of the window, rather
75558 than the size to be used on initial display. gtk_window_resize() always
75559 affects the window itself, not the geometry widget.
75560 The default size of a window only affects the first time a window is
75561 shown; if a window is hidden and re-shown, it will remember the size
75562 it had prior to hiding, rather than using the default size.
75563 Windows can't actually be 0x0 in size, they must be at least 1x1, but
75564 passing 0 for @width and @height is OK, resulting in a 1x1 default size.</doc>
75565         <return-value transfer-ownership="none">
75566           <type name="none" c:type="void"/>
75567         </return-value>
75568         <parameters>
75569           <parameter name="width" transfer-ownership="none">
75570             <doc xml:whitespace="preserve">width in pixels, or -1 to unset the default width</doc>
75571             <type name="gint" c:type="gint"/>
75572           </parameter>
75573           <parameter name="height" transfer-ownership="none">
75574             <doc xml:whitespace="preserve">height in pixels, or -1 to unset the default height</doc>
75575             <type name="gint" c:type="gint"/>
75576           </parameter>
75577         </parameters>
75578       </method>
75579       <method name="set_deletable"
75580               c:identifier="gtk_window_set_deletable"
75581               version="2.10">
75582         <doc xml:whitespace="preserve">By default, windows have a close button in the window frame. Some 
75583 &lt;link linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt; allow GTK+ to 
75584 disable this button. If you set the deletable property to %FALSE
75585 using this function, GTK+ will do its best to convince the window
75586 manager not to show a close button. Depending on the system, this
75587 function may not have any effect when called on a window that is
75588 already visible, so you should call it before calling gtk_window_show().
75589 On Windows, this function always works, since there's no window manager
75590 policy involved.</doc>
75591         <return-value transfer-ownership="none">
75592           <type name="none" c:type="void"/>
75593         </return-value>
75594         <parameters>
75595           <parameter name="setting" transfer-ownership="none">
75596             <doc xml:whitespace="preserve">%TRUE to decorate the window as deletable</doc>
75597             <type name="gboolean" c:type="gboolean"/>
75598           </parameter>
75599         </parameters>
75600       </method>
75601       <method name="set_destroy_with_parent"
75602               c:identifier="gtk_window_set_destroy_with_parent">
75603         <doc xml:whitespace="preserve">If @setting is %TRUE, then destroying the transient parent of @window
75604 will also destroy @window itself. This is useful for dialogs that
75605 shouldn't persist beyond the lifetime of the main window they're
75606 associated with, for example.</doc>
75607         <return-value transfer-ownership="none">
75608           <type name="none" c:type="void"/>
75609         </return-value>
75610         <parameters>
75611           <parameter name="setting" transfer-ownership="none">
75612             <doc xml:whitespace="preserve">whether to destroy @window with its transient parent</doc>
75613             <type name="gboolean" c:type="gboolean"/>
75614           </parameter>
75615         </parameters>
75616       </method>
75617       <method name="set_focus" c:identifier="gtk_window_set_focus">
75618         <doc xml:whitespace="preserve">If @focus is not the current focus widget, and is focusable, sets
75619 it as the focus widget for the window. If @focus is %NULL, unsets
75620 the focus widget for this window. To set the focus to a particular
75621 widget in the toplevel, it is usually more convenient to use
75622 gtk_widget_grab_focus() instead of this function.</doc>
75623         <return-value transfer-ownership="none">
75624           <type name="none" c:type="void"/>
75625         </return-value>
75626         <parameters>
75627           <parameter name="focus" transfer-ownership="none" allow-none="1">
75628             <doc xml:whitespace="preserve">widget to be the new focus widget, or %NULL to unset any focus widget for the toplevel window.</doc>
75629             <type name="Widget" c:type="GtkWidget*"/>
75630           </parameter>
75631         </parameters>
75632       </method>
75633       <method name="set_focus_on_map"
75634               c:identifier="gtk_window_set_focus_on_map"
75635               version="2.6">
75636         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to receive
75637 the input focus when the window is mapped.  This function sets this
75638 hint.</doc>
75639         <return-value transfer-ownership="none">
75640           <type name="none" c:type="void"/>
75641         </return-value>
75642         <parameters>
75643           <parameter name="setting" transfer-ownership="none">
75644             <doc xml:whitespace="preserve">%TRUE to let this window receive input focus on map</doc>
75645             <type name="gboolean" c:type="gboolean"/>
75646           </parameter>
75647         </parameters>
75648       </method>
75649       <method name="set_frame_dimensions"
75650               c:identifier="gtk_window_set_frame_dimensions">
75651         <doc xml:whitespace="preserve">(Note: this is a special-purpose function intended for the framebuffer
75652 port; see gtk_window_set_has_frame(). It will have no effect on the
75653 window border drawn by the window manager, which is the normal
75654 case when using the X Window system.)
75655 For windows with frames (see gtk_window_set_has_frame()) this function
75656 can be used to change the size of the frame border.</doc>
75657         <return-value transfer-ownership="none">
75658           <type name="none" c:type="void"/>
75659         </return-value>
75660         <parameters>
75661           <parameter name="left" transfer-ownership="none">
75662             <doc xml:whitespace="preserve">The width of the left border</doc>
75663             <type name="gint" c:type="gint"/>
75664           </parameter>
75665           <parameter name="top" transfer-ownership="none">
75666             <doc xml:whitespace="preserve">The height of the top border</doc>
75667             <type name="gint" c:type="gint"/>
75668           </parameter>
75669           <parameter name="right" transfer-ownership="none">
75670             <doc xml:whitespace="preserve">The width of the right border</doc>
75671             <type name="gint" c:type="gint"/>
75672           </parameter>
75673           <parameter name="bottom" transfer-ownership="none">
75674             <doc xml:whitespace="preserve">The height of the bottom border</doc>
75675             <type name="gint" c:type="gint"/>
75676           </parameter>
75677         </parameters>
75678       </method>
75679       <method name="set_geometry_hints"
75680               c:identifier="gtk_window_set_geometry_hints">
75681         <doc xml:whitespace="preserve">This function sets up hints about how a window can be resized by
75682 the user.  You can set a minimum and maximum size; allowed resize
75683 increments (e.g. for xterm, you can only resize by the size of a
75684 character); aspect ratios; and more. See the #GdkGeometry struct.</doc>
75685         <return-value transfer-ownership="none">
75686           <type name="none" c:type="void"/>
75687         </return-value>
75688         <parameters>
75689           <parameter name="geometry_widget"
75690                      transfer-ownership="none"
75691                      allow-none="1">
75692             <doc xml:whitespace="preserve">widget the geometry hints will be applied to or %NULL</doc>
75693             <type name="Widget" c:type="GtkWidget*"/>
75694           </parameter>
75695           <parameter name="geometry" transfer-ownership="none" allow-none="1">
75696             <doc xml:whitespace="preserve">struct containing geometry information or %NULL</doc>
75697             <type name="Gdk.Geometry" c:type="GdkGeometry*"/>
75698           </parameter>
75699           <parameter name="geom_mask" transfer-ownership="none">
75700             <doc xml:whitespace="preserve">mask indicating which struct fields should be paid attention to</doc>
75701             <type name="Gdk.WindowHints" c:type="GdkWindowHints"/>
75702           </parameter>
75703         </parameters>
75704       </method>
75705       <method name="set_gravity" c:identifier="gtk_window_set_gravity">
75706         <doc xml:whitespace="preserve">Window gravity defines the meaning of coordinates passed to
75707 gtk_window_move(). See gtk_window_move() and #GdkGravity for
75708 more details.
75709 The default window gravity is #GDK_GRAVITY_NORTH_WEST which will
75710 typically "do what you mean."</doc>
75711         <return-value transfer-ownership="none">
75712           <type name="none" c:type="void"/>
75713         </return-value>
75714         <parameters>
75715           <parameter name="gravity" transfer-ownership="none">
75716             <doc xml:whitespace="preserve">window gravity</doc>
75717             <type name="Gdk.Gravity" c:type="GdkGravity"/>
75718           </parameter>
75719         </parameters>
75720       </method>
75721       <method name="set_has_frame" c:identifier="gtk_window_set_has_frame">
75722         <doc xml:whitespace="preserve">(Note: this is a special-purpose function for the framebuffer port,
75723 that causes GTK+ to draw its own window border. For most applications,
75724 you want gtk_window_set_decorated() instead, which tells the window
75725 manager whether to draw the window border.)
75726 If this function is called on a window with setting of %TRUE, before
75727 it is realized or showed, it will have a "frame" window around
75728 frame_event you can receive all events targeted at the frame.
75729 This function is used by the linux-fb port to implement managed
75730 windows, but it could conceivably be used by X-programs that
75731 want to do their own window decorations.</doc>
75732         <return-value transfer-ownership="none">
75733           <type name="none" c:type="void"/>
75734         </return-value>
75735         <parameters>
75736           <parameter name="setting" transfer-ownership="none">
75737             <doc xml:whitespace="preserve">a boolean</doc>
75738             <type name="gboolean" c:type="gboolean"/>
75739           </parameter>
75740         </parameters>
75741       </method>
75742       <method name="set_icon" c:identifier="gtk_window_set_icon">
75743         <doc xml:whitespace="preserve">Sets up the icon representing a #GtkWindow. This icon is used when
75744 the window is minimized (also known as iconified).  Some window
75745 managers or desktop environments may also place it in the window
75746 frame, or display it in other contexts.
75747 The icon should be provided in whatever size it was naturally
75748 drawn; that is, don't scale the image before passing it to
75749 GTK+. Scaling is postponed until the last minute, when the desired
75750 final size is known, to allow best quality.
75751 If you have your icon hand-drawn in multiple sizes, use
75752 gtk_window_set_icon_list(). Then the best size will be used.
75753 This function is equivalent to calling gtk_window_set_icon_list()
75754 with a 1-element list.
75755 See also gtk_window_set_default_icon_list() to set the icon
75756 for all windows in your application in one go.</doc>
75757         <return-value transfer-ownership="none">
75758           <type name="none" c:type="void"/>
75759         </return-value>
75760         <parameters>
75761           <parameter name="icon" transfer-ownership="none" allow-none="1">
75762             <doc xml:whitespace="preserve">icon image, or %NULL</doc>
75763             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
75764           </parameter>
75765         </parameters>
75766       </method>
75767       <method name="set_icon_from_file"
75768               c:identifier="gtk_window_set_icon_from_file"
75769               version="2.2"
75770               throws="1">
75771         <doc xml:whitespace="preserve">Sets the icon for @window.  
75772 Warns on failure if @err is %NULL.
75773 This function is equivalent to calling gtk_window_set_icon()
75774 with a pixbuf created by loading the image from @filename.</doc>
75775         <return-value transfer-ownership="none">
75776           <doc xml:whitespace="preserve">%TRUE if setting the icon succeeded.</doc>
75777           <type name="gboolean" c:type="gboolean"/>
75778         </return-value>
75779         <parameters>
75780           <parameter name="filename" transfer-ownership="none">
75781             <doc xml:whitespace="preserve">location of icon file</doc>
75782             <type name="utf8" c:type="gchar*"/>
75783           </parameter>
75784         </parameters>
75785       </method>
75786       <method name="set_icon_list" c:identifier="gtk_window_set_icon_list">
75787         <doc xml:whitespace="preserve">Sets up the icon representing a #GtkWindow. The icon is used when
75788 the window is minimized (also known as iconified).  Some window
75789 managers or desktop environments may also place it in the window
75790 frame, or display it in other contexts.
75791 gtk_window_set_icon_list() allows you to pass in the same icon in
75792 several hand-drawn sizes. The list should contain the natural sizes
75793 your icon is available in; that is, don't scale the image before
75794 passing it to GTK+. Scaling is postponed until the last minute,
75795 when the desired final size is known, to allow best quality.
75796 By passing several sizes, you may improve the final image quality
75797 of the icon, by reducing or eliminating automatic image scaling.
75798 larger images (64x64, 128x128) if you have them.
75799 See also gtk_window_set_default_icon_list() to set the icon
75800 for all windows in your application in one go.
75801 Note that transient windows (those who have been set transient for another
75802 window using gtk_window_set_transient_for()) will inherit their
75803 icon from their transient parent. So there's no need to explicitly
75804 set the icon on transient windows.</doc>
75805         <return-value transfer-ownership="none">
75806           <type name="none" c:type="void"/>
75807         </return-value>
75808         <parameters>
75809           <parameter name="list" transfer-ownership="container">
75810             <doc xml:whitespace="preserve">list of #GdkPixbuf</doc>
75811             <type name="GLib.List" c:type="GList*">
75812               <type name="GdkPixbuf.Pixbuf"/>
75813             </type>
75814           </parameter>
75815         </parameters>
75816       </method>
75817       <method name="set_icon_name"
75818               c:identifier="gtk_window_set_icon_name"
75819               version="2.6">
75820         <doc xml:whitespace="preserve">Sets the icon for the window from a named themed icon. See
75821 the docs for #GtkIconTheme for more details.
75822 Note that this has nothing to do with the WM_ICON_NAME 
75823 property which is mentioned in the ICCCM.</doc>
75824         <return-value transfer-ownership="none">
75825           <type name="none" c:type="void"/>
75826         </return-value>
75827         <parameters>
75828           <parameter name="name" transfer-ownership="none" allow-none="1">
75829             <doc xml:whitespace="preserve">the name of the themed icon</doc>
75830             <type name="utf8" c:type="gchar*"/>
75831           </parameter>
75832         </parameters>
75833       </method>
75834       <method name="set_keep_above"
75835               c:identifier="gtk_window_set_keep_above"
75836               version="2.4">
75837         <doc xml:whitespace="preserve">Asks to keep @window above, so that it stays on top. Note that
75838 you shouldn't assume the window is definitely above afterward,
75839 because other entities (e.g. the user or &lt;link
75840 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could not keep it above,
75841 and not all window managers support keeping windows above. But
75842 normally the window will end kept above. Just don't write code
75843 that crashes if not.
75844 It's permitted to call this function before showing a window,
75845 in which case the window will be kept above when it appears onscreen
75846 initially.
75847 You can track the above state via the "window-state-event" signal
75848 on #GtkWidget.
75849 Note that, according to the &lt;ulink 
75850 url="http://www.freedesktop.org/Standards/wm-spec"&gt;Extended Window 
75851 Manager Hints&lt;/ulink&gt; specification, the above state is mainly meant 
75852 for user preferences and should not be used by applications e.g. for 
75853 drawing attention to their dialogs.</doc>
75854         <return-value transfer-ownership="none">
75855           <type name="none" c:type="void"/>
75856         </return-value>
75857         <parameters>
75858           <parameter name="setting" transfer-ownership="none">
75859             <doc xml:whitespace="preserve">whether to keep @window above other windows</doc>
75860             <type name="gboolean" c:type="gboolean"/>
75861           </parameter>
75862         </parameters>
75863       </method>
75864       <method name="set_keep_below"
75865               c:identifier="gtk_window_set_keep_below"
75866               version="2.4">
75867         <doc xml:whitespace="preserve">Asks to keep @window below, so that it stays in bottom. Note that
75868 you shouldn't assume the window is definitely below afterward,
75869 because other entities (e.g. the user or &lt;link
75870 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could not keep it below,
75871 and not all window managers support putting windows below. But
75872 normally the window will be kept below. Just don't write code
75873 that crashes if not.
75874 It's permitted to call this function before showing a window,
75875 in which case the window will be kept below when it appears onscreen
75876 initially.
75877 You can track the below state via the "window-state-event" signal
75878 on #GtkWidget.
75879 Note that, according to the &lt;ulink 
75880 url="http://www.freedesktop.org/Standards/wm-spec"&gt;Extended Window 
75881 Manager Hints&lt;/ulink&gt; specification, the above state is mainly meant 
75882 for user preferences and should not be used by applications e.g. for 
75883 drawing attention to their dialogs.</doc>
75884         <return-value transfer-ownership="none">
75885           <type name="none" c:type="void"/>
75886         </return-value>
75887         <parameters>
75888           <parameter name="setting" transfer-ownership="none">
75889             <doc xml:whitespace="preserve">whether to keep @window below other windows</doc>
75890             <type name="gboolean" c:type="gboolean"/>
75891           </parameter>
75892         </parameters>
75893       </method>
75894       <method name="set_mnemonic_modifier"
75895               c:identifier="gtk_window_set_mnemonic_modifier">
75896         <doc xml:whitespace="preserve">Sets the mnemonic modifier for this window.</doc>
75897         <return-value transfer-ownership="none">
75898           <type name="none" c:type="void"/>
75899         </return-value>
75900         <parameters>
75901           <parameter name="modifier" transfer-ownership="none">
75902             <doc xml:whitespace="preserve">the modifier mask used to activate mnemonics on this window.</doc>
75903             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
75904           </parameter>
75905         </parameters>
75906       </method>
75907       <method name="set_mnemonics_visible"
75908               c:identifier="gtk_window_set_mnemonics_visible"
75909               version="2.20">
75910         <doc xml:whitespace="preserve">Sets the #GtkWindow:mnemonics-visible property.</doc>
75911         <return-value transfer-ownership="none">
75912           <type name="none" c:type="void"/>
75913         </return-value>
75914         <parameters>
75915           <parameter name="setting" transfer-ownership="none">
75916             <doc xml:whitespace="preserve">the new value</doc>
75917             <type name="gboolean" c:type="gboolean"/>
75918           </parameter>
75919         </parameters>
75920       </method>
75921       <method name="set_modal" c:identifier="gtk_window_set_modal">
75922         <doc xml:whitespace="preserve">Sets a window modal or non-modal. Modal windows prevent interaction
75923 with other windows in the same application. To keep modal dialogs
75924 on top of main application windows, use
75925 gtk_window_set_transient_for() to make the dialog transient for the
75926 parent; most &lt;link linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt;
75927 will then disallow lowering the dialog below the parent.</doc>
75928         <return-value transfer-ownership="none">
75929           <type name="none" c:type="void"/>
75930         </return-value>
75931         <parameters>
75932           <parameter name="modal" transfer-ownership="none">
75933             <doc xml:whitespace="preserve">whether the window is modal</doc>
75934             <type name="gboolean" c:type="gboolean"/>
75935           </parameter>
75936         </parameters>
75937       </method>
75938       <method name="set_opacity"
75939               c:identifier="gtk_window_set_opacity"
75940               version="2.12">
75941         <doc xml:whitespace="preserve">Request the windowing system to make @window partially transparent,
75942 with opacity 0 being fully transparent and 1 fully opaque. (Values
75943 of the opacity parameter are clamped to the [0,1] range.) On X11
75944 this has any effect only on X screens with a compositing manager
75945 running. See gtk_widget_is_composited(). On Windows it should work
75946 always.
75947 Note that setting a window's opacity after the window has been
75948 shown causes it to flicker once on Windows.</doc>
75949         <return-value transfer-ownership="none">
75950           <type name="none" c:type="void"/>
75951         </return-value>
75952         <parameters>
75953           <parameter name="opacity" transfer-ownership="none">
75954             <doc xml:whitespace="preserve">desired opacity, between 0 and 1</doc>
75955             <type name="gdouble" c:type="gdouble"/>
75956           </parameter>
75957         </parameters>
75958       </method>
75959       <method name="set_position" c:identifier="gtk_window_set_position">
75960         <doc xml:whitespace="preserve">Sets a position constraint for this window. If the old or new
75961 constraint is %GTK_WIN_POS_CENTER_ALWAYS, this will also cause
75962 the window to be repositioned to satisfy the new constraint.</doc>
75963         <return-value transfer-ownership="none">
75964           <type name="none" c:type="void"/>
75965         </return-value>
75966         <parameters>
75967           <parameter name="position" transfer-ownership="none">
75968             <doc xml:whitespace="preserve">a position constraint.</doc>
75969             <type name="WindowPosition" c:type="GtkWindowPosition"/>
75970           </parameter>
75971         </parameters>
75972       </method>
75973       <method name="set_resizable" c:identifier="gtk_window_set_resizable">
75974         <doc xml:whitespace="preserve">Sets whether the user can resize a window. Windows are user resizable
75975 by default.</doc>
75976         <return-value transfer-ownership="none">
75977           <type name="none" c:type="void"/>
75978         </return-value>
75979         <parameters>
75980           <parameter name="resizable" transfer-ownership="none">
75981             <doc xml:whitespace="preserve">%TRUE if the user can resize this window</doc>
75982             <type name="gboolean" c:type="gboolean"/>
75983           </parameter>
75984         </parameters>
75985       </method>
75986       <method name="set_role" c:identifier="gtk_window_set_role">
75987         <doc xml:whitespace="preserve">This function is only useful on X11, not with other GTK+ targets.
75988 In combination with the window title, the window role allows a
75989 &lt;link linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; to identify "the
75990 same" window when an application is restarted. So for example you
75991 might set the "toolbox" role on your app's toolbox window, so that
75992 when the user restarts their session, the window manager can put
75993 the toolbox back in the same place.
75994 If a window already has a unique title, you don't need to set the
75995 role, since the WM can use the title to identify the window when
75996 restoring the session.</doc>
75997         <return-value transfer-ownership="none">
75998           <type name="none" c:type="void"/>
75999         </return-value>
76000         <parameters>
76001           <parameter name="role" transfer-ownership="none">
76002             <doc xml:whitespace="preserve">unique identifier for the window to be used when restoring a session</doc>
76003             <type name="utf8" c:type="gchar*"/>
76004           </parameter>
76005         </parameters>
76006       </method>
76007       <method name="set_screen" c:identifier="gtk_window_set_screen">
76008         <return-value transfer-ownership="none">
76009           <type name="none" c:type="void"/>
76010         </return-value>
76011         <parameters>
76012           <parameter name="screen" transfer-ownership="none">
76013             <type name="Gdk.Screen" c:type="GdkScreen*"/>
76014           </parameter>
76015         </parameters>
76016       </method>
76017       <method name="set_skip_pager_hint"
76018               c:identifier="gtk_window_set_skip_pager_hint"
76019               version="2.2">
76020         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to display
76021 the window in the pager. This function sets this hint.
76022 (A "pager" is any desktop navigation tool such as a workspace
76023 switcher that displays a thumbnail representation of the windows
76024 on the screen.)</doc>
76025         <return-value transfer-ownership="none">
76026           <type name="none" c:type="void"/>
76027         </return-value>
76028         <parameters>
76029           <parameter name="setting" transfer-ownership="none">
76030             <doc xml:whitespace="preserve">%TRUE to keep this window from appearing in the pager</doc>
76031             <type name="gboolean" c:type="gboolean"/>
76032           </parameter>
76033         </parameters>
76034       </method>
76035       <method name="set_skip_taskbar_hint"
76036               c:identifier="gtk_window_set_skip_taskbar_hint"
76037               version="2.2">
76038         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to display
76039 the window in the task bar. This function sets this hint.</doc>
76040         <return-value transfer-ownership="none">
76041           <type name="none" c:type="void"/>
76042         </return-value>
76043         <parameters>
76044           <parameter name="setting" transfer-ownership="none">
76045             <doc xml:whitespace="preserve">%TRUE to keep this window from appearing in the task bar</doc>
76046             <type name="gboolean" c:type="gboolean"/>
76047           </parameter>
76048         </parameters>
76049       </method>
76050       <method name="set_startup_id"
76051               c:identifier="gtk_window_set_startup_id"
76052               version="2.12">
76053         <doc xml:whitespace="preserve">Startup notification identifiers are used by desktop environment to 
76054 track application startup, to provide user feedback and other 
76055 features. This function changes the corresponding property on the
76056 underlying GdkWindow. Normally, startup identifier is managed 
76057 automatically and you should only use this function in special cases
76058 like transferring focus from other processes. You should use this
76059 function before calling gtk_window_present() or any equivalent
76060 function generating a window map event.
76061 This function is only useful on X11, not with other GTK+ targets.</doc>
76062         <return-value transfer-ownership="none">
76063           <type name="none" c:type="void"/>
76064         </return-value>
76065         <parameters>
76066           <parameter name="startup_id" transfer-ownership="none">
76067             <doc xml:whitespace="preserve">a string with startup-notification identifier</doc>
76068             <type name="utf8" c:type="gchar*"/>
76069           </parameter>
76070         </parameters>
76071       </method>
76072       <method name="set_title" c:identifier="gtk_window_set_title">
76073         <doc xml:whitespace="preserve">Sets the title of the #GtkWindow. The title of a window will be
76074 displayed in its title bar; on the X Window System, the title bar
76075 is rendered by the &lt;link linkend="gtk-X11-arch"&gt;window
76076 manager&lt;/link&gt;, so exactly how the title appears to users may vary
76077 according to a user's exact configuration. The title should help a
76078 user distinguish this window from other windows they may have
76079 open. A good title might include the application name and current
76080 document filename, for example.</doc>
76081         <return-value transfer-ownership="none">
76082           <type name="none" c:type="void"/>
76083         </return-value>
76084         <parameters>
76085           <parameter name="title" transfer-ownership="none">
76086             <doc xml:whitespace="preserve">title of the window</doc>
76087             <type name="utf8" c:type="gchar*"/>
76088           </parameter>
76089         </parameters>
76090       </method>
76091       <method name="set_transient_for"
76092               c:identifier="gtk_window_set_transient_for">
76093         <doc xml:whitespace="preserve">Dialog windows should be set transient for the main application
76094 window they were spawned from. This allows &lt;link
76095 linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt; to e.g. keep the
76096 dialog on top of the main window, or center the dialog over the
76097 main window. gtk_dialog_new_with_buttons() and other convenience
76098 functions in GTK+ will sometimes call
76099 gtk_window_set_transient_for() on your behalf.
76100 Passing %NULL for @parent unsets the current transient window.
76101 On Windows, this function puts the child window on top of the parent,
76102 much as the window manager would have done on X.</doc>
76103         <return-value transfer-ownership="none">
76104           <type name="none" c:type="void"/>
76105         </return-value>
76106         <parameters>
76107           <parameter name="parent" transfer-ownership="none" allow-none="1">
76108             <doc xml:whitespace="preserve">parent window, or %NULL</doc>
76109             <type name="Window" c:type="GtkWindow*"/>
76110           </parameter>
76111         </parameters>
76112       </method>
76113       <method name="set_type_hint" c:identifier="gtk_window_set_type_hint">
76114         <doc xml:whitespace="preserve">By setting the type hint for the window, you allow the window
76115 manager to decorate and handle the window in a way which is
76116 suitable to the function of the window in your application.
76117 This function should be called before the window becomes visible.
76118 gtk_dialog_new_with_buttons() and other convenience functions in GTK+
76119 will sometimes call gtk_window_set_type_hint() on your behalf.</doc>
76120         <return-value transfer-ownership="none">
76121           <type name="none" c:type="void"/>
76122         </return-value>
76123         <parameters>
76124           <parameter name="hint" transfer-ownership="none">
76125             <doc xml:whitespace="preserve">the window type</doc>
76126             <type name="Gdk.WindowTypeHint" c:type="GdkWindowTypeHint"/>
76127           </parameter>
76128         </parameters>
76129       </method>
76130       <method name="set_urgency_hint"
76131               c:identifier="gtk_window_set_urgency_hint"
76132               version="2.8">
76133         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment to draw
76134 the users attention to the window. This function sets this hint.</doc>
76135         <return-value transfer-ownership="none">
76136           <type name="none" c:type="void"/>
76137         </return-value>
76138         <parameters>
76139           <parameter name="setting" transfer-ownership="none">
76140             <doc xml:whitespace="preserve">%TRUE to mark this window as urgent</doc>
76141             <type name="gboolean" c:type="gboolean"/>
76142           </parameter>
76143         </parameters>
76144       </method>
76145       <method name="set_wmclass" c:identifier="gtk_window_set_wmclass">
76146         <doc xml:whitespace="preserve">Don't use this function. It sets the X Window System "class" and
76147 "name" hints for a window.  According to the ICCCM, you should
76148 always set these to the same value for all windows in an
76149 application, and GTK+ sets them to that value by default, so calling
76150 this function is sort of pointless. However, you may want to call
76151 gtk_window_set_role() on each window in your application, for the
76152 benefit of the session manager. Setting the role allows the window
76153 manager to restore window positions when loading a saved session.</doc>
76154         <return-value transfer-ownership="none">
76155           <type name="none" c:type="void"/>
76156         </return-value>
76157         <parameters>
76158           <parameter name="wmclass_name" transfer-ownership="none">
76159             <doc xml:whitespace="preserve">window name hint</doc>
76160             <type name="utf8" c:type="gchar*"/>
76161           </parameter>
76162           <parameter name="wmclass_class" transfer-ownership="none">
76163             <doc xml:whitespace="preserve">window class hint</doc>
76164             <type name="utf8" c:type="gchar*"/>
76165           </parameter>
76166         </parameters>
76167       </method>
76168       <method name="stick" c:identifier="gtk_window_stick">
76169         <doc xml:whitespace="preserve">Asks to stick @window, which means that it will appear on all user
76170 desktops. Note that you shouldn't assume the window is definitely
76171 stuck afterward, because other entities (e.g. the user or &lt;link
76172 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unstick it
76173 again, and some window managers do not support sticking
76174 windows. But normally the window will end up stuck. Just don't
76175 write code that crashes if not.
76176 It's permitted to call this function before showing a window.
76177 You can track stickiness via the "window-state-event" signal
76178 on #GtkWidget.</doc>
76179         <return-value transfer-ownership="none">
76180           <type name="none" c:type="void"/>
76181         </return-value>
76182       </method>
76183       <method name="unfullscreen"
76184               c:identifier="gtk_window_unfullscreen"
76185               version="2.2">
76186         <doc xml:whitespace="preserve">Asks to toggle off the fullscreen state for @window. Note that you
76187 shouldn't assume the window is definitely not full screen
76188 afterward, because other entities (e.g. the user or &lt;link
76189 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could fullscreen it
76190 again, and not all window managers honor requests to unfullscreen
76191 windows. But normally the window will end up restored to its normal
76192 state. Just don't write code that crashes if not.
76193 You can track the fullscreen state via the "window-state-event" signal
76194 on #GtkWidget.</doc>
76195         <return-value transfer-ownership="none">
76196           <type name="none" c:type="void"/>
76197         </return-value>
76198       </method>
76199       <method name="unmaximize" c:identifier="gtk_window_unmaximize">
76200         <doc xml:whitespace="preserve">Asks to unmaximize @window. Note that you shouldn't assume the
76201 window is definitely unmaximized afterward, because other entities
76202 (e.g. the user or &lt;link linkend="gtk-X11-arch"&gt;window
76203 manager&lt;/link&gt;) could maximize it again, and not all window
76204 managers honor requests to unmaximize. But normally the window will
76205 end up unmaximized. Just don't write code that crashes if not.
76206 You can track maximization via the "window-state-event" signal
76207 on #GtkWidget.</doc>
76208         <return-value transfer-ownership="none">
76209           <type name="none" c:type="void"/>
76210         </return-value>
76211       </method>
76212       <method name="unstick" c:identifier="gtk_window_unstick">
76213         <doc xml:whitespace="preserve">Asks to unstick @window, which means that it will appear on only
76214 one of the user's desktops. Note that you shouldn't assume the
76215 window is definitely unstuck afterward, because other entities
76216 (e.g. the user or &lt;link linkend="gtk-X11-arch"&gt;window
76217 manager&lt;/link&gt;) could stick it again. But normally the window will
76218 end up stuck. Just don't write code that crashes if not.
76219 You can track stickiness via the "window-state-event" signal
76220 on #GtkWidget.</doc>
76221         <return-value transfer-ownership="none">
76222           <type name="none" c:type="void"/>
76223         </return-value>
76224       </method>
76225       <property name="accept-focus"
76226                 version="2.4"
76227                 writable="1"
76228                 transfer-ownership="none">
76229         <doc xml:whitespace="preserve">Whether the window should receive the input focus.</doc>
76230         <type name="gboolean"/>
76231       </property>
76232       <property name="decorated"
76233                 version="2.4"
76234                 writable="1"
76235                 transfer-ownership="none">
76236         <doc xml:whitespace="preserve">Whether the window should be decorated by the window manager.</doc>
76237         <type name="gboolean"/>
76238       </property>
76239       <property name="default-height" writable="1" transfer-ownership="none">
76240         <type name="gint"/>
76241       </property>
76242       <property name="default-width" writable="1" transfer-ownership="none">
76243         <type name="gint"/>
76244       </property>
76245       <property name="deletable"
76246                 version="2.10"
76247                 writable="1"
76248                 transfer-ownership="none">
76249         <doc xml:whitespace="preserve">Whether the window frame should have a close button.</doc>
76250         <type name="gboolean"/>
76251       </property>
76252       <property name="destroy-with-parent"
76253                 writable="1"
76254                 transfer-ownership="none">
76255         <type name="gboolean"/>
76256       </property>
76257       <property name="focus-on-map"
76258                 version="2.6"
76259                 writable="1"
76260                 transfer-ownership="none">
76261         <doc xml:whitespace="preserve">Whether the window should receive the input focus when mapped.</doc>
76262         <type name="gboolean"/>
76263       </property>
76264       <property name="gravity"
76265                 version="2.4"
76266                 writable="1"
76267                 transfer-ownership="none">
76268         <doc xml:whitespace="preserve">The window gravity of the window. See gtk_window_move() and #GdkGravity for
76269 more details about window gravity.</doc>
76270         <type name="Gdk.Gravity"/>
76271       </property>
76272       <property name="has-toplevel-focus" transfer-ownership="none">
76273         <type name="gboolean"/>
76274       </property>
76275       <property name="icon" writable="1" transfer-ownership="none">
76276         <type name="GdkPixbuf.Pixbuf"/>
76277       </property>
76278       <property name="icon-name"
76279                 version="2.6"
76280                 writable="1"
76281                 transfer-ownership="none">
76282         <doc xml:whitespace="preserve">The :icon-name property specifies the name of the themed icon to
76283 use as the window icon. See #GtkIconTheme for more details.</doc>
76284         <type name="utf8"/>
76285       </property>
76286       <property name="is-active" transfer-ownership="none">
76287         <type name="gboolean"/>
76288       </property>
76289       <property name="mnemonics-visible"
76290                 writable="1"
76291                 transfer-ownership="none">
76292         <type name="gboolean"/>
76293       </property>
76294       <property name="modal" writable="1" transfer-ownership="none">
76295         <type name="gboolean"/>
76296       </property>
76297       <property name="opacity"
76298                 version="2.12"
76299                 writable="1"
76300                 transfer-ownership="none">
76301         <doc xml:whitespace="preserve">The requested opacity of the window. See gtk_window_set_opacity() for
76302 more details about window opacity.</doc>
76303         <type name="gdouble"/>
76304       </property>
76305       <property name="resizable" writable="1" transfer-ownership="none">
76306         <type name="gboolean"/>
76307       </property>
76308       <property name="role" writable="1" transfer-ownership="none">
76309         <type name="utf8"/>
76310       </property>
76311       <property name="screen" writable="1" transfer-ownership="none">
76312         <type name="Gdk.Screen"/>
76313       </property>
76314       <property name="skip-pager-hint" writable="1" transfer-ownership="none">
76315         <type name="gboolean"/>
76316       </property>
76317       <property name="skip-taskbar-hint"
76318                 writable="1"
76319                 transfer-ownership="none">
76320         <type name="gboolean"/>
76321       </property>
76322       <property name="startup-id"
76323                 version="2.12"
76324                 readable="0"
76325                 writable="1"
76326                 transfer-ownership="none">
76327         <doc xml:whitespace="preserve">The :startup-id is a write-only property for setting window's
76328 startup notification identifier. See gtk_window_set_startup_id()
76329 for more details.</doc>
76330         <type name="utf8"/>
76331       </property>
76332       <property name="title" writable="1" transfer-ownership="none">
76333         <type name="utf8"/>
76334       </property>
76335       <property name="transient-for"
76336                 version="2.10"
76337                 writable="1"
76338                 construct="1"
76339                 transfer-ownership="none">
76340         <doc xml:whitespace="preserve">The transient parent of the window. See gtk_window_set_transient_for() for
76341 more details about transient windows.</doc>
76342         <type name="Window"/>
76343       </property>
76344       <property name="type"
76345                 writable="1"
76346                 construct-only="1"
76347                 transfer-ownership="none">
76348         <type name="WindowType"/>
76349       </property>
76350       <property name="type-hint" writable="1" transfer-ownership="none">
76351         <type name="Gdk.WindowTypeHint"/>
76352       </property>
76353       <property name="urgency-hint" writable="1" transfer-ownership="none">
76354         <type name="gboolean"/>
76355       </property>
76356       <property name="window-position" writable="1" transfer-ownership="none">
76357         <type name="WindowPosition"/>
76358       </property>
76359       <field name="bin">
76360         <type name="Bin" c:type="GtkBin"/>
76361       </field>
76362       <field name="priv">
76363         <type name="WindowPrivate" c:type="GtkWindowPrivate*"/>
76364       </field>
76365       <glib:signal name="activate-default">
76366         <doc xml:whitespace="preserve">The ::activate-default signal is a
76367 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
76368 which gets emitted when the user activates the default widget
76369 of @window.</doc>
76370         <return-value transfer-ownership="none">
76371           <type name="none"/>
76372         </return-value>
76373       </glib:signal>
76374       <glib:signal name="activate-focus">
76375         <doc xml:whitespace="preserve">The ::activate-focus signal is a
76376 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
76377 which gets emitted when the user activates the currently
76378 focused widget of @window.</doc>
76379         <return-value transfer-ownership="none">
76380           <type name="none"/>
76381         </return-value>
76382       </glib:signal>
76383       <glib:signal name="frame-event">
76384         <return-value transfer-ownership="none">
76385           <type name="gboolean"/>
76386         </return-value>
76387         <parameters>
76388           <parameter name="object" transfer-ownership="none">
76389             <type name="Gdk.Event"/>
76390           </parameter>
76391         </parameters>
76392       </glib:signal>
76393       <glib:signal name="keys-changed">
76394         <doc xml:whitespace="preserve">The ::keys-changed signal gets emitted when the set of accelerators
76395 or mnemonics that are associated with @window changes.</doc>
76396         <return-value transfer-ownership="none">
76397           <type name="none"/>
76398         </return-value>
76399       </glib:signal>
76400       <glib:signal name="set-focus">
76401         <return-value transfer-ownership="none">
76402           <type name="none"/>
76403         </return-value>
76404         <parameters>
76405           <parameter name="object" transfer-ownership="none">
76406             <type name="Widget"/>
76407           </parameter>
76408         </parameters>
76409       </glib:signal>
76410     </class>
76411     <record name="WindowClass"
76412             c:type="GtkWindowClass"
76413             glib:is-gtype-struct-for="Window">
76414       <field name="parent_class">
76415         <type name="BinClass" c:type="GtkBinClass"/>
76416       </field>
76417       <field name="set_focus">
76418         <callback name="set_focus">
76419           <return-value transfer-ownership="none">
76420             <type name="none" c:type="void"/>
76421           </return-value>
76422           <parameters>
76423             <parameter name="window" transfer-ownership="none">
76424               <type name="Window" c:type="GtkWindow*"/>
76425             </parameter>
76426             <parameter name="focus" transfer-ownership="none">
76427               <type name="Widget" c:type="GtkWidget*"/>
76428             </parameter>
76429           </parameters>
76430         </callback>
76431       </field>
76432       <field name="frame_event">
76433         <callback name="frame_event">
76434           <return-value transfer-ownership="none">
76435             <type name="gboolean" c:type="gboolean"/>
76436           </return-value>
76437           <parameters>
76438             <parameter name="window" transfer-ownership="none">
76439               <type name="Window" c:type="GtkWindow*"/>
76440             </parameter>
76441             <parameter name="event" transfer-ownership="none">
76442               <type name="Gdk.Event" c:type="GdkEvent*"/>
76443             </parameter>
76444           </parameters>
76445         </callback>
76446       </field>
76447       <field name="activate_focus">
76448         <callback name="activate_focus">
76449           <return-value transfer-ownership="none">
76450             <type name="none" c:type="void"/>
76451           </return-value>
76452           <parameters>
76453             <parameter name="window" transfer-ownership="none">
76454               <type name="Window" c:type="GtkWindow*"/>
76455             </parameter>
76456           </parameters>
76457         </callback>
76458       </field>
76459       <field name="activate_default">
76460         <callback name="activate_default">
76461           <return-value transfer-ownership="none">
76462             <type name="none" c:type="void"/>
76463           </return-value>
76464           <parameters>
76465             <parameter name="window" transfer-ownership="none">
76466               <type name="Window" c:type="GtkWindow*"/>
76467             </parameter>
76468           </parameters>
76469         </callback>
76470       </field>
76471       <field name="move_focus">
76472         <callback name="move_focus">
76473           <return-value transfer-ownership="none">
76474             <type name="none" c:type="void"/>
76475           </return-value>
76476           <parameters>
76477             <parameter name="window" transfer-ownership="none">
76478               <type name="Window" c:type="GtkWindow*"/>
76479             </parameter>
76480             <parameter name="direction" transfer-ownership="none">
76481               <type name="DirectionType" c:type="GtkDirectionType"/>
76482             </parameter>
76483           </parameters>
76484         </callback>
76485       </field>
76486       <field name="keys_changed">
76487         <callback name="keys_changed">
76488           <return-value transfer-ownership="none">
76489             <type name="none" c:type="void"/>
76490           </return-value>
76491           <parameters>
76492             <parameter name="window" transfer-ownership="none">
76493               <type name="Window" c:type="GtkWindow*"/>
76494             </parameter>
76495           </parameters>
76496         </callback>
76497       </field>
76498       <field name="_gtk_reserved1" introspectable="0">
76499         <callback name="_gtk_reserved1">
76500           <return-value transfer-ownership="none">
76501             <type name="none" c:type="void"/>
76502           </return-value>
76503         </callback>
76504       </field>
76505       <field name="_gtk_reserved2" introspectable="0">
76506         <callback name="_gtk_reserved2">
76507           <return-value transfer-ownership="none">
76508             <type name="none" c:type="void"/>
76509           </return-value>
76510         </callback>
76511       </field>
76512       <field name="_gtk_reserved3" introspectable="0">
76513         <callback name="_gtk_reserved3">
76514           <return-value transfer-ownership="none">
76515             <type name="none" c:type="void"/>
76516           </return-value>
76517         </callback>
76518       </field>
76519       <field name="_gtk_reserved4" introspectable="0">
76520         <callback name="_gtk_reserved4">
76521           <return-value transfer-ownership="none">
76522             <type name="none" c:type="void"/>
76523           </return-value>
76524         </callback>
76525       </field>
76526     </record>
76527     <record name="WindowGeometryInfo"
76528             c:type="GtkWindowGeometryInfo"
76529             disguised="1">
76530     </record>
76531     <class name="WindowGroup"
76532            c:symbol-prefix="window_group"
76533            c:type="GtkWindowGroup"
76534            parent="GObject.Object"
76535            glib:type-name="GtkWindowGroup"
76536            glib:get-type="gtk_window_group_get_type"
76537            glib:type-struct="WindowGroupClass">
76538       <constructor name="new" c:identifier="gtk_window_group_new">
76539         <doc xml:whitespace="preserve">Creates a new #GtkWindowGroup object. Grabs added with
76540 gtk_grab_add() only affect windows within the same #GtkWindowGroup.</doc>
76541         <return-value transfer-ownership="full">
76542           <doc xml:whitespace="preserve">a new #GtkWindowGroup.</doc>
76543           <type name="WindowGroup" c:type="GtkWindowGroup*"/>
76544         </return-value>
76545       </constructor>
76546       <method name="add_window" c:identifier="gtk_window_group_add_window">
76547         <doc xml:whitespace="preserve">Adds a window to a #GtkWindowGroup.</doc>
76548         <return-value transfer-ownership="none">
76549           <type name="none" c:type="void"/>
76550         </return-value>
76551         <parameters>
76552           <parameter name="window" transfer-ownership="none">
76553             <doc xml:whitespace="preserve">the #GtkWindow to add</doc>
76554             <type name="Window" c:type="GtkWindow*"/>
76555           </parameter>
76556         </parameters>
76557       </method>
76558       <method name="get_current_device_grab"
76559               c:identifier="gtk_window_group_get_current_device_grab"
76560               version="3.0"
76561               introspectable="0">
76562         <doc xml:whitespace="preserve">Returns the current grab widget for @device, or %NULL if none.</doc>
76563         <return-value>
76564           <doc xml:whitespace="preserve">The grab widget, or %NULL</doc>
76565           <type name="Widget" c:type="GtkWidget*"/>
76566         </return-value>
76567         <parameters>
76568           <parameter name="device" transfer-ownership="none">
76569             <doc xml:whitespace="preserve">a #GdkDevice</doc>
76570             <type name="Gdk.Device" c:type="GdkDevice*"/>
76571           </parameter>
76572         </parameters>
76573       </method>
76574       <method name="get_current_grab"
76575               c:identifier="gtk_window_group_get_current_grab"
76576               version="2.22"
76577               introspectable="0">
76578         <doc xml:whitespace="preserve">Gets the current grab widget of the given group,
76579 see gtk_grab_add().</doc>
76580         <return-value>
76581           <doc xml:whitespace="preserve">the current grab widget of the group</doc>
76582           <type name="Widget" c:type="GtkWidget*"/>
76583         </return-value>
76584       </method>
76585       <method name="list_windows"
76586               c:identifier="gtk_window_group_list_windows"
76587               version="2.14">
76588         <doc xml:whitespace="preserve">Returns a list of the #GtkWindows that belong to @window_group.
76589 windows inside the group.</doc>
76590         <return-value transfer-ownership="container">
76591           <doc xml:whitespace="preserve">A newly-allocated list of</doc>
76592           <type name="GLib.List" c:type="GList*">
76593             <type name="Widget"/>
76594           </type>
76595         </return-value>
76596       </method>
76597       <method name="remove_window"
76598               c:identifier="gtk_window_group_remove_window">
76599         <doc xml:whitespace="preserve">Removes a window from a #GtkWindowGroup.</doc>
76600         <return-value transfer-ownership="none">
76601           <type name="none" c:type="void"/>
76602         </return-value>
76603         <parameters>
76604           <parameter name="window" transfer-ownership="none">
76605             <doc xml:whitespace="preserve">the #GtkWindow to remove</doc>
76606             <type name="Window" c:type="GtkWindow*"/>
76607           </parameter>
76608         </parameters>
76609       </method>
76610       <field name="parent_instance">
76611         <type name="GObject.Object" c:type="GObject"/>
76612       </field>
76613       <field name="grabs">
76614         <type name="GLib.SList" c:type="GSList*">
76615           <type name="gpointer" c:type="gpointer"/>
76616         </type>
76617       </field>
76618     </class>
76619     <record name="WindowGroupClass"
76620             c:type="GtkWindowGroupClass"
76621             glib:is-gtype-struct-for="WindowGroup">
76622       <field name="parent_class">
76623         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
76624       </field>
76625       <field name="_gtk_reserved1" introspectable="0">
76626         <callback name="_gtk_reserved1">
76627           <return-value transfer-ownership="none">
76628             <type name="none" c:type="void"/>
76629           </return-value>
76630         </callback>
76631       </field>
76632       <field name="_gtk_reserved2" introspectable="0">
76633         <callback name="_gtk_reserved2">
76634           <return-value transfer-ownership="none">
76635             <type name="none" c:type="void"/>
76636           </return-value>
76637         </callback>
76638       </field>
76639       <field name="_gtk_reserved3" introspectable="0">
76640         <callback name="_gtk_reserved3">
76641           <return-value transfer-ownership="none">
76642             <type name="none" c:type="void"/>
76643           </return-value>
76644         </callback>
76645       </field>
76646       <field name="_gtk_reserved4" introspectable="0">
76647         <callback name="_gtk_reserved4">
76648           <return-value transfer-ownership="none">
76649             <type name="none" c:type="void"/>
76650           </return-value>
76651         </callback>
76652       </field>
76653     </record>
76654     <callback name="WindowKeysForeachFunc" c:type="GtkWindowKeysForeachFunc">
76655       <return-value transfer-ownership="none">
76656         <type name="none" c:type="void"/>
76657       </return-value>
76658       <parameters>
76659         <parameter name="window" transfer-ownership="none">
76660           <type name="Window" c:type="GtkWindow*"/>
76661         </parameter>
76662         <parameter name="keyval" transfer-ownership="none">
76663           <type name="guint" c:type="guint"/>
76664         </parameter>
76665         <parameter name="modifiers" transfer-ownership="none">
76666           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
76667         </parameter>
76668         <parameter name="is_mnemonic" transfer-ownership="none">
76669           <type name="gboolean" c:type="gboolean"/>
76670         </parameter>
76671         <parameter name="data" transfer-ownership="none">
76672           <type name="gpointer" c:type="gpointer"/>
76673         </parameter>
76674       </parameters>
76675     </callback>
76676     <enumeration name="WindowPosition"
76677                  glib:type-name="GtkWindowPosition"
76678                  glib:get-type="gtk_window_position_get_type"
76679                  c:type="GtkWindowPosition">
76680       <member name="none"
76681               value="0"
76682               c:identifier="GTK_WIN_POS_NONE"
76683               glib:nick="none"/>
76684       <member name="center"
76685               value="1"
76686               c:identifier="GTK_WIN_POS_CENTER"
76687               glib:nick="center"/>
76688       <member name="mouse"
76689               value="2"
76690               c:identifier="GTK_WIN_POS_MOUSE"
76691               glib:nick="mouse"/>
76692       <member name="center_always"
76693               value="3"
76694               c:identifier="GTK_WIN_POS_CENTER_ALWAYS"
76695               glib:nick="center-always"/>
76696       <member name="center_on_parent"
76697               value="4"
76698               c:identifier="GTK_WIN_POS_CENTER_ON_PARENT"
76699               glib:nick="center-on-parent"/>
76700     </enumeration>
76701     <record name="WindowPrivate" c:type="GtkWindowPrivate" disguised="1">
76702     </record>
76703     <enumeration name="WindowType"
76704                  glib:type-name="GtkWindowType"
76705                  glib:get-type="gtk_window_type_get_type"
76706                  c:type="GtkWindowType">
76707       <member name="toplevel"
76708               value="0"
76709               c:identifier="GTK_WINDOW_TOPLEVEL"
76710               glib:nick="toplevel"/>
76711       <member name="popup"
76712               value="1"
76713               c:identifier="GTK_WINDOW_POPUP"
76714               glib:nick="popup"/>
76715     </enumeration>
76716     <enumeration name="WrapAllocationMode"
76717                  glib:type-name="GtkWrapAllocationMode"
76718                  glib:get-type="gtk_wrap_allocation_mode_get_type"
76719                  c:type="GtkWrapAllocationMode">
76720       <doc xml:whitespace="preserve">Describes how an #GtkWrapBox positions its children.</doc>
76721       <member name="free"
76722               value="0"
76723               c:identifier="GTK_WRAP_ALLOCATE_FREE"
76724               glib:nick="free"/>
76725       <member name="aligned"
76726               value="1"
76727               c:identifier="GTK_WRAP_ALLOCATE_ALIGNED"
76728               glib:nick="aligned"/>
76729       <member name="homogeneous"
76730               value="2"
76731               c:identifier="GTK_WRAP_ALLOCATE_HOMOGENEOUS"
76732               glib:nick="homogeneous"/>
76733     </enumeration>
76734     <class name="WrapBox"
76735            c:symbol-prefix="wrap_box"
76736            c:type="GtkWrapBox"
76737            parent="Container"
76738            glib:type-name="GtkWrapBox"
76739            glib:get-type="gtk_wrap_box_get_type"
76740            glib:type-struct="WrapBoxClass">
76741       <implements name="Atk.ImplementorIface"/>
76742       <implements name="Buildable"/>
76743       <implements name="Orientable"/>
76744       <implements name="SizeRequest"/>
76745       <constructor name="new" c:identifier="gtk_wrap_box_new">
76746         <doc xml:whitespace="preserve">Creates an #GtkWrapBox.</doc>
76747         <return-value transfer-ownership="none">
76748           <doc xml:whitespace="preserve">A new #GtkWrapBox container</doc>
76749           <type name="Widget" c:type="GtkWidget*"/>
76750         </return-value>
76751         <parameters>
76752           <parameter name="mode" transfer-ownership="none">
76753             <doc xml:whitespace="preserve">The #GtkWrapAllocationMode to use</doc>
76754             <type name="WrapAllocationMode" c:type="GtkWrapAllocationMode"/>
76755           </parameter>
76756           <parameter name="horizontal_spreading" transfer-ownership="none">
76757             <doc xml:whitespace="preserve">The horizontal #GtkWrapBoxSpreading policy to use</doc>
76758             <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76759           </parameter>
76760           <parameter name="vertical_spreading" transfer-ownership="none">
76761             <doc xml:whitespace="preserve">The vertical #GtkWrapBoxSpreading policy to use</doc>
76762             <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76763           </parameter>
76764           <parameter name="horizontal_spacing" transfer-ownership="none">
76765             <doc xml:whitespace="preserve">The horizontal spacing to add between children</doc>
76766             <type name="guint" c:type="guint"/>
76767           </parameter>
76768           <parameter name="vertical_spacing" transfer-ownership="none">
76769             <doc xml:whitespace="preserve">The vertical spacing to add between children</doc>
76770             <type name="guint" c:type="guint"/>
76771           </parameter>
76772         </parameters>
76773       </constructor>
76774       <method name="get_allocation_mode"
76775               c:identifier="gtk_wrap_box_get_allocation_mode">
76776         <doc xml:whitespace="preserve">Gets the allocation mode.</doc>
76777         <return-value transfer-ownership="none">
76778           <doc xml:whitespace="preserve">The #GtkWrapAllocationMode for @box.</doc>
76779           <type name="WrapAllocationMode" c:type="GtkWrapAllocationMode"/>
76780         </return-value>
76781       </method>
76782       <method name="get_horizontal_spacing"
76783               c:identifier="gtk_wrap_box_get_horizontal_spacing">
76784         <doc xml:whitespace="preserve">Gets the horizontal spacing.</doc>
76785         <return-value transfer-ownership="none">
76786           <doc xml:whitespace="preserve">The horizontal spacing.</doc>
76787           <type name="guint" c:type="guint"/>
76788         </return-value>
76789       </method>
76790       <method name="get_horizontal_spreading"
76791               c:identifier="gtk_wrap_box_get_horizontal_spreading">
76792         <doc xml:whitespace="preserve">Gets the horizontal spreading mode.</doc>
76793         <return-value transfer-ownership="none">
76794           <doc xml:whitespace="preserve">The horizontal #GtkWrapBoxSpreading for @box.</doc>
76795           <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76796         </return-value>
76797       </method>
76798       <method name="get_minimum_line_children"
76799               c:identifier="gtk_wrap_box_get_minimum_line_children">
76800         <doc xml:whitespace="preserve">Gets the minimum amount of children per line.</doc>
76801         <return-value transfer-ownership="none">
76802           <doc xml:whitespace="preserve">The minimum amount of children per line.</doc>
76803           <type name="guint" c:type="guint"/>
76804         </return-value>
76805       </method>
76806       <method name="get_natural_line_children"
76807               c:identifier="gtk_wrap_box_get_natural_line_children">
76808         <doc xml:whitespace="preserve">Gets the natural amount of children per line.</doc>
76809         <return-value transfer-ownership="none">
76810           <doc xml:whitespace="preserve">The natural amount of children per line.</doc>
76811           <type name="guint" c:type="guint"/>
76812         </return-value>
76813       </method>
76814       <method name="get_vertical_spacing"
76815               c:identifier="gtk_wrap_box_get_vertical_spacing">
76816         <doc xml:whitespace="preserve">Gets the vertical spacing.</doc>
76817         <return-value transfer-ownership="none">
76818           <doc xml:whitespace="preserve">The vertical spacing.</doc>
76819           <type name="guint" c:type="guint"/>
76820         </return-value>
76821       </method>
76822       <method name="get_vertical_spreading"
76823               c:identifier="gtk_wrap_box_get_vertical_spreading">
76824         <doc xml:whitespace="preserve">Gets the vertical spreading mode.</doc>
76825         <return-value transfer-ownership="none">
76826           <doc xml:whitespace="preserve">The vertical #GtkWrapBoxSpreading for @box.</doc>
76827           <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76828         </return-value>
76829       </method>
76830       <method name="insert_child" c:identifier="gtk_wrap_box_insert_child">
76831         <doc xml:whitespace="preserve">Adds a child to an #GtkWrapBox with its packing options set</doc>
76832         <return-value transfer-ownership="none">
76833           <type name="none" c:type="void"/>
76834         </return-value>
76835         <parameters>
76836           <parameter name="widget" transfer-ownership="none">
76837             <doc xml:whitespace="preserve">the child #GtkWidget to add</doc>
76838             <type name="Widget" c:type="GtkWidget*"/>
76839           </parameter>
76840           <parameter name="index" transfer-ownership="none">
76841             <doc xml:whitespace="preserve">the position in the child list to insert, specify -1 to append to the list.</doc>
76842             <type name="gint" c:type="gint"/>
76843           </parameter>
76844           <parameter name="packing" transfer-ownership="none">
76845             <doc xml:whitespace="preserve">The #GtkWrapBoxPacking options to use.</doc>
76846             <type name="WrapBoxPacking" c:type="GtkWrapBoxPacking"/>
76847           </parameter>
76848         </parameters>
76849       </method>
76850       <method name="reorder_child" c:identifier="gtk_wrap_box_reorder_child">
76851         <doc xml:whitespace="preserve">Reorders the child @widget in @box's list of children.</doc>
76852         <return-value transfer-ownership="none">
76853           <type name="none" c:type="void"/>
76854         </return-value>
76855         <parameters>
76856           <parameter name="widget" transfer-ownership="none">
76857             <doc xml:whitespace="preserve">The child to reorder</doc>
76858             <type name="Widget" c:type="GtkWidget*"/>
76859           </parameter>
76860           <parameter name="index" transfer-ownership="none">
76861             <doc xml:whitespace="preserve">The new child position</doc>
76862             <type name="guint" c:type="guint"/>
76863           </parameter>
76864         </parameters>
76865       </method>
76866       <method name="set_allocation_mode"
76867               c:identifier="gtk_wrap_box_set_allocation_mode">
76868         <doc xml:whitespace="preserve">Sets the allocation mode for @box's children.</doc>
76869         <return-value transfer-ownership="none">
76870           <type name="none" c:type="void"/>
76871         </return-value>
76872         <parameters>
76873           <parameter name="mode" transfer-ownership="none">
76874             <doc xml:whitespace="preserve">The #GtkWrapAllocationMode to use.</doc>
76875             <type name="WrapAllocationMode" c:type="GtkWrapAllocationMode"/>
76876           </parameter>
76877         </parameters>
76878       </method>
76879       <method name="set_horizontal_spacing"
76880               c:identifier="gtk_wrap_box_set_horizontal_spacing">
76881         <doc xml:whitespace="preserve">Sets the horizontal space to add between children.</doc>
76882         <return-value transfer-ownership="none">
76883           <type name="none" c:type="void"/>
76884         </return-value>
76885         <parameters>
76886           <parameter name="spacing" transfer-ownership="none">
76887             <doc xml:whitespace="preserve">The spacing to use.</doc>
76888             <type name="guint" c:type="guint"/>
76889           </parameter>
76890         </parameters>
76891       </method>
76892       <method name="set_horizontal_spreading"
76893               c:identifier="gtk_wrap_box_set_horizontal_spreading">
76894         <doc xml:whitespace="preserve">Sets the horizontal spreading mode for @box's children.</doc>
76895         <return-value transfer-ownership="none">
76896           <type name="none" c:type="void"/>
76897         </return-value>
76898         <parameters>
76899           <parameter name="spreading" transfer-ownership="none">
76900             <doc xml:whitespace="preserve">The #GtkWrapBoxSpreading to use.</doc>
76901             <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76902           </parameter>
76903         </parameters>
76904       </method>
76905       <method name="set_minimum_line_children"
76906               c:identifier="gtk_wrap_box_set_minimum_line_children">
76907         <doc xml:whitespace="preserve">Sets the minimum amount of children to line up
76908 in @box's orientation before wrapping.</doc>
76909         <return-value transfer-ownership="none">
76910           <type name="none" c:type="void"/>
76911         </return-value>
76912         <parameters>
76913           <parameter name="n_children" transfer-ownership="none">
76914             <doc xml:whitespace="preserve">The minimum amount of children per line.</doc>
76915             <type name="guint" c:type="guint"/>
76916           </parameter>
76917         </parameters>
76918       </method>
76919       <method name="set_natural_line_children"
76920               c:identifier="gtk_wrap_box_set_natural_line_children">
76921         <doc xml:whitespace="preserve">Sets the natural length of items to request and
76922 allocate space for in @box's orientation.
76923 Setting the natural amount of children per line
76924 limits the overall natural size request to be no more
76925 than @n_children items long in the given orientation.</doc>
76926         <return-value transfer-ownership="none">
76927           <type name="none" c:type="void"/>
76928         </return-value>
76929         <parameters>
76930           <parameter name="n_children" transfer-ownership="none">
76931             <doc xml:whitespace="preserve">The natural amount of children per line.</doc>
76932             <type name="guint" c:type="guint"/>
76933           </parameter>
76934         </parameters>
76935       </method>
76936       <method name="set_vertical_spacing"
76937               c:identifier="gtk_wrap_box_set_vertical_spacing">
76938         <doc xml:whitespace="preserve">Sets the vertical space to add between children.</doc>
76939         <return-value transfer-ownership="none">
76940           <type name="none" c:type="void"/>
76941         </return-value>
76942         <parameters>
76943           <parameter name="spacing" transfer-ownership="none">
76944             <doc xml:whitespace="preserve">The spacing to use.</doc>
76945             <type name="guint" c:type="guint"/>
76946           </parameter>
76947         </parameters>
76948       </method>
76949       <method name="set_vertical_spreading"
76950               c:identifier="gtk_wrap_box_set_vertical_spreading">
76951         <doc xml:whitespace="preserve">Sets the vertical spreading mode for @box's children.</doc>
76952         <return-value transfer-ownership="none">
76953           <type name="none" c:type="void"/>
76954         </return-value>
76955         <parameters>
76956           <parameter name="spreading" transfer-ownership="none">
76957             <doc xml:whitespace="preserve">The #GtkWrapBoxSpreading to use.</doc>
76958             <type name="WrapBoxSpreading" c:type="GtkWrapBoxSpreading"/>
76959           </parameter>
76960         </parameters>
76961       </method>
76962       <property name="allocation-mode" writable="1" transfer-ownership="none">
76963         <doc xml:whitespace="preserve">The #GtkWrapAllocationMode to use.</doc>
76964         <type name="WrapAllocationMode"/>
76965       </property>
76966       <property name="horizontal-spacing"
76967                 writable="1"
76968                 transfer-ownership="none">
76969         <doc xml:whitespace="preserve">The amount of horizontal space between two children.</doc>
76970         <type name="guint"/>
76971       </property>
76972       <property name="horizontal-spreading"
76973                 writable="1"
76974                 transfer-ownership="none">
76975         <doc xml:whitespace="preserve">The #GtkWrapBoxSpreading to used to define what is done with extra
76976 space in a given orientation.</doc>
76977         <type name="WrapBoxSpreading"/>
76978       </property>
76979       <property name="minimum-line-children"
76980                 writable="1"
76981                 transfer-ownership="none">
76982         <doc xml:whitespace="preserve">The minimum number of children to allocate consecutively in the given orientation.
76983 &lt;note&gt;&lt;para&gt;Setting the minimum children per line ensures
76984 that a reasonably small height will be requested
76985 for the overall minimum width of the box.&lt;/para&gt;&lt;/note&gt;</doc>
76986         <type name="guint"/>
76987       </property>
76988       <property name="natural-line-children"
76989                 writable="1"
76990                 transfer-ownership="none">
76991         <doc xml:whitespace="preserve">The maximum amount of children to request space for consecutively in the given orientation.</doc>
76992         <type name="guint"/>
76993       </property>
76994       <property name="vertical-spacing" writable="1" transfer-ownership="none">
76995         <doc xml:whitespace="preserve">The amount of vertical space between two children.</doc>
76996         <type name="guint"/>
76997       </property>
76998       <property name="vertical-spreading"
76999                 writable="1"
77000                 transfer-ownership="none">
77001         <doc xml:whitespace="preserve">The #GtkWrapBoxSpreading to used to define what is done with extra
77002 space in a given orientation.</doc>
77003         <type name="WrapBoxSpreading"/>
77004       </property>
77005       <field name="container">
77006         <type name="Container" c:type="GtkContainer"/>
77007       </field>
77008       <field name="priv">
77009         <type name="WrapBoxPrivate" c:type="GtkWrapBoxPrivate*"/>
77010       </field>
77011     </class>
77012     <record name="WrapBoxClass"
77013             c:type="GtkWrapBoxClass"
77014             glib:is-gtype-struct-for="WrapBox">
77015       <field name="parent_class">
77016         <type name="ContainerClass" c:type="GtkContainerClass"/>
77017       </field>
77018     </record>
77019     <bitfield name="WrapBoxPacking"
77020               glib:type-name="GtkWrapBoxPacking"
77021               glib:get-type="gtk_wrap_box_packing_get_type"
77022               c:type="GtkWrapBoxPacking">
77023       <doc xml:whitespace="preserve">Specifies how widgets will expand vertically and
77024 horizontally when placed inside a #GtkWrapBox.</doc>
77025       <member name="h_expand"
77026               value="1"
77027               c:identifier="GTK_WRAP_BOX_H_EXPAND"
77028               glib:nick="h-expand"/>
77029       <member name="v_expand"
77030               value="2"
77031               c:identifier="GTK_WRAP_BOX_V_EXPAND"
77032               glib:nick="v-expand"/>
77033     </bitfield>
77034     <record name="WrapBoxPrivate" c:type="GtkWrapBoxPrivate" disguised="1">
77035     </record>
77036     <enumeration name="WrapBoxSpreading"
77037                  glib:type-name="GtkWrapBoxSpreading"
77038                  glib:get-type="gtk_wrap_box_spreading_get_type"
77039                  c:type="GtkWrapBoxSpreading">
77040       <doc xml:whitespace="preserve">Describes how a #GtkWrapBox deals with extra space in a given orientation when allocating children.</doc>
77041       <member name="start"
77042               value="0"
77043               c:identifier="GTK_WRAP_BOX_SPREAD_START"
77044               glib:nick="start"/>
77045       <member name="end"
77046               value="1"
77047               c:identifier="GTK_WRAP_BOX_SPREAD_END"
77048               glib:nick="end"/>
77049       <member name="even"
77050               value="2"
77051               c:identifier="GTK_WRAP_BOX_SPREAD_EVEN"
77052               glib:nick="even"/>
77053       <member name="expand"
77054               value="3"
77055               c:identifier="GTK_WRAP_BOX_SPREAD_EXPAND"
77056               glib:nick="expand"/>
77057     </enumeration>
77058     <enumeration name="WrapMode"
77059                  glib:type-name="GtkWrapMode"
77060                  glib:get-type="gtk_wrap_mode_get_type"
77061                  c:type="GtkWrapMode">
77062       <member name="none"
77063               value="0"
77064               c:identifier="GTK_WRAP_NONE"
77065               glib:nick="none"/>
77066       <member name="char"
77067               value="1"
77068               c:identifier="GTK_WRAP_CHAR"
77069               glib:nick="char"/>
77070       <member name="word"
77071               value="2"
77072               c:identifier="GTK_WRAP_WORD"
77073               glib:nick="word"/>
77074       <member name="word_char"
77075               value="3"
77076               c:identifier="GTK_WRAP_WORD_CHAR"
77077               glib:nick="word-char"/>
77078     </enumeration>
77079     <function name="accel_groups_activate"
77080               c:identifier="gtk_accel_groups_activate">
77081       <doc xml:whitespace="preserve">Finds the first accelerator in any #GtkAccelGroup attached
77082 to @object that matches @accel_key and @accel_mods, and
77083 activates that accelerator.</doc>
77084       <return-value transfer-ownership="none">
77085         <doc xml:whitespace="preserve">%TRUE if an accelerator was activated and handled this keypress</doc>
77086         <type name="gboolean" c:type="gboolean"/>
77087       </return-value>
77088       <parameters>
77089         <parameter name="object" transfer-ownership="none">
77090           <doc xml:whitespace="preserve">the #GObject, usually a #GtkWindow, on which to activate the accelerator.</doc>
77091           <type name="GObject.Object" c:type="GObject*"/>
77092         </parameter>
77093         <parameter name="accel_key" transfer-ownership="none">
77094           <doc xml:whitespace="preserve">accelerator keyval from a key event</doc>
77095           <type name="guint" c:type="guint"/>
77096         </parameter>
77097         <parameter name="accel_mods" transfer-ownership="none">
77098           <doc xml:whitespace="preserve">keyboard state mask from a key event</doc>
77099           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77100         </parameter>
77101       </parameters>
77102     </function>
77103     <function name="accel_groups_from_object"
77104               c:identifier="gtk_accel_groups_from_object">
77105       <doc xml:whitespace="preserve">Gets a list of all accel groups which are attached to @object.</doc>
77106       <return-value transfer-ownership="none">
77107         <doc xml:whitespace="preserve">a list of all accel groups which are attached to @object</doc>
77108         <type name="GLib.SList" c:type="GSList*">
77109           <type name="AccelGroup"/>
77110         </type>
77111       </return-value>
77112       <parameters>
77113         <parameter name="object" transfer-ownership="none">
77114           <doc xml:whitespace="preserve">a #GObject, usually a #GtkWindow</doc>
77115           <type name="GObject.Object" c:type="GObject*"/>
77116         </parameter>
77117       </parameters>
77118     </function>
77119     <function name="accelerator_get_default_mod_mask"
77120               c:identifier="gtk_accelerator_get_default_mod_mask">
77121       <doc xml:whitespace="preserve">Gets the value set by gtk_accelerator_set_default_mod_mask().</doc>
77122       <return-value transfer-ownership="none">
77123         <doc xml:whitespace="preserve">the default accelerator modifier mask</doc>
77124         <type name="guint" c:type="guint"/>
77125       </return-value>
77126     </function>
77127     <function name="accelerator_get_label"
77128               c:identifier="gtk_accelerator_get_label"
77129               version="2.6">
77130       <doc xml:whitespace="preserve">Converts an accelerator keyval and modifier mask into a string 
77131 which can be used to represent the accelerator to the user.</doc>
77132       <return-value transfer-ownership="full">
77133         <doc xml:whitespace="preserve">a newly-allocated string representing the accelerator.</doc>
77134         <type name="utf8" c:type="gchar*"/>
77135       </return-value>
77136       <parameters>
77137         <parameter name="accelerator_key" transfer-ownership="none">
77138           <doc xml:whitespace="preserve">accelerator keyval</doc>
77139           <type name="guint" c:type="guint"/>
77140         </parameter>
77141         <parameter name="accelerator_mods" transfer-ownership="none">
77142           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
77143           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77144         </parameter>
77145       </parameters>
77146     </function>
77147     <function name="accelerator_name" c:identifier="gtk_accelerator_name">
77148       <doc xml:whitespace="preserve">Converts an accelerator keyval and modifier mask
77149 into a string parseable by gtk_accelerator_parse().
77150 For example, if you pass in #GDK_q and #GDK_CONTROL_MASK,
77151 this function returns "&amp;lt;Control&amp;gt;q". 
77152 If you need to display accelerators in the user interface,
77153 see gtk_accelerator_get_label().</doc>
77154       <return-value transfer-ownership="full">
77155         <doc xml:whitespace="preserve">a newly-allocated accelerator name</doc>
77156         <type name="utf8" c:type="gchar*"/>
77157       </return-value>
77158       <parameters>
77159         <parameter name="accelerator_key" transfer-ownership="none">
77160           <doc xml:whitespace="preserve">accelerator keyval</doc>
77161           <type name="guint" c:type="guint"/>
77162         </parameter>
77163         <parameter name="accelerator_mods" transfer-ownership="none">
77164           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
77165           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77166         </parameter>
77167       </parameters>
77168     </function>
77169     <function name="accelerator_parse" c:identifier="gtk_accelerator_parse">
77170       <doc xml:whitespace="preserve">Parses a string representing an accelerator. The
77171 format looks like "&amp;lt;Control&amp;gt;a" or "&amp;lt;Shift&amp;gt;&amp;lt;Alt&amp;gt;F1" or
77172 "&amp;lt;Release&amp;gt;z" (the last one is for key release).
77173 The parser is fairly liberal and allows lower or upper case,
77174 and also abbreviations such as "&amp;lt;Ctl&amp;gt;" and "&amp;lt;Ctrl&amp;gt;".
77175 Key names are parsed using gdk_keyval_from_name(). For character keys the
77176 name is not the symbol, but the lowercase name, e.g. one would use
77177 "&amp;lt;Ctrl&amp;gt;minus" instead of "&amp;lt;Ctrl&amp;gt;-".
77178 If the parse fails, @accelerator_key and @accelerator_mods will
77179 be set to 0 (zero).</doc>
77180       <return-value transfer-ownership="none">
77181         <type name="none" c:type="void"/>
77182       </return-value>
77183       <parameters>
77184         <parameter name="accelerator" transfer-ownership="none">
77185           <doc xml:whitespace="preserve">string representing an accelerator</doc>
77186           <type name="utf8" c:type="gchar*"/>
77187         </parameter>
77188         <parameter name="accelerator_key" transfer-ownership="none">
77189           <doc xml:whitespace="preserve">return location for accelerator keyval</doc>
77190           <type name="guint" c:type="guint*"/>
77191         </parameter>
77192         <parameter name="accelerator_mods" transfer-ownership="none">
77193           <doc xml:whitespace="preserve">return location for accelerator modifier mask</doc>
77194           <type name="Gdk.ModifierType" c:type="GdkModifierType*"/>
77195         </parameter>
77196       </parameters>
77197     </function>
77198     <function name="accelerator_set_default_mod_mask"
77199               c:identifier="gtk_accelerator_set_default_mod_mask">
77200       <doc xml:whitespace="preserve">Sets the modifiers that will be considered significant for keyboard
77201 accelerators. The default mod mask is #GDK_CONTROL_MASK |
77202 #GDK_SHIFT_MASK | #GDK_MOD1_MASK | #GDK_SUPER_MASK | 
77203 #GDK_HYPER_MASK | #GDK_META_MASK, that is, Control, Shift, Alt, 
77204 Super, Hyper and Meta. Other modifiers will by default be ignored 
77205 by #GtkAccelGroup.
77206 You must include at least the three modifiers Control, Shift
77207 and Alt in any value you pass to this function.
77208 The default mod mask should be changed on application startup,
77209 before using any accelerator groups.</doc>
77210       <return-value transfer-ownership="none">
77211         <type name="none" c:type="void"/>
77212       </return-value>
77213       <parameters>
77214         <parameter name="default_mod_mask" transfer-ownership="none">
77215           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
77216           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77217         </parameter>
77218       </parameters>
77219     </function>
77220     <function name="accelerator_valid" c:identifier="gtk_accelerator_valid">
77221       <doc xml:whitespace="preserve">Determines whether a given keyval and modifier mask constitute
77222 a valid keyboard accelerator. For example, the #GDK_a keyval
77223 plus #GDK_CONTROL_MASK is valid - this is a "Ctrl+a" accelerator.
77224 But, you can't, for instance, use the #GDK_Control_L keyval
77225 as an accelerator.</doc>
77226       <return-value transfer-ownership="none">
77227         <doc xml:whitespace="preserve">%TRUE if the accelerator is valid</doc>
77228         <type name="gboolean" c:type="gboolean"/>
77229       </return-value>
77230       <parameters>
77231         <parameter name="keyval" transfer-ownership="none">
77232           <doc xml:whitespace="preserve">a GDK keyval</doc>
77233           <type name="guint" c:type="guint"/>
77234         </parameter>
77235         <parameter name="modifiers" transfer-ownership="none">
77236           <doc xml:whitespace="preserve">modifier mask</doc>
77237           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77238         </parameter>
77239       </parameters>
77240     </function>
77241     <function name="alternative_dialog_button_order"
77242               c:identifier="gtk_alternative_dialog_button_order"
77243               version="2.6">
77244       <doc xml:whitespace="preserve">Returns %TRUE if dialogs are expected to use an alternative
77245 button order on the screen @screen. See
77246 gtk_dialog_set_alternative_button_order() for more details
77247 about alternative button order. 
77248 If you need to use this function, you should probably connect
77249 to the ::notify:gtk-alternative-button-order signal on the
77250 #GtkSettings object associated to @screen, in order to be 
77251 notified if the button order setting changes.</doc>
77252       <return-value transfer-ownership="none">
77253         <doc xml:whitespace="preserve">Whether the alternative button order should be used</doc>
77254         <type name="gboolean" c:type="gboolean"/>
77255       </return-value>
77256       <parameters>
77257         <parameter name="screen" transfer-ownership="none" allow-none="1">
77258           <doc xml:whitespace="preserve">a #GdkScreen, or %NULL to use the default screen</doc>
77259           <type name="Gdk.Screen" c:type="GdkScreen*"/>
77260         </parameter>
77261       </parameters>
77262     </function>
77263     <function name="binding_entry_add_signal"
77264               c:identifier="gtk_binding_entry_add_signal"
77265               introspectable="0">
77266       <doc xml:whitespace="preserve">Override or install a new key binding for @keyval with @modifiers on
77267 emitted on the target widget, with @n_args @Varargs used as
77268 arguments.</doc>
77269       <return-value transfer-ownership="none">
77270         <type name="none" c:type="void"/>
77271       </return-value>
77272       <parameters>
77273         <parameter name="binding_set" transfer-ownership="none">
77274           <doc xml:whitespace="preserve">a #GtkBindingSet to install an entry for</doc>
77275           <type name="BindingSet" c:type="GtkBindingSet*"/>
77276         </parameter>
77277         <parameter name="keyval" transfer-ownership="none">
77278           <doc xml:whitespace="preserve">key value of binding to install</doc>
77279           <type name="guint" c:type="guint"/>
77280         </parameter>
77281         <parameter name="modifiers" transfer-ownership="none">
77282           <doc xml:whitespace="preserve">key modifier of binding to install</doc>
77283           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77284         </parameter>
77285         <parameter name="signal_name" transfer-ownership="none">
77286           <doc xml:whitespace="preserve">signal to execute upon activation</doc>
77287           <type name="utf8" c:type="gchar*"/>
77288         </parameter>
77289         <parameter name="n_args" transfer-ownership="none">
77290           <doc xml:whitespace="preserve">number of arguments to @signal_name</doc>
77291           <type name="guint" c:type="guint"/>
77292         </parameter>
77293         <parameter transfer-ownership="none">
77294           <varargs>
77295           </varargs>
77296         </parameter>
77297       </parameters>
77298     </function>
77299     <function name="binding_entry_add_signall"
77300               c:identifier="gtk_binding_entry_add_signall">
77301       <doc xml:whitespace="preserve">Override or install a new key binding for @keyval with @modifiers on</doc>
77302       <return-value transfer-ownership="none">
77303         <type name="none" c:type="void"/>
77304       </return-value>
77305       <parameters>
77306         <parameter name="binding_set" transfer-ownership="none">
77307           <doc xml:whitespace="preserve">a #GtkBindingSet to add a signal to</doc>
77308           <type name="BindingSet" c:type="GtkBindingSet*"/>
77309         </parameter>
77310         <parameter name="keyval" transfer-ownership="none">
77311           <doc xml:whitespace="preserve">key value</doc>
77312           <type name="guint" c:type="guint"/>
77313         </parameter>
77314         <parameter name="modifiers" transfer-ownership="none">
77315           <doc xml:whitespace="preserve">key modifier</doc>
77316           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77317         </parameter>
77318         <parameter name="signal_name" transfer-ownership="none">
77319           <doc xml:whitespace="preserve">signal name to be bound</doc>
77320           <type name="utf8" c:type="gchar*"/>
77321         </parameter>
77322         <parameter name="binding_args" transfer-ownership="none">
77323           <doc xml:whitespace="preserve">list of #GtkBindingArg signal arguments</doc>
77324           <type name="GLib.SList" c:type="GSList*">
77325             <type name="BindingArg"/>
77326           </type>
77327         </parameter>
77328       </parameters>
77329     </function>
77330     <function name="binding_entry_remove"
77331               c:identifier="gtk_binding_entry_remove">
77332       <doc xml:whitespace="preserve">Remove a binding previously installed via
77333 gtk_binding_entry_add_signal() on @binding_set.</doc>
77334       <return-value transfer-ownership="none">
77335         <type name="none" c:type="void"/>
77336       </return-value>
77337       <parameters>
77338         <parameter name="binding_set" transfer-ownership="none">
77339           <doc xml:whitespace="preserve">a #GtkBindingSet to remove an entry of</doc>
77340           <type name="BindingSet" c:type="GtkBindingSet*"/>
77341         </parameter>
77342         <parameter name="keyval" transfer-ownership="none">
77343           <doc xml:whitespace="preserve">key value of binding to remove</doc>
77344           <type name="guint" c:type="guint"/>
77345         </parameter>
77346         <parameter name="modifiers" transfer-ownership="none">
77347           <doc xml:whitespace="preserve">key modifier of binding to remove</doc>
77348           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77349         </parameter>
77350       </parameters>
77351     </function>
77352     <function name="binding_entry_skip"
77353               c:identifier="gtk_binding_entry_skip"
77354               version="2.12">
77355       <doc xml:whitespace="preserve">Install a binding on @binding_set which causes key lookups
77356 to be aborted, to prevent bindings from lower priority sets
77357 to be activated.</doc>
77358       <return-value transfer-ownership="none">
77359         <type name="none" c:type="void"/>
77360       </return-value>
77361       <parameters>
77362         <parameter name="binding_set" transfer-ownership="none">
77363           <doc xml:whitespace="preserve">a #GtkBindingSet to skip an entry of</doc>
77364           <type name="BindingSet" c:type="GtkBindingSet*"/>
77365         </parameter>
77366         <parameter name="keyval" transfer-ownership="none">
77367           <doc xml:whitespace="preserve">key value of binding to skip</doc>
77368           <type name="guint" c:type="guint"/>
77369         </parameter>
77370         <parameter name="modifiers" transfer-ownership="none">
77371           <doc xml:whitespace="preserve">key modifier of binding to skip</doc>
77372           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77373         </parameter>
77374       </parameters>
77375     </function>
77376     <function name="binding_set_by_class"
77377               c:identifier="gtk_binding_set_by_class"
77378               introspectable="0">
77379       <doc xml:whitespace="preserve">This function returns the binding set named after the type name of
77380 the passed in class structure. New binding sets are created on
77381 demand by this function.</doc>
77382       <return-value>
77383         <doc xml:whitespace="preserve">the binding set corresponding to @object_class</doc>
77384         <type name="BindingSet" c:type="GtkBindingSet*"/>
77385       </return-value>
77386       <parameters>
77387         <parameter name="object_class" transfer-ownership="none">
77388           <doc xml:whitespace="preserve">a valid #GtkObject class</doc>
77389           <type name="gpointer" c:type="gpointer"/>
77390         </parameter>
77391       </parameters>
77392     </function>
77393     <function name="binding_set_find"
77394               c:identifier="gtk_binding_set_find"
77395               introspectable="0">
77396       <doc xml:whitespace="preserve">Find a binding set by its globally unique name. The @set_name can
77397 either be a name used for gtk_binding_set_new() or the type name of
77398 a class used in gtk_binding_set_by_class().</doc>
77399       <return-value>
77400         <doc xml:whitespace="preserve">%NULL or the specified binding set</doc>
77401         <type name="BindingSet" c:type="GtkBindingSet*"/>
77402       </return-value>
77403       <parameters>
77404         <parameter name="set_name" transfer-ownership="none">
77405           <doc xml:whitespace="preserve">unique binding set name</doc>
77406           <type name="utf8" c:type="gchar*"/>
77407         </parameter>
77408       </parameters>
77409     </function>
77410     <function name="binding_set_new"
77411               c:identifier="gtk_binding_set_new"
77412               introspectable="0">
77413       <doc xml:whitespace="preserve">GTK+ maintains a global list of binding sets. Each binding set has
77414 a unique name which needs to be specified upon creation.</doc>
77415       <return-value>
77416         <doc xml:whitespace="preserve">new binding set</doc>
77417         <type name="BindingSet" c:type="GtkBindingSet*"/>
77418       </return-value>
77419       <parameters>
77420         <parameter name="set_name" transfer-ownership="none">
77421           <doc xml:whitespace="preserve">unique name of this binding set</doc>
77422           <type name="utf8" c:type="gchar*"/>
77423         </parameter>
77424       </parameters>
77425     </function>
77426     <function name="bindings_activate" c:identifier="gtk_bindings_activate">
77427       <doc xml:whitespace="preserve">Find a key binding matching @keyval and @modifiers and activate the
77428 binding on @object.</doc>
77429       <return-value transfer-ownership="none">
77430         <doc xml:whitespace="preserve">%TRUE if a binding was found and activated</doc>
77431         <type name="gboolean" c:type="gboolean"/>
77432       </return-value>
77433       <parameters>
77434         <parameter name="object" transfer-ownership="none">
77435           <doc xml:whitespace="preserve">object to activate when binding found</doc>
77436           <type name="Object" c:type="GtkObject*"/>
77437         </parameter>
77438         <parameter name="keyval" transfer-ownership="none">
77439           <doc xml:whitespace="preserve">key value of the binding</doc>
77440           <type name="guint" c:type="guint"/>
77441         </parameter>
77442         <parameter name="modifiers" transfer-ownership="none">
77443           <doc xml:whitespace="preserve">key modifier of the binding</doc>
77444           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
77445         </parameter>
77446       </parameters>
77447     </function>
77448     <function name="bindings_activate_event"
77449               c:identifier="gtk_bindings_activate_event"
77450               version="2.4">
77451       <doc xml:whitespace="preserve">Looks up key bindings for @object to find one matching</doc>
77452       <return-value transfer-ownership="none">
77453         <doc xml:whitespace="preserve">%TRUE if a matching key binding was found</doc>
77454         <type name="gboolean" c:type="gboolean"/>
77455       </return-value>
77456       <parameters>
77457         <parameter name="object" transfer-ownership="none">
77458           <doc xml:whitespace="preserve">a #GtkObject (generally must be a widget)</doc>
77459           <type name="Object" c:type="GtkObject*"/>
77460         </parameter>
77461         <parameter name="event" transfer-ownership="none">
77462           <doc xml:whitespace="preserve">a #GdkEventKey</doc>
77463           <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
77464         </parameter>
77465       </parameters>
77466     </function>
77467     <function name="builder_error_quark"
77468               c:identifier="gtk_builder_error_quark">
77469       <return-value transfer-ownership="none">
77470         <type name="GLib.Quark" c:type="GQuark"/>
77471       </return-value>
77472     </function>
77473     <function name="check_version" c:identifier="gtk_check_version">
77474       <doc xml:whitespace="preserve">Checks that the GTK+ library in use is compatible with the
77475 given version. Generally you would pass in the constants
77476 #GTK_MAJOR_VERSION, #GTK_MINOR_VERSION, #GTK_MICRO_VERSION
77477 as the three arguments to this function; that produces
77478 a check that the library in use is compatible with
77479 the version of GTK+ the application or module was compiled
77480 against.
77481 of the running library is newer than the version
77482 the running library must be binary compatible with the
77483 version @required_major.required_minor.@required_micro
77484 (same major version.)
77485 This function is primarily for GTK+ modules; the module
77486 can call this function to check that it wasn't loaded
77487 into an incompatible version of GTK+. However, such a
77488 check isn't completely reliable, since the module may be
77489 linked against an old version of GTK+ and calling the
77490 old version of gtk_check_version(), but still get loaded
77491 into an application using a newer version of GTK+.
77492 given version, or a string describing the version mismatch.
77493 The returned string is owned by GTK+ and should not be modified
77494 or freed.</doc>
77495       <return-value transfer-ownership="none">
77496         <doc xml:whitespace="preserve">%NULL if the GTK+ library is compatible with the</doc>
77497         <type name="utf8" c:type="gchar*"/>
77498       </return-value>
77499       <parameters>
77500         <parameter name="required_major" transfer-ownership="none">
77501           <doc xml:whitespace="preserve">the required major version.</doc>
77502           <type name="guint" c:type="guint"/>
77503         </parameter>
77504         <parameter name="required_minor" transfer-ownership="none">
77505           <doc xml:whitespace="preserve">the required minor version.</doc>
77506           <type name="guint" c:type="guint"/>
77507         </parameter>
77508         <parameter name="required_micro" transfer-ownership="none">
77509           <doc xml:whitespace="preserve">the required micro version.</doc>
77510           <type name="guint" c:type="guint"/>
77511         </parameter>
77512       </parameters>
77513     </function>
77514     <function name="container_class_find_child_property"
77515               c:identifier="gtk_container_class_find_child_property"
77516               introspectable="0">
77517       <doc xml:whitespace="preserve">Finds a child property of a container class by name.</doc>
77518       <return-value>
77519         <doc xml:whitespace="preserve">the #GParamSpec of the child property or %NULL if @class has no child property with that name.</doc>
77520         <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
77521       </return-value>
77522       <parameters>
77523         <parameter name="cclass" transfer-ownership="none">
77524           <doc xml:whitespace="preserve">a #GtkContainerClass</doc>
77525           <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
77526         </parameter>
77527         <parameter name="property_name" transfer-ownership="none">
77528           <doc xml:whitespace="preserve">the name of the child property to find</doc>
77529           <type name="utf8" c:type="gchar*"/>
77530         </parameter>
77531       </parameters>
77532     </function>
77533     <function name="container_class_list_child_properties"
77534               c:identifier="gtk_container_class_list_child_properties"
77535               introspectable="0">
77536       <doc xml:whitespace="preserve">Returns all child properties of a container class.</doc>
77537       <return-value>
77538         <doc xml:whitespace="preserve">a newly allocated %NULL-terminated array of #GParamSpec*. The array must be freed with g_free().</doc>
77539         <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
77540       </return-value>
77541       <parameters>
77542         <parameter name="cclass" transfer-ownership="none">
77543           <doc xml:whitespace="preserve">a #GtkContainerClass</doc>
77544           <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
77545         </parameter>
77546         <parameter name="n_properties" transfer-ownership="none">
77547           <doc xml:whitespace="preserve">location to return the number of child properties found</doc>
77548           <type name="guint" c:type="guint*"/>
77549         </parameter>
77550       </parameters>
77551     </function>
77552     <function name="device_grab_add"
77553               c:identifier="gtk_device_grab_add"
77554               version="3.0">
77555       <doc xml:whitespace="preserve">Adds a GTK+ grab on @device, so all the events on @device and its
77556 associated pointer or keyboard (if any) are delivered to @widget.
77557 If the @block_others parameter is %TRUE, any other devices will be
77558 unable to interact with @widget during the grab.</doc>
77559       <return-value transfer-ownership="none">
77560         <type name="none" c:type="void"/>
77561       </return-value>
77562       <parameters>
77563         <parameter name="widget" transfer-ownership="none">
77564           <doc xml:whitespace="preserve">a #GtkWidget</doc>
77565           <type name="Widget" c:type="GtkWidget*"/>
77566         </parameter>
77567         <parameter name="device" transfer-ownership="none">
77568           <doc xml:whitespace="preserve">a #GtkDevice to grab on.</doc>
77569           <type name="Gdk.Device" c:type="GdkDevice*"/>
77570         </parameter>
77571         <parameter name="block_others" transfer-ownership="none">
77572           <doc xml:whitespace="preserve">%TRUE to prevent other devices to interact with @widget.</doc>
77573           <type name="gboolean" c:type="gboolean"/>
77574         </parameter>
77575       </parameters>
77576     </function>
77577     <function name="device_grab_remove"
77578               c:identifier="gtk_device_grab_remove"
77579               version="3.0">
77580       <doc xml:whitespace="preserve">Removes a device grab from the given widget. You have to pair calls
77581 to gtk_device_grab_add() and gtk_device_grab_remove().</doc>
77582       <return-value transfer-ownership="none">
77583         <type name="none" c:type="void"/>
77584       </return-value>
77585       <parameters>
77586         <parameter name="widget" transfer-ownership="none">
77587           <doc xml:whitespace="preserve">a #GtkWidget</doc>
77588           <type name="Widget" c:type="GtkWidget*"/>
77589         </parameter>
77590         <parameter name="device" transfer-ownership="none">
77591           <doc xml:whitespace="preserve">a #GdkDevice</doc>
77592           <type name="Gdk.Device" c:type="GdkDevice*"/>
77593         </parameter>
77594       </parameters>
77595     </function>
77596     <function name="disable_setlocale" c:identifier="gtk_disable_setlocale">
77597       <doc xml:whitespace="preserve">Prevents gtk_init(), gtk_init_check(), gtk_init_with_args() and
77598 gtk_parse_args() from automatically
77599 calling &lt;literal&gt;setlocale (LC_ALL, "")&lt;/literal&gt;. You would 
77600 want to use this function if you wanted to set the locale for 
77601 your program to something other than the user's locale, or if 
77602 you wanted to set different values for different locale categories.
77603 Most programs should not need to call this function.</doc>
77604       <return-value transfer-ownership="none">
77605         <type name="none" c:type="void"/>
77606       </return-value>
77607     </function>
77608     <function name="distribute_natural_allocation"
77609               c:identifier="gtk_distribute_natural_allocation">
77610       <doc xml:whitespace="preserve">Distributes @extra_space to child @sizes by bringing up smaller
77611 children up to natural size first.
77612 The remaining space will be added to the @minimum_size member of the
77613 GtkRequestedSize struct. If all sizes reach their natural size then
77614 the remaining space is returned.
77615 to @sizes.</doc>
77616       <return-value transfer-ownership="none">
77617         <doc xml:whitespace="preserve">The remainder of @extra_space after redistributing space</doc>
77618         <type name="gint" c:type="gint"/>
77619       </return-value>
77620       <parameters>
77621         <parameter name="extra_space" transfer-ownership="none">
77622           <doc xml:whitespace="preserve">Extra space to redistribute among children after subtracting minimum sizes and any child padding from the overall allocation</doc>
77623           <type name="gint" c:type="gint"/>
77624         </parameter>
77625         <parameter name="n_requested_sizes" transfer-ownership="none">
77626           <doc xml:whitespace="preserve">Number of requests to fit into the allocation</doc>
77627           <type name="guint" c:type="guint"/>
77628         </parameter>
77629         <parameter name="sizes" transfer-ownership="none">
77630           <doc xml:whitespace="preserve">An array of structs with a client pointer and a minimum/natural size in the orientation of the allocation.</doc>
77631           <type name="RequestedSize" c:type="GtkRequestedSize*"/>
77632         </parameter>
77633       </parameters>
77634     </function>
77635     <function name="drag_begin"
77636               c:identifier="gtk_drag_begin"
77637               introspectable="0">
77638       <doc xml:whitespace="preserve">Initiates a drag on the source side. The function
77639 only needs to be used when the application is
77640 starting drags itself, and is not needed when
77641 gtk_drag_source_set() is used.
77642 The @event is used to retrieve the timestamp that will be used internally to
77643 grab the pointer.  If @event is #NULL, then GDK_CURRENT_TIME will be used.
77644 However, you should try to pass a real event in all cases, since that can be
77645 used by GTK+ to get information about the start position of the drag, for
77646 example if the @event is a GDK_MOTION_NOTIFY.
77647 Generally there are three cases when you want to start a drag by hand by
77648 calling this function:
77649 1. During a button-press-event handler, if you want to start a drag
77650 immediately when the user presses the mouse button.  Pass the @event
77651 that you have in your button-press-event handler.
77652 2. During a motion-notify-event handler, if you want to start a drag
77653 when the mouse moves past a certain threshold distance after a button-press.
77654 Pass the @event that you have in your motion-notify-event handler.
77655 3. During a timeout handler, if you want to start a drag after the mouse
77656 button is held down for some time.  Try to save the last event that you got
77657 from the mouse, using gdk_event_copy(), and pass it to this function
77658 (remember to free the event with gdk_event_free() when you are done).
77659 If you can really not pass a real event, pass #NULL instead.</doc>
77660       <return-value>
77661         <doc xml:whitespace="preserve">the context for this drag.</doc>
77662         <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
77663       </return-value>
77664       <parameters>
77665         <parameter name="widget" transfer-ownership="none">
77666           <doc xml:whitespace="preserve">the source widget.</doc>
77667           <type name="Widget" c:type="GtkWidget*"/>
77668         </parameter>
77669         <parameter name="targets" transfer-ownership="none">
77670           <doc xml:whitespace="preserve">The targets (data formats) in which the source can provide the data.</doc>
77671           <type name="TargetList" c:type="GtkTargetList*"/>
77672         </parameter>
77673         <parameter name="actions" transfer-ownership="none">
77674           <doc xml:whitespace="preserve">A bitmask of the allowed drag actions for this drag.</doc>
77675           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
77676         </parameter>
77677         <parameter name="button" transfer-ownership="none">
77678           <doc xml:whitespace="preserve">The button the user clicked to start the drag.</doc>
77679           <type name="gint" c:type="gint"/>
77680         </parameter>
77681         <parameter name="event" transfer-ownership="none">
77682           <doc xml:whitespace="preserve">The event that triggered the start of the drag.</doc>
77683           <type name="Gdk.Event" c:type="GdkEvent*"/>
77684         </parameter>
77685       </parameters>
77686     </function>
77687     <function name="drag_check_threshold"
77688               c:identifier="gtk_drag_check_threshold">
77689       <doc xml:whitespace="preserve">Checks to see if a mouse drag starting at (@start_x, @start_y) and ending
77690 at (@current_x, @current_y) has passed the GTK+ drag threshold, and thus
77691 should trigger the beginning of a drag-and-drop operation.</doc>
77692       <return-value transfer-ownership="none">
77693         <doc xml:whitespace="preserve">%TRUE if the drag threshold has been passed.</doc>
77694         <type name="gboolean" c:type="gboolean"/>
77695       </return-value>
77696       <parameters>
77697         <parameter name="widget" transfer-ownership="none">
77698           <doc xml:whitespace="preserve">a #GtkWidget</doc>
77699           <type name="Widget" c:type="GtkWidget*"/>
77700         </parameter>
77701         <parameter name="start_x" transfer-ownership="none">
77702           <doc xml:whitespace="preserve">X coordinate of start of drag</doc>
77703           <type name="gint" c:type="gint"/>
77704         </parameter>
77705         <parameter name="start_y" transfer-ownership="none">
77706           <doc xml:whitespace="preserve">Y coordinate of start of drag</doc>
77707           <type name="gint" c:type="gint"/>
77708         </parameter>
77709         <parameter name="current_x" transfer-ownership="none">
77710           <doc xml:whitespace="preserve">current X coordinate</doc>
77711           <type name="gint" c:type="gint"/>
77712         </parameter>
77713         <parameter name="current_y" transfer-ownership="none">
77714           <doc xml:whitespace="preserve">current Y coordinate</doc>
77715           <type name="gint" c:type="gint"/>
77716         </parameter>
77717       </parameters>
77718     </function>
77719     <function name="drag_dest_add_image_targets"
77720               c:identifier="gtk_drag_dest_add_image_targets"
77721               version="2.6">
77722       <doc xml:whitespace="preserve">Add the image targets supported by #GtkSelection to
77723 the target list of the drag destination. The targets
77724 are added with @info = 0. If you need another value, 
77725 use gtk_target_list_add_image_targets() and
77726 gtk_drag_dest_set_target_list().</doc>
77727       <return-value transfer-ownership="none">
77728         <type name="none" c:type="void"/>
77729       </return-value>
77730       <parameters>
77731         <parameter name="widget" transfer-ownership="none">
77732           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77733           <type name="Widget" c:type="GtkWidget*"/>
77734         </parameter>
77735       </parameters>
77736     </function>
77737     <function name="drag_dest_add_text_targets"
77738               c:identifier="gtk_drag_dest_add_text_targets"
77739               version="2.6">
77740       <doc xml:whitespace="preserve">Add the text targets supported by #GtkSelection to
77741 the target list of the drag destination. The targets
77742 are added with @info = 0. If you need another value, 
77743 use gtk_target_list_add_text_targets() and
77744 gtk_drag_dest_set_target_list().</doc>
77745       <return-value transfer-ownership="none">
77746         <type name="none" c:type="void"/>
77747       </return-value>
77748       <parameters>
77749         <parameter name="widget" transfer-ownership="none">
77750           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77751           <type name="Widget" c:type="GtkWidget*"/>
77752         </parameter>
77753       </parameters>
77754     </function>
77755     <function name="drag_dest_add_uri_targets"
77756               c:identifier="gtk_drag_dest_add_uri_targets"
77757               version="2.6">
77758       <doc xml:whitespace="preserve">Add the URI targets supported by #GtkSelection to
77759 the target list of the drag destination. The targets
77760 are added with @info = 0. If you need another value, 
77761 use gtk_target_list_add_uri_targets() and
77762 gtk_drag_dest_set_target_list().</doc>
77763       <return-value transfer-ownership="none">
77764         <type name="none" c:type="void"/>
77765       </return-value>
77766       <parameters>
77767         <parameter name="widget" transfer-ownership="none">
77768           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77769           <type name="Widget" c:type="GtkWidget*"/>
77770         </parameter>
77771       </parameters>
77772     </function>
77773     <function name="drag_dest_find_target"
77774               c:identifier="gtk_drag_dest_find_target"
77775               introspectable="0">
77776       <doc xml:whitespace="preserve">Looks for a match between @context-&gt;targets and the
77777 returning %GDK_NONE. @dest_target_list should usually be the return
77778 value from gtk_drag_dest_get_target_list(), but some widgets may
77779 have different valid targets for different parts of the widget; in
77780 that case, they will have to implement a drag_motion handler that
77781 passes the correct target list to this function.</doc>
77782       <return-value>
77783         <doc xml:whitespace="preserve">first target that the source offers and the dest can accept, or %GDK_NONE</doc>
77784         <type name="Gdk.Atom" c:type="GdkAtom"/>
77785       </return-value>
77786       <parameters>
77787         <parameter name="widget" transfer-ownership="none">
77788           <doc xml:whitespace="preserve">drag destination widget</doc>
77789           <type name="Widget" c:type="GtkWidget*"/>
77790         </parameter>
77791         <parameter name="context" transfer-ownership="none">
77792           <doc xml:whitespace="preserve">drag context</doc>
77793           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
77794         </parameter>
77795         <parameter name="target_list" transfer-ownership="none" allow-none="1">
77796           <doc xml:whitespace="preserve">list of droppable targets, or %NULL to use gtk_drag_dest_get_target_list (@widget).</doc>
77797           <type name="TargetList" c:type="GtkTargetList*"/>
77798         </parameter>
77799       </parameters>
77800     </function>
77801     <function name="drag_dest_get_target_list"
77802               c:identifier="gtk_drag_dest_get_target_list">
77803       <doc xml:whitespace="preserve">Returns the list of targets this widget can accept from
77804 drag-and-drop.</doc>
77805       <return-value transfer-ownership="full">
77806         <doc xml:whitespace="preserve">the #GtkTargetList, or %NULL if none</doc>
77807         <type name="TargetList" c:type="GtkTargetList*"/>
77808       </return-value>
77809       <parameters>
77810         <parameter name="widget" transfer-ownership="none">
77811           <doc xml:whitespace="preserve">a #GtkWidget</doc>
77812           <type name="Widget" c:type="GtkWidget*"/>
77813         </parameter>
77814       </parameters>
77815     </function>
77816     <function name="drag_dest_get_track_motion"
77817               c:identifier="gtk_drag_dest_get_track_motion"
77818               version="2.10">
77819       <doc xml:whitespace="preserve">Returns whether the widget has been configured to always
77820 emit ::drag-motion signals.</doc>
77821       <return-value transfer-ownership="none">
77822         <doc xml:whitespace="preserve">%TRUE if the widget always emits ::drag-motion events</doc>
77823         <type name="gboolean" c:type="gboolean"/>
77824       </return-value>
77825       <parameters>
77826         <parameter name="widget" transfer-ownership="none">
77827           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77828           <type name="Widget" c:type="GtkWidget*"/>
77829         </parameter>
77830       </parameters>
77831     </function>
77832     <function name="drag_dest_set" c:identifier="gtk_drag_dest_set">
77833       <doc xml:whitespace="preserve">Sets a widget as a potential drop destination, and adds default behaviors.
77834 The default behaviors listed in @flags have an effect similar
77835 to installing default handlers for the widget's drag-and-drop signals
77836 (#GtkWidget:drag-motion, #GtkWidget:drag-drop, ...). They all exist
77837 for convenience. When passing #GTK_DEST_DEFAULT_ALL for instance it is
77838 sufficient to connect to the widget's #GtkWidget::drag-data-received
77839 signal to get primitive, but consistent drag-and-drop support.
77840 Things become more complicated when you try to preview the dragged data,
77841 as described in the documentation for #GtkWidget:drag-motion. The default
77842 behaviors described by @flags make some assumptions, that can conflict
77843 with your own signal handlers. For instance #GTK_DEST_DEFAULT_DROP causes
77844 invokations of gdk_drag_status() in the context of #GtkWidget:drag-motion,
77845 and invokations of gtk_drag_finish() in #GtkWidget:drag-data-received.
77846 Especially the later is dramatic, when your own #GtkWidget:drag-motion
77847 handler calls gtk_drag_get_data() to inspect the dragged data.
77848 There's no way to set a default action here, you can use the
77849 #GtkWidget:drag-motion callback for that. Here's an example which selects
77850 the action to use depending on whether the control key is pressed or not:
77851 |[
77852 static void
77853 drag_motion (GtkWidget *widget,
77854 GdkDragContext *context,
77855 gint x,
77856 gint y,
77857 guint time)
77858 {
77859 GdkModifierType mask;
77860 gdk_window_get_pointer (gtk_widget_get_window (widget),
77861 NULL, NULL, &amp;mask);
77862 if (mask &amp; GDK_CONTROL_MASK)
77863 gdk_drag_status (context, GDK_ACTION_COPY, time);
77864 else
77865 gdk_drag_status (context, GDK_ACTION_MOVE, time);
77866 }
77867 ]|</doc>
77868       <return-value transfer-ownership="none">
77869         <type name="none" c:type="void"/>
77870       </return-value>
77871       <parameters>
77872         <parameter name="widget" transfer-ownership="none">
77873           <doc xml:whitespace="preserve">a #GtkWidget</doc>
77874           <type name="Widget" c:type="GtkWidget*"/>
77875         </parameter>
77876         <parameter name="flags" transfer-ownership="none">
77877           <doc xml:whitespace="preserve">which types of default drag behavior to use</doc>
77878           <type name="DestDefaults" c:type="GtkDestDefaults"/>
77879         </parameter>
77880         <parameter name="targets" transfer-ownership="none" allow-none="1">
77881           <doc xml:whitespace="preserve">a pointer to an array of #GtkTargetEntry&lt;!-- --&gt;s indicating the drop types that this @widget will accept, or %NULL. Later you can access the list with gtk_drag_dest_get_target_list() and gtk_drag_dest_find_target().</doc>
77882           <array length="3" c:type="GtkTargetEntry*">
77883             <type name="TargetEntry"/>
77884           </array>
77885         </parameter>
77886         <parameter name="n_targets" transfer-ownership="none">
77887           <doc xml:whitespace="preserve">the number of entries in @targets</doc>
77888           <type name="gint" c:type="gint"/>
77889         </parameter>
77890         <parameter name="actions" transfer-ownership="none">
77891           <doc xml:whitespace="preserve">a bitmask of possible actions for a drop onto this @widget.</doc>
77892           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
77893         </parameter>
77894       </parameters>
77895     </function>
77896     <function name="drag_dest_set_proxy"
77897               c:identifier="gtk_drag_dest_set_proxy">
77898       <return-value transfer-ownership="none">
77899         <type name="none" c:type="void"/>
77900       </return-value>
77901       <parameters>
77902         <parameter name="widget" transfer-ownership="none">
77903           <type name="Widget" c:type="GtkWidget*"/>
77904         </parameter>
77905         <parameter name="proxy_window" transfer-ownership="none">
77906           <type name="Gdk.Window" c:type="GdkWindow*"/>
77907         </parameter>
77908         <parameter name="protocol" transfer-ownership="none">
77909           <type name="Gdk.DragProtocol" c:type="GdkDragProtocol"/>
77910         </parameter>
77911         <parameter name="use_coordinates" transfer-ownership="none">
77912           <type name="gboolean" c:type="gboolean"/>
77913         </parameter>
77914       </parameters>
77915     </function>
77916     <function name="drag_dest_set_target_list"
77917               c:identifier="gtk_drag_dest_set_target_list">
77918       <doc xml:whitespace="preserve">Sets the target types that this widget can accept from drag-and-drop.
77919 The widget must first be made into a drag destination with
77920 gtk_drag_dest_set().</doc>
77921       <return-value transfer-ownership="none">
77922         <type name="none" c:type="void"/>
77923       </return-value>
77924       <parameters>
77925         <parameter name="widget" transfer-ownership="none">
77926           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77927           <type name="Widget" c:type="GtkWidget*"/>
77928         </parameter>
77929         <parameter name="target_list" transfer-ownership="none" allow-none="1">
77930           <doc xml:whitespace="preserve">list of droppable targets, or %NULL for none</doc>
77931           <type name="TargetList" c:type="GtkTargetList*"/>
77932         </parameter>
77933       </parameters>
77934     </function>
77935     <function name="drag_dest_set_track_motion"
77936               c:identifier="gtk_drag_dest_set_track_motion"
77937               version="2.10">
77938       <doc xml:whitespace="preserve">Tells the widget to emit ::drag-motion and ::drag-leave
77939 events regardless of the targets and the %GTK_DEST_DEFAULT_MOTION
77940 flag. 
77941 This may be used when a widget wants to do generic
77942 actions regardless of the targets that the source offers.</doc>
77943       <return-value transfer-ownership="none">
77944         <type name="none" c:type="void"/>
77945       </return-value>
77946       <parameters>
77947         <parameter name="widget" transfer-ownership="none">
77948           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
77949           <type name="Widget" c:type="GtkWidget*"/>
77950         </parameter>
77951         <parameter name="track_motion" transfer-ownership="none">
77952           <doc xml:whitespace="preserve">whether to accept all targets</doc>
77953           <type name="gboolean" c:type="gboolean"/>
77954         </parameter>
77955       </parameters>
77956     </function>
77957     <function name="drag_dest_unset" c:identifier="gtk_drag_dest_unset">
77958       <return-value transfer-ownership="none">
77959         <type name="none" c:type="void"/>
77960       </return-value>
77961       <parameters>
77962         <parameter name="widget" transfer-ownership="none">
77963           <type name="Widget" c:type="GtkWidget*"/>
77964         </parameter>
77965       </parameters>
77966     </function>
77967     <function name="drag_finish" c:identifier="gtk_drag_finish">
77968       <return-value transfer-ownership="none">
77969         <type name="none" c:type="void"/>
77970       </return-value>
77971       <parameters>
77972         <parameter name="context" transfer-ownership="none">
77973           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
77974         </parameter>
77975         <parameter name="success" transfer-ownership="none">
77976           <type name="gboolean" c:type="gboolean"/>
77977         </parameter>
77978         <parameter name="del" transfer-ownership="none">
77979           <type name="gboolean" c:type="gboolean"/>
77980         </parameter>
77981         <parameter name="time_" transfer-ownership="none">
77982           <type name="guint32" c:type="guint32"/>
77983         </parameter>
77984       </parameters>
77985     </function>
77986     <function name="drag_get_data" c:identifier="gtk_drag_get_data">
77987       <return-value transfer-ownership="none">
77988         <type name="none" c:type="void"/>
77989       </return-value>
77990       <parameters>
77991         <parameter name="widget" transfer-ownership="none">
77992           <type name="Widget" c:type="GtkWidget*"/>
77993         </parameter>
77994         <parameter name="context" transfer-ownership="none">
77995           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
77996         </parameter>
77997         <parameter name="target" transfer-ownership="none">
77998           <type name="Gdk.Atom" c:type="GdkAtom"/>
77999         </parameter>
78000         <parameter name="time_" transfer-ownership="none">
78001           <type name="guint32" c:type="guint32"/>
78002         </parameter>
78003       </parameters>
78004     </function>
78005     <function name="drag_get_source_widget"
78006               c:identifier="gtk_drag_get_source_widget">
78007       <doc xml:whitespace="preserve">Determines the source widget for a drag.
78008 within a single application, a pointer to the source widget.
78009 Otherwise, %NULL.</doc>
78010       <return-value transfer-ownership="none">
78011         <doc xml:whitespace="preserve">if the drag is occurring</doc>
78012         <type name="Widget" c:type="GtkWidget*"/>
78013       </return-value>
78014       <parameters>
78015         <parameter name="context" transfer-ownership="none">
78016           <doc xml:whitespace="preserve">a (destination side) drag context</doc>
78017           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78018         </parameter>
78019       </parameters>
78020     </function>
78021     <function name="drag_highlight" c:identifier="gtk_drag_highlight">
78022       <return-value transfer-ownership="none">
78023         <type name="none" c:type="void"/>
78024       </return-value>
78025       <parameters>
78026         <parameter name="widget" transfer-ownership="none">
78027           <type name="Widget" c:type="GtkWidget*"/>
78028         </parameter>
78029       </parameters>
78030     </function>
78031     <function name="drag_set_icon_default"
78032               c:identifier="gtk_drag_set_icon_default">
78033       <doc xml:whitespace="preserve">Sets the icon for a particular drag to the default
78034 icon.</doc>
78035       <return-value transfer-ownership="none">
78036         <type name="none" c:type="void"/>
78037       </return-value>
78038       <parameters>
78039         <parameter name="context" transfer-ownership="none">
78040           <doc xml:whitespace="preserve">the context for a drag. (This must be called</doc>
78041           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78042         </parameter>
78043       </parameters>
78044     </function>
78045     <function name="drag_set_icon_name"
78046               c:identifier="gtk_drag_set_icon_name"
78047               version="2.8">
78048       <doc xml:whitespace="preserve">Sets the icon for a given drag from a named themed icon. See
78049 the docs for #GtkIconTheme for more details. Note that the
78050 size of the icon depends on the icon theme (the icon is
78051 loaded at the symbolic size #GTK_ICON_SIZE_DND), thus</doc>
78052       <return-value transfer-ownership="none">
78053         <type name="none" c:type="void"/>
78054       </return-value>
78055       <parameters>
78056         <parameter name="context" transfer-ownership="none">
78057           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a context for the source side of a drag)</doc>
78058           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78059         </parameter>
78060         <parameter name="icon_name" transfer-ownership="none">
78061           <doc xml:whitespace="preserve">name of icon to use</doc>
78062           <type name="utf8" c:type="gchar*"/>
78063         </parameter>
78064         <parameter name="hot_x" transfer-ownership="none">
78065           <doc xml:whitespace="preserve">the X offset of the hotspot within the icon</doc>
78066           <type name="gint" c:type="gint"/>
78067         </parameter>
78068         <parameter name="hot_y" transfer-ownership="none">
78069           <doc xml:whitespace="preserve">the Y offset of the hotspot within the icon</doc>
78070           <type name="gint" c:type="gint"/>
78071         </parameter>
78072       </parameters>
78073     </function>
78074     <function name="drag_set_icon_pixbuf"
78075               c:identifier="gtk_drag_set_icon_pixbuf">
78076       <doc xml:whitespace="preserve">Sets @pixbuf as the icon for a given drag.</doc>
78077       <return-value transfer-ownership="none">
78078         <type name="none" c:type="void"/>
78079       </return-value>
78080       <parameters>
78081         <parameter name="context" transfer-ownership="none">
78082           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
78083           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78084         </parameter>
78085         <parameter name="pixbuf" transfer-ownership="none">
78086           <doc xml:whitespace="preserve">the #GdkPixbuf to use as the drag icon.</doc>
78087           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
78088         </parameter>
78089         <parameter name="hot_x" transfer-ownership="none">
78090           <doc xml:whitespace="preserve">the X offset within @widget of the hotspot.</doc>
78091           <type name="gint" c:type="gint"/>
78092         </parameter>
78093         <parameter name="hot_y" transfer-ownership="none">
78094           <doc xml:whitespace="preserve">the Y offset within @widget of the hotspot.</doc>
78095           <type name="gint" c:type="gint"/>
78096         </parameter>
78097       </parameters>
78098     </function>
78099     <function name="drag_set_icon_pixmap"
78100               c:identifier="gtk_drag_set_icon_pixmap">
78101       <doc xml:whitespace="preserve">Sets @pixmap as the icon for a given drag. GTK+ retains
78102 references for the arguments, and will release them when
78103 they are no longer needed. In general, gtk_drag_set_icon_pixbuf()
78104 will be more convenient to use.</doc>
78105       <return-value transfer-ownership="none">
78106         <type name="none" c:type="void"/>
78107       </return-value>
78108       <parameters>
78109         <parameter name="context" transfer-ownership="none">
78110           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
78111           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78112         </parameter>
78113         <parameter name="colormap" transfer-ownership="none">
78114           <doc xml:whitespace="preserve">the colormap of the icon</doc>
78115           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
78116         </parameter>
78117         <parameter name="pixmap" transfer-ownership="none">
78118           <doc xml:whitespace="preserve">the image data for the icon</doc>
78119           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
78120         </parameter>
78121         <parameter name="mask" transfer-ownership="none" allow-none="1">
78122           <doc xml:whitespace="preserve">the transparency mask for the icon or %NULL for none.</doc>
78123           <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
78124         </parameter>
78125         <parameter name="hot_x" transfer-ownership="none">
78126           <doc xml:whitespace="preserve">the X offset within @pixmap of the hotspot.</doc>
78127           <type name="gint" c:type="gint"/>
78128         </parameter>
78129         <parameter name="hot_y" transfer-ownership="none">
78130           <doc xml:whitespace="preserve">the Y offset within @pixmap of the hotspot.</doc>
78131           <type name="gint" c:type="gint"/>
78132         </parameter>
78133       </parameters>
78134     </function>
78135     <function name="drag_set_icon_stock"
78136               c:identifier="gtk_drag_set_icon_stock">
78137       <doc xml:whitespace="preserve">Sets the icon for a given drag from a stock ID.</doc>
78138       <return-value transfer-ownership="none">
78139         <type name="none" c:type="void"/>
78140       </return-value>
78141       <parameters>
78142         <parameter name="context" transfer-ownership="none">
78143           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
78144           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78145         </parameter>
78146         <parameter name="stock_id" transfer-ownership="none">
78147           <doc xml:whitespace="preserve">the ID of the stock icon to use for the drag.</doc>
78148           <type name="utf8" c:type="gchar*"/>
78149         </parameter>
78150         <parameter name="hot_x" transfer-ownership="none">
78151           <doc xml:whitespace="preserve">the X offset within the icon of the hotspot.</doc>
78152           <type name="gint" c:type="gint"/>
78153         </parameter>
78154         <parameter name="hot_y" transfer-ownership="none">
78155           <doc xml:whitespace="preserve">the Y offset within the icon of the hotspot.</doc>
78156           <type name="gint" c:type="gint"/>
78157         </parameter>
78158       </parameters>
78159     </function>
78160     <function name="drag_set_icon_widget"
78161               c:identifier="gtk_drag_set_icon_widget">
78162       <doc xml:whitespace="preserve">Changes the icon for a widget to a given widget. GTK+
78163 will not destroy the icon, so if you don't want
78164 it to persist, you should connect to the "drag-end" 
78165 signal and destroy it yourself.</doc>
78166       <return-value transfer-ownership="none">
78167         <type name="none" c:type="void"/>
78168       </return-value>
78169       <parameters>
78170         <parameter name="context" transfer-ownership="none">
78171           <doc xml:whitespace="preserve">the context for a drag. (This must be called</doc>
78172           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
78173         </parameter>
78174         <parameter name="widget" transfer-ownership="none">
78175           <doc xml:whitespace="preserve">a toplevel window to use as an icon.</doc>
78176           <type name="Widget" c:type="GtkWidget*"/>
78177         </parameter>
78178         <parameter name="hot_x" transfer-ownership="none">
78179           <doc xml:whitespace="preserve">the X offset within @widget of the hotspot.</doc>
78180           <type name="gint" c:type="gint"/>
78181         </parameter>
78182         <parameter name="hot_y" transfer-ownership="none">
78183           <doc xml:whitespace="preserve">the Y offset within @widget of the hotspot.</doc>
78184           <type name="gint" c:type="gint"/>
78185         </parameter>
78186       </parameters>
78187     </function>
78188     <function name="drag_source_add_image_targets"
78189               c:identifier="gtk_drag_source_add_image_targets"
78190               version="2.6">
78191       <doc xml:whitespace="preserve">Add the writable image targets supported by #GtkSelection to
78192 the target list of the drag source. The targets
78193 are added with @info = 0. If you need another value, 
78194 use gtk_target_list_add_image_targets() and
78195 gtk_drag_source_set_target_list().</doc>
78196       <return-value transfer-ownership="none">
78197         <type name="none" c:type="void"/>
78198       </return-value>
78199       <parameters>
78200         <parameter name="widget" transfer-ownership="none">
78201           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
78202           <type name="Widget" c:type="GtkWidget*"/>
78203         </parameter>
78204       </parameters>
78205     </function>
78206     <function name="drag_source_add_text_targets"
78207               c:identifier="gtk_drag_source_add_text_targets"
78208               version="2.6">
78209       <doc xml:whitespace="preserve">Add the text targets supported by #GtkSelection to
78210 the target list of the drag source.  The targets
78211 are added with @info = 0. If you need another value, 
78212 use gtk_target_list_add_text_targets() and
78213 gtk_drag_source_set_target_list().</doc>
78214       <return-value transfer-ownership="none">
78215         <type name="none" c:type="void"/>
78216       </return-value>
78217       <parameters>
78218         <parameter name="widget" transfer-ownership="none">
78219           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
78220           <type name="Widget" c:type="GtkWidget*"/>
78221         </parameter>
78222       </parameters>
78223     </function>
78224     <function name="drag_source_add_uri_targets"
78225               c:identifier="gtk_drag_source_add_uri_targets"
78226               version="2.6">
78227       <doc xml:whitespace="preserve">Add the URI targets supported by #GtkSelection to
78228 the target list of the drag source.  The targets
78229 are added with @info = 0. If you need another value, 
78230 use gtk_target_list_add_uri_targets() and
78231 gtk_drag_source_set_target_list().</doc>
78232       <return-value transfer-ownership="none">
78233         <type name="none" c:type="void"/>
78234       </return-value>
78235       <parameters>
78236         <parameter name="widget" transfer-ownership="none">
78237           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
78238           <type name="Widget" c:type="GtkWidget*"/>
78239         </parameter>
78240       </parameters>
78241     </function>
78242     <function name="drag_source_get_target_list"
78243               c:identifier="gtk_drag_source_get_target_list"
78244               version="2.4">
78245       <doc xml:whitespace="preserve">Gets the list of targets this widget can provide for
78246 drag-and-drop.</doc>
78247       <return-value transfer-ownership="full">
78248         <doc xml:whitespace="preserve">the #GtkTargetList, or %NULL if none</doc>
78249         <type name="TargetList" c:type="GtkTargetList*"/>
78250       </return-value>
78251       <parameters>
78252         <parameter name="widget" transfer-ownership="none">
78253           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78254           <type name="Widget" c:type="GtkWidget*"/>
78255         </parameter>
78256       </parameters>
78257     </function>
78258     <function name="drag_source_set" c:identifier="gtk_drag_source_set">
78259       <doc xml:whitespace="preserve">Sets up a widget so that GTK+ will start a drag operation when the user
78260 clicks and drags on the widget. The widget must have a window.</doc>
78261       <return-value transfer-ownership="none">
78262         <type name="none" c:type="void"/>
78263       </return-value>
78264       <parameters>
78265         <parameter name="widget" transfer-ownership="none">
78266           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78267           <type name="Widget" c:type="GtkWidget*"/>
78268         </parameter>
78269         <parameter name="start_button_mask" transfer-ownership="none">
78270           <doc xml:whitespace="preserve">the bitmask of buttons that can start the drag</doc>
78271           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
78272         </parameter>
78273         <parameter name="targets" transfer-ownership="none" allow-none="1">
78274           <doc xml:whitespace="preserve">the table of targets that the drag will support, may be %NULL</doc>
78275           <array length="3" c:type="GtkTargetEntry*">
78276             <type name="TargetEntry"/>
78277           </array>
78278         </parameter>
78279         <parameter name="n_targets" transfer-ownership="none">
78280           <doc xml:whitespace="preserve">the number of items in @targets</doc>
78281           <type name="gint" c:type="gint"/>
78282         </parameter>
78283         <parameter name="actions" transfer-ownership="none">
78284           <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
78285           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
78286         </parameter>
78287       </parameters>
78288     </function>
78289     <function name="drag_source_set_icon"
78290               c:identifier="gtk_drag_source_set_icon">
78291       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular widget
78292 from a pixmap/mask. GTK+ retains references for the arguments, and
78293 will release them when they are no longer needed.
78294 Use gtk_drag_source_set_icon_pixbuf() instead.</doc>
78295       <return-value transfer-ownership="none">
78296         <type name="none" c:type="void"/>
78297       </return-value>
78298       <parameters>
78299         <parameter name="widget" transfer-ownership="none">
78300           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78301           <type name="Widget" c:type="GtkWidget*"/>
78302         </parameter>
78303         <parameter name="colormap" transfer-ownership="none">
78304           <doc xml:whitespace="preserve">the colormap of the icon</doc>
78305           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
78306         </parameter>
78307         <parameter name="pixmap" transfer-ownership="none">
78308           <doc xml:whitespace="preserve">the image data for the icon</doc>
78309           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
78310         </parameter>
78311         <parameter name="mask" transfer-ownership="none" allow-none="1">
78312           <doc xml:whitespace="preserve">the transparency mask for an image.</doc>
78313           <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
78314         </parameter>
78315       </parameters>
78316     </function>
78317     <function name="drag_source_set_icon_name"
78318               c:identifier="gtk_drag_source_set_icon_name"
78319               version="2.8">
78320       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular source
78321 to a themed icon. See the docs for #GtkIconTheme for more details.</doc>
78322       <return-value transfer-ownership="none">
78323         <type name="none" c:type="void"/>
78324       </return-value>
78325       <parameters>
78326         <parameter name="widget" transfer-ownership="none">
78327           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78328           <type name="Widget" c:type="GtkWidget*"/>
78329         </parameter>
78330         <parameter name="icon_name" transfer-ownership="none">
78331           <doc xml:whitespace="preserve">name of icon to use</doc>
78332           <type name="utf8" c:type="gchar*"/>
78333         </parameter>
78334       </parameters>
78335     </function>
78336     <function name="drag_source_set_icon_pixbuf"
78337               c:identifier="gtk_drag_source_set_icon_pixbuf">
78338       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular widget
78339 from a #GdkPixbuf. GTK+ retains a reference for @pixbuf and will 
78340 release it when it is no longer needed.</doc>
78341       <return-value transfer-ownership="none">
78342         <type name="none" c:type="void"/>
78343       </return-value>
78344       <parameters>
78345         <parameter name="widget" transfer-ownership="none">
78346           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78347           <type name="Widget" c:type="GtkWidget*"/>
78348         </parameter>
78349         <parameter name="pixbuf" transfer-ownership="none">
78350           <doc xml:whitespace="preserve">the #GdkPixbuf for the drag icon</doc>
78351           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
78352         </parameter>
78353       </parameters>
78354     </function>
78355     <function name="drag_source_set_icon_stock"
78356               c:identifier="gtk_drag_source_set_icon_stock">
78357       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular source
78358 to a stock icon.</doc>
78359       <return-value transfer-ownership="none">
78360         <type name="none" c:type="void"/>
78361       </return-value>
78362       <parameters>
78363         <parameter name="widget" transfer-ownership="none">
78364           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78365           <type name="Widget" c:type="GtkWidget*"/>
78366         </parameter>
78367         <parameter name="stock_id" transfer-ownership="none">
78368           <doc xml:whitespace="preserve">the ID of the stock icon to use</doc>
78369           <type name="utf8" c:type="gchar*"/>
78370         </parameter>
78371       </parameters>
78372     </function>
78373     <function name="drag_source_set_target_list"
78374               c:identifier="gtk_drag_source_set_target_list"
78375               version="2.4">
78376       <doc xml:whitespace="preserve">Changes the target types that this widget offers for drag-and-drop.
78377 The widget must first be made into a drag source with
78378 gtk_drag_source_set().</doc>
78379       <return-value transfer-ownership="none">
78380         <type name="none" c:type="void"/>
78381       </return-value>
78382       <parameters>
78383         <parameter name="widget" transfer-ownership="none">
78384           <doc xml:whitespace="preserve">a #GtkWidget that's a drag source</doc>
78385           <type name="Widget" c:type="GtkWidget*"/>
78386         </parameter>
78387         <parameter name="target_list" transfer-ownership="none" allow-none="1">
78388           <doc xml:whitespace="preserve">list of draggable targets, or %NULL for none</doc>
78389           <type name="TargetList" c:type="GtkTargetList*"/>
78390         </parameter>
78391       </parameters>
78392     </function>
78393     <function name="drag_source_unset" c:identifier="gtk_drag_source_unset">
78394       <return-value transfer-ownership="none">
78395         <type name="none" c:type="void"/>
78396       </return-value>
78397       <parameters>
78398         <parameter name="widget" transfer-ownership="none">
78399           <type name="Widget" c:type="GtkWidget*"/>
78400         </parameter>
78401       </parameters>
78402     </function>
78403     <function name="drag_unhighlight" c:identifier="gtk_drag_unhighlight">
78404       <return-value transfer-ownership="none">
78405         <type name="none" c:type="void"/>
78406       </return-value>
78407       <parameters>
78408         <parameter name="widget" transfer-ownership="none">
78409           <type name="Widget" c:type="GtkWidget*"/>
78410         </parameter>
78411       </parameters>
78412     </function>
78413     <function name="draw_insertion_cursor"
78414               c:identifier="gtk_draw_insertion_cursor"
78415               version="2.4">
78416       <doc xml:whitespace="preserve">Draws a text caret on @drawable at @location. This is not a style function
78417 but merely a convenience function for drawing the standard cursor shape.</doc>
78418       <return-value transfer-ownership="none">
78419         <type name="none" c:type="void"/>
78420       </return-value>
78421       <parameters>
78422         <parameter name="widget" transfer-ownership="none">
78423           <doc xml:whitespace="preserve">a #GtkWidget</doc>
78424           <type name="Widget" c:type="GtkWidget*"/>
78425         </parameter>
78426         <parameter name="drawable" transfer-ownership="none">
78427           <doc xml:whitespace="preserve">a #GdkDrawable</doc>
78428           <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
78429         </parameter>
78430         <parameter name="area" transfer-ownership="none" allow-none="1">
78431           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
78432           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
78433         </parameter>
78434         <parameter name="location" transfer-ownership="none">
78435           <doc xml:whitespace="preserve">location where to draw the cursor (@location-&gt;width is ignored)</doc>
78436           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
78437         </parameter>
78438         <parameter name="is_primary" transfer-ownership="none">
78439           <doc xml:whitespace="preserve">if the cursor should be the primary cursor color.</doc>
78440           <type name="gboolean" c:type="gboolean"/>
78441         </parameter>
78442         <parameter name="direction" transfer-ownership="none">
78443           <doc xml:whitespace="preserve">whether the cursor is left-to-right or right-to-left. Should never be #GTK_TEXT_DIR_NONE</doc>
78444           <type name="TextDirection" c:type="GtkTextDirection"/>
78445         </parameter>
78446         <parameter name="draw_arrow" transfer-ownership="none">
78447           <doc xml:whitespace="preserve">%TRUE to draw a directional arrow on the cursor. Should be %FALSE unless the cursor is split.</doc>
78448           <type name="gboolean" c:type="gboolean"/>
78449         </parameter>
78450       </parameters>
78451     </function>
78452     <function name="events_pending" c:identifier="gtk_events_pending">
78453       <return-value transfer-ownership="none">
78454         <type name="gboolean" c:type="gboolean"/>
78455       </return-value>
78456     </function>
78457     <function name="false" c:identifier="gtk_false">
78458       <return-value transfer-ownership="none">
78459         <type name="gboolean" c:type="gboolean"/>
78460       </return-value>
78461     </function>
78462     <function name="file_chooser_error_quark"
78463               c:identifier="gtk_file_chooser_error_quark"
78464               version="2.4">
78465       <doc xml:whitespace="preserve">Registers an error quark for #GtkFileChooser if necessary.</doc>
78466       <return-value transfer-ownership="none">
78467         <doc xml:whitespace="preserve">The error quark used for #GtkFileChooser errors.</doc>
78468         <type name="GLib.Quark" c:type="GQuark"/>
78469       </return-value>
78470     </function>
78471     <function name="get_binary_age"
78472               c:identifier="gtk_get_binary_age"
78473               version="3.0">
78474       <doc xml:whitespace="preserve">Returns the binary age as passed to
78475 &lt;application&gt;libtool&lt;/application&gt; when building the GTK+ library
78476 the process is running against. If
78477 &lt;application&gt;libtool&lt;/application&gt; means nothing to you, don't
78478 worry about it.</doc>
78479       <return-value transfer-ownership="none">
78480         <doc xml:whitespace="preserve">the binary age of the GTK+ library.</doc>
78481         <type name="guint" c:type="guint"/>
78482       </return-value>
78483     </function>
78484     <function name="get_current_event" c:identifier="gtk_get_current_event">
78485       <doc xml:whitespace="preserve">Obtains a copy of the event currently being processed by GTK+.  For
78486 example, if you get a "clicked" signal from #GtkButton, the current
78487 event will be the #GdkEventButton that triggered the "clicked"
78488 signal. The returned event must be freed with gdk_event_free().
78489 If there is no current event, the function returns %NULL.</doc>
78490       <return-value transfer-ownership="full">
78491         <doc xml:whitespace="preserve">a copy of the current event, or %NULL if no current event.</doc>
78492         <type name="Gdk.Event" c:type="GdkEvent*"/>
78493       </return-value>
78494     </function>
78495     <function name="get_current_event_device"
78496               c:identifier="gtk_get_current_event_device">
78497       <doc xml:whitespace="preserve">If there is a current event and it has a device, return that
78498 device, otherwise return %NULL.</doc>
78499       <return-value transfer-ownership="none">
78500         <doc xml:whitespace="preserve">a #GdkDevice, or %NULL</doc>
78501         <type name="Gdk.Device" c:type="GdkDevice*"/>
78502       </return-value>
78503     </function>
78504     <function name="get_current_event_state"
78505               c:identifier="gtk_get_current_event_state">
78506       <doc xml:whitespace="preserve">If there is a current event and it has a state field, place
78507 that state field in @state and return %TRUE, otherwise return
78508 %FALSE.</doc>
78509       <return-value transfer-ownership="none">
78510         <doc xml:whitespace="preserve">%TRUE if there was a current event and it had a state field</doc>
78511         <type name="gboolean" c:type="gboolean"/>
78512       </return-value>
78513       <parameters>
78514         <parameter name="state" transfer-ownership="none">
78515           <doc xml:whitespace="preserve">a location to store the state of the current event</doc>
78516           <type name="Gdk.ModifierType" c:type="GdkModifierType*"/>
78517         </parameter>
78518       </parameters>
78519     </function>
78520     <function name="get_current_event_time"
78521               c:identifier="gtk_get_current_event_time">
78522       <doc xml:whitespace="preserve">If there is a current event and it has a timestamp, return that
78523 timestamp, otherwise return %GDK_CURRENT_TIME.</doc>
78524       <return-value transfer-ownership="none">
78525         <doc xml:whitespace="preserve">the timestamp from the current event, or %GDK_CURRENT_TIME.</doc>
78526         <type name="guint32" c:type="guint32"/>
78527       </return-value>
78528     </function>
78529     <function name="get_debug_flags" c:identifier="gtk_get_debug_flags">
78530       <doc xml:whitespace="preserve">Returns the GTK+ debug flags setting.</doc>
78531       <return-value transfer-ownership="none">
78532         <type name="guint" c:type="guint"/>
78533       </return-value>
78534     </function>
78535     <function name="get_default_language"
78536               c:identifier="gtk_get_default_language">
78537       <doc xml:whitespace="preserve">Returns the #PangoLanguage for the default language currently in
78538 effect. (Note that this can change over the life of an
78539 application.)  The default language is derived from the current
78540 locale. It determines, for example, whether GTK+ uses the
78541 right-to-left or left-to-right text direction.
78542 This function is equivalent to pango_language_get_default().  See
78543 that function for details.
78544 freed</doc>
78545       <return-value transfer-ownership="full">
78546         <doc xml:whitespace="preserve">the default language as a #PangoLanguage, must not be</doc>
78547         <type name="Pango.Language" c:type="PangoLanguage*"/>
78548       </return-value>
78549     </function>
78550     <function name="get_event_widget" c:identifier="gtk_get_event_widget">
78551       <doc xml:whitespace="preserve">If @event is %NULL or the event was not associated with any widget,
78552 returns %NULL, otherwise returns the widget that received the event
78553 originally.
78554 received @event, or %NULL</doc>
78555       <return-value transfer-ownership="none">
78556         <doc xml:whitespace="preserve">the widget that originally</doc>
78557         <type name="Widget" c:type="GtkWidget*"/>
78558       </return-value>
78559       <parameters>
78560         <parameter name="event" transfer-ownership="none">
78561           <doc xml:whitespace="preserve">a #GdkEvent</doc>
78562           <type name="Gdk.Event" c:type="GdkEvent*"/>
78563         </parameter>
78564       </parameters>
78565     </function>
78566     <function name="get_interface_age"
78567               c:identifier="gtk_get_interface_age"
78568               version="3.0">
78569       <doc xml:whitespace="preserve">Returns the interface age as passed to
78570 &lt;application&gt;libtool&lt;/application&gt; when building the GTK+ library
78571 the process is running against. If
78572 &lt;application&gt;libtool&lt;/application&gt; means nothing to you, don't
78573 worry about it.</doc>
78574       <return-value transfer-ownership="none">
78575         <doc xml:whitespace="preserve">the interface age of the GTK+ library.</doc>
78576         <type name="guint" c:type="guint"/>
78577       </return-value>
78578     </function>
78579     <function name="get_major_version"
78580               c:identifier="gtk_get_major_version"
78581               version="3.0">
78582       <doc xml:whitespace="preserve">Returns the major version number of the GTK+ library.  (e.g. in GTK+ version
78583 3.1.5 this is 3.) 
78584 This function is in the library, so it represents the GTK+ library
78585 your code is running against. Contrast with the #GTK_MAJOR_VERSION
78586 macro, which represents the major version of the GTK+ headers you
78587 have included when compiling your code.</doc>
78588       <return-value transfer-ownership="none">
78589         <doc xml:whitespace="preserve">the major version number of the GTK+ library.</doc>
78590         <type name="guint" c:type="guint"/>
78591       </return-value>
78592     </function>
78593     <function name="get_micro_version"
78594               c:identifier="gtk_get_micro_version"
78595               version="3.0">
78596       <doc xml:whitespace="preserve">Returns the micro version number of the GTK+ library.  (e.g. in GTK+ version
78597 3.1.5 this is 5.) 
78598 This function is in the library, so it represents the GTK+ library
78599 your code is are running against. Contrast with the
78600 #GTK_MICRO_VERSION macro, which represents the micro version of the
78601 GTK+ headers you have included when compiling your code.</doc>
78602       <return-value transfer-ownership="none">
78603         <doc xml:whitespace="preserve">the micro version number of the GTK+ library.</doc>
78604         <type name="guint" c:type="guint"/>
78605       </return-value>
78606     </function>
78607     <function name="get_minor_version"
78608               c:identifier="gtk_get_minor_version"
78609               version="3.0">
78610       <doc xml:whitespace="preserve">Returns the minor version number of the GTK+ library.  (e.g. in GTK+ version
78611 3.1.5 this is 1.) 
78612 This function is in the library, so it represents the GTK+ library
78613 your code is are running against. Contrast with the
78614 #GTK_MINOR_VERSION macro, which represents the minor version of the
78615 GTK+ headers you have included when compiling your code.</doc>
78616       <return-value transfer-ownership="none">
78617         <doc xml:whitespace="preserve">the minor version number of the GTK+ library.</doc>
78618         <type name="guint" c:type="guint"/>
78619       </return-value>
78620     </function>
78621     <function name="get_option_group"
78622               c:identifier="gtk_get_option_group"
78623               version="2.6"
78624               introspectable="0">
78625       <doc xml:whitespace="preserve">Returns a #GOptionGroup for the commandline arguments recognized
78626 by GTK+ and GDK. You should add this group to your #GOptionContext 
78627 with g_option_context_add_group(), if you are using 
78628 g_option_context_parse() to parse your commandline arguments.
78629 by GTK+</doc>
78630       <return-value>
78631         <doc xml:whitespace="preserve">a #GOptionGroup for the commandline arguments recognized</doc>
78632         <type name="GLib.OptionGroup" c:type="GOptionGroup*"/>
78633       </return-value>
78634       <parameters>
78635         <parameter name="open_default_display" transfer-ownership="none">
78636           <doc xml:whitespace="preserve">whether to open the default display when parsing the commandline arguments</doc>
78637           <type name="gboolean" c:type="gboolean"/>
78638         </parameter>
78639       </parameters>
78640     </function>
78641     <function name="grab_add" c:identifier="gtk_grab_add">
78642       <return-value transfer-ownership="none">
78643         <type name="none" c:type="void"/>
78644       </return-value>
78645       <parameters>
78646         <parameter name="widget" transfer-ownership="none">
78647           <type name="Widget" c:type="GtkWidget*"/>
78648         </parameter>
78649       </parameters>
78650     </function>
78651     <function name="grab_get_current" c:identifier="gtk_grab_get_current">
78652       <doc xml:whitespace="preserve">Queries the current grab of the default window group.
78653 has the grab or %NULL if no grab is active</doc>
78654       <return-value transfer-ownership="none">
78655         <doc xml:whitespace="preserve">The widget which currently</doc>
78656         <type name="Widget" c:type="GtkWidget*"/>
78657       </return-value>
78658     </function>
78659     <function name="grab_remove" c:identifier="gtk_grab_remove">
78660       <return-value transfer-ownership="none">
78661         <type name="none" c:type="void"/>
78662       </return-value>
78663       <parameters>
78664         <parameter name="widget" transfer-ownership="none">
78665           <type name="Widget" c:type="GtkWidget*"/>
78666         </parameter>
78667       </parameters>
78668     </function>
78669     <function name="icon_size_from_name"
78670               c:identifier="gtk_icon_size_from_name">
78671       <doc xml:whitespace="preserve">Looks up the icon size associated with @name.</doc>
78672       <return-value transfer-ownership="none">
78673         <doc xml:whitespace="preserve">the icon size</doc>
78674         <type name="gint"/>
78675       </return-value>
78676       <parameters>
78677         <parameter name="name" transfer-ownership="none">
78678           <doc xml:whitespace="preserve">the name to look up.</doc>
78679           <type name="utf8" c:type="gchar*"/>
78680         </parameter>
78681       </parameters>
78682     </function>
78683     <function name="icon_size_get_name" c:identifier="gtk_icon_size_get_name">
78684       <doc xml:whitespace="preserve">Gets the canonical name of the given icon size. The returned string
78685 is statically allocated and should not be freed.</doc>
78686       <return-value transfer-ownership="none">
78687         <doc xml:whitespace="preserve">the name of the given icon size.</doc>
78688         <type name="utf8" c:type="gchar*"/>
78689       </return-value>
78690       <parameters>
78691         <parameter name="size" transfer-ownership="none">
78692           <doc xml:whitespace="preserve">a #GtkIconSize.</doc>
78693           <type name="gint"/>
78694         </parameter>
78695       </parameters>
78696     </function>
78697     <function name="icon_size_lookup" c:identifier="gtk_icon_size_lookup">
78698       <doc xml:whitespace="preserve">Obtains the pixel size of a semantic icon size, possibly
78699 modified by user preferences for the default #GtkSettings.
78700 (See gtk_icon_size_lookup_for_settings().)
78701 Normally @size would be
78702 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_BUTTON, etc.  This function
78703 isn't normally needed, gtk_widget_render_icon() is the usual
78704 way to get an icon for rendering, then just look at the size of
78705 the rendered pixbuf. The rendered pixbuf may not even correspond to
78706 the width/height returned by gtk_icon_size_lookup(), because themes
78707 are free to render the pixbuf however they like, including changing
78708 the usual size.</doc>
78709       <return-value transfer-ownership="none">
78710         <doc xml:whitespace="preserve">%TRUE if @size was a valid size</doc>
78711         <type name="gboolean" c:type="gboolean"/>
78712       </return-value>
78713       <parameters>
78714         <parameter name="size" transfer-ownership="none">
78715           <doc xml:whitespace="preserve">an icon size</doc>
78716           <type name="gint"/>
78717         </parameter>
78718         <parameter name="width" transfer-ownership="none">
78719           <doc xml:whitespace="preserve">location to store icon width</doc>
78720           <type name="gint" c:type="gint*"/>
78721         </parameter>
78722         <parameter name="height" transfer-ownership="none">
78723           <doc xml:whitespace="preserve">location to store icon height</doc>
78724           <type name="gint" c:type="gint*"/>
78725         </parameter>
78726       </parameters>
78727     </function>
78728     <function name="icon_size_lookup_for_settings"
78729               c:identifier="gtk_icon_size_lookup_for_settings"
78730               version="2.2">
78731       <doc xml:whitespace="preserve">Obtains the pixel size of a semantic icon size, possibly
78732 modified by user preferences for a particular
78733 #GtkSettings. Normally @size would be
78734 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_BUTTON, etc.  This function
78735 isn't normally needed, gtk_widget_render_icon() is the usual
78736 way to get an icon for rendering, then just look at the size of
78737 the rendered pixbuf. The rendered pixbuf may not even correspond to
78738 the width/height returned by gtk_icon_size_lookup(), because themes
78739 are free to render the pixbuf however they like, including changing
78740 the usual size.</doc>
78741       <return-value transfer-ownership="none">
78742         <doc xml:whitespace="preserve">%TRUE if @size was a valid size</doc>
78743         <type name="gboolean" c:type="gboolean"/>
78744       </return-value>
78745       <parameters>
78746         <parameter name="settings" transfer-ownership="none">
78747           <doc xml:whitespace="preserve">a #GtkSettings object, used to determine which set of user preferences to used.</doc>
78748           <type name="Settings" c:type="GtkSettings*"/>
78749         </parameter>
78750         <parameter name="size" transfer-ownership="none">
78751           <doc xml:whitespace="preserve">an icon size</doc>
78752           <type name="gint"/>
78753         </parameter>
78754         <parameter name="width" transfer-ownership="none">
78755           <doc xml:whitespace="preserve">location to store icon width</doc>
78756           <type name="gint" c:type="gint*"/>
78757         </parameter>
78758         <parameter name="height" transfer-ownership="none">
78759           <doc xml:whitespace="preserve">location to store icon height</doc>
78760           <type name="gint" c:type="gint*"/>
78761         </parameter>
78762       </parameters>
78763     </function>
78764     <function name="icon_size_register" c:identifier="gtk_icon_size_register">
78765       <doc xml:whitespace="preserve">Registers a new icon size, along the same lines as #GTK_ICON_SIZE_MENU,
78766 etc. Returns the integer value for the size.</doc>
78767       <return-value transfer-ownership="none">
78768         <doc xml:whitespace="preserve">integer value representing the size</doc>
78769         <type name="gint"/>
78770       </return-value>
78771       <parameters>
78772         <parameter name="name" transfer-ownership="none">
78773           <doc xml:whitespace="preserve">name of the icon size</doc>
78774           <type name="utf8" c:type="gchar*"/>
78775         </parameter>
78776         <parameter name="width" transfer-ownership="none">
78777           <doc xml:whitespace="preserve">the icon width</doc>
78778           <type name="gint" c:type="gint"/>
78779         </parameter>
78780         <parameter name="height" transfer-ownership="none">
78781           <doc xml:whitespace="preserve">the icon height</doc>
78782           <type name="gint" c:type="gint"/>
78783         </parameter>
78784       </parameters>
78785     </function>
78786     <function name="icon_size_register_alias"
78787               c:identifier="gtk_icon_size_register_alias">
78788       <doc xml:whitespace="preserve">Registers @alias as another name for @target.
78789 So calling gtk_icon_size_from_name() with @alias as argument
78790 will return @target.</doc>
78791       <return-value transfer-ownership="none">
78792         <type name="none" c:type="void"/>
78793       </return-value>
78794       <parameters>
78795         <parameter name="alias" transfer-ownership="none">
78796           <doc xml:whitespace="preserve">an alias for @target</doc>
78797           <type name="utf8" c:type="gchar*"/>
78798         </parameter>
78799         <parameter name="target" transfer-ownership="none">
78800           <doc xml:whitespace="preserve">an existing icon size</doc>
78801           <type name="gint"/>
78802         </parameter>
78803       </parameters>
78804     </function>
78805     <function name="icon_theme_error_quark"
78806               c:identifier="gtk_icon_theme_error_quark">
78807       <return-value transfer-ownership="none">
78808         <type name="GLib.Quark" c:type="GQuark"/>
78809       </return-value>
78810     </function>
78811     <function name="identifier_get_type"
78812               c:identifier="gtk_identifier_get_type">
78813       <return-value transfer-ownership="none">
78814         <type name="GType" c:type="GType"/>
78815       </return-value>
78816     </function>
78817     <function name="init" c:identifier="gtk_init">
78818       <doc xml:whitespace="preserve">Call this function before using any other GTK+ functions in your GUI
78819 applications.  It will initialize everything needed to operate the
78820 toolkit and parses some standard command line options. @argc and 
78821 never see those standard arguments. 
78822 if you are calling gtk_parse_args(), gtk_init_check(), 
78823 gtk_init_with_args() or g_option_context_parse() with 
78824 the option group returned by gtk_get_option_group(), you 
78825 &lt;emphasis&gt;don't&lt;/emphasis&gt; have to call gtk_init().
78826 &lt;note&gt;&lt;para&gt;
78827 This function will terminate your program if it was unable to initialize 
78828 the GUI for some reason. If you want your program to fall back to a 
78829 textual interface you want to call gtk_init_check() instead.
78830 &lt;/para&gt;&lt;/note&gt;
78831 &lt;note&gt;&lt;para&gt;
78832 Since 2.18, GTK+ calls &lt;literal&gt;signal (SIGPIPE, SIG_IGN)&lt;/literal&gt;
78833 during initialization, to ignore SIGPIPE signals, since these are
78834 almost never wanted in graphical applications. If you do need to
78835 handle SIGPIPE for some reason, reset the handler after gtk_init(),
78836 but notice that other libraries (e.g. libdbus or gvfs) might do
78837 similar things.
78838 &lt;/para&gt;&lt;/note&gt;</doc>
78839       <return-value transfer-ownership="none">
78840         <type name="none" c:type="void"/>
78841       </return-value>
78842       <parameters>
78843         <parameter name="argc"
78844                    direction="inout"
78845                    caller-allocates="0"
78846                    transfer-ownership="full">
78847           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argc&lt;/parameter&gt; parameter of your main() function. Changed if any arguments were handled.</doc>
78848           <type name="gint" c:type="int*"/>
78849         </parameter>
78850         <parameter name="argv"
78851                    direction="inout"
78852                    caller-allocates="0"
78853                    transfer-ownership="full"
78854                    allow-none="1">
78855           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main(). Any parameters understood by gtk_init() are stripped before return.</doc>
78856           <array length="0" c:type="char***">
78857             <type name="utf8"/>
78858           </array>
78859         </parameter>
78860       </parameters>
78861     </function>
78862     <function name="init_add" c:identifier="gtk_init_add" introspectable="0">
78863       <return-value transfer-ownership="none">
78864         <type name="none" c:type="void"/>
78865       </return-value>
78866       <parameters>
78867         <parameter name="function" transfer-ownership="none" closure="1">
78868           <type name="Function" c:type="GtkFunction"/>
78869         </parameter>
78870         <parameter name="data" transfer-ownership="none">
78871           <type name="gpointer" c:type="gpointer"/>
78872         </parameter>
78873       </parameters>
78874     </function>
78875     <function name="init_check" c:identifier="gtk_init_check">
78876       <doc xml:whitespace="preserve">This function does the same work as gtk_init() with only
78877 initialized. Instead it returns %FALSE on failure.
78878 This way the application can fall back to some other means of communication 
78879 with the user - for example a curses or command line interface.
78880 %FALSE otherwise.</doc>
78881       <return-value transfer-ownership="none">
78882         <doc xml:whitespace="preserve">%TRUE if the GUI has been successfully initialized,</doc>
78883         <type name="gboolean" c:type="gboolean"/>
78884       </return-value>
78885       <parameters>
78886         <parameter name="argc"
78887                    direction="inout"
78888                    caller-allocates="0"
78889                    transfer-ownership="full">
78890           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argc&lt;/parameter&gt; parameter of your main() function. Changed if any arguments were handled.</doc>
78891           <type name="gint" c:type="int*"/>
78892         </parameter>
78893         <parameter name="argv"
78894                    direction="inout"
78895                    caller-allocates="0"
78896                    transfer-ownership="full"
78897                    allow-none="1">
78898           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main(). Any parameters understood by gtk_init() are stripped before return.</doc>
78899           <array length="0" c:type="char***">
78900             <type name="utf8"/>
78901           </array>
78902         </parameter>
78903       </parameters>
78904     </function>
78905     <function name="init_with_args"
78906               c:identifier="gtk_init_with_args"
78907               version="2.6"
78908               throws="1">
78909       <doc xml:whitespace="preserve">This function does the same work as gtk_init_check().
78910 Additionally, it allows you to add your own commandline options,
78911 and it automatically generates nicely formatted
78912 &lt;option&gt;--help&lt;/option&gt; output. Note that your program will
78913 be terminated after writing out the help output.
78914 %FALSE otherwise.</doc>
78915       <return-value transfer-ownership="none">
78916         <doc xml:whitespace="preserve">%TRUE if the GUI has been successfully initialized,</doc>
78917         <type name="gboolean" c:type="gboolean"/>
78918       </return-value>
78919       <parameters>
78920         <parameter name="argc" transfer-ownership="none">
78921           <doc xml:whitespace="preserve">a pointer to the number of command line arguments.</doc>
78922           <type name="gint" c:type="gint*"/>
78923         </parameter>
78924         <parameter name="argv" transfer-ownership="none">
78925           <doc xml:whitespace="preserve">a pointer to the array of command line arguments.</doc>
78926           <type name="utf8" c:type="gchar***"/>
78927         </parameter>
78928         <parameter name="parameter_string" transfer-ownership="none">
78929           <doc xml:whitespace="preserve">a string which is displayed in the first line of &lt;option&gt;--help&lt;/option&gt; output, after &lt;literal&gt;&lt;replaceable&gt;programname&lt;/replaceable&gt; [OPTION...]&lt;/literal&gt;</doc>
78930           <type name="utf8" c:type="gchar*"/>
78931         </parameter>
78932         <parameter name="entries" transfer-ownership="none">
78933           <doc xml:whitespace="preserve">a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s describing the options of your program</doc>
78934           <type name="GLib.OptionEntry" c:type="GOptionEntry*"/>
78935         </parameter>
78936         <parameter name="translation_domain" transfer-ownership="none">
78937           <doc xml:whitespace="preserve">a translation domain to use for translating the &lt;option&gt;--help&lt;/option&gt; output for the options in @entries and the @parameter_string with gettext(), or %NULL</doc>
78938           <type name="utf8" c:type="gchar*"/>
78939         </parameter>
78940       </parameters>
78941     </function>
78942     <function name="key_snooper_install"
78943               c:identifier="gtk_key_snooper_install"
78944               introspectable="0">
78945       <return-value transfer-ownership="none">
78946         <type name="guint" c:type="guint"/>
78947       </return-value>
78948       <parameters>
78949         <parameter name="snooper" transfer-ownership="none" closure="1">
78950           <type name="KeySnoopFunc" c:type="GtkKeySnoopFunc"/>
78951         </parameter>
78952         <parameter name="func_data" transfer-ownership="none">
78953           <type name="gpointer" c:type="gpointer"/>
78954         </parameter>
78955       </parameters>
78956     </function>
78957     <function name="key_snooper_remove" c:identifier="gtk_key_snooper_remove">
78958       <return-value transfer-ownership="none">
78959         <type name="none" c:type="void"/>
78960       </return-value>
78961       <parameters>
78962         <parameter name="snooper_handler_id" transfer-ownership="none">
78963           <type name="guint" c:type="guint"/>
78964         </parameter>
78965       </parameters>
78966     </function>
78967     <function name="main" c:identifier="gtk_main">
78968       <return-value transfer-ownership="none">
78969         <type name="none" c:type="void"/>
78970       </return-value>
78971     </function>
78972     <function name="main_do_event" c:identifier="gtk_main_do_event">
78973       <return-value transfer-ownership="none">
78974         <type name="none" c:type="void"/>
78975       </return-value>
78976       <parameters>
78977         <parameter name="event" transfer-ownership="none">
78978           <type name="Gdk.Event" c:type="GdkEvent*"/>
78979         </parameter>
78980       </parameters>
78981     </function>
78982     <function name="main_iteration" c:identifier="gtk_main_iteration">
78983       <return-value transfer-ownership="none">
78984         <type name="gboolean" c:type="gboolean"/>
78985       </return-value>
78986     </function>
78987     <function name="main_iteration_do" c:identifier="gtk_main_iteration_do">
78988       <return-value transfer-ownership="none">
78989         <type name="gboolean" c:type="gboolean"/>
78990       </return-value>
78991       <parameters>
78992         <parameter name="blocking" transfer-ownership="none">
78993           <type name="gboolean" c:type="gboolean"/>
78994         </parameter>
78995       </parameters>
78996     </function>
78997     <function name="main_level" c:identifier="gtk_main_level">
78998       <return-value transfer-ownership="none">
78999         <type name="guint" c:type="guint"/>
79000       </return-value>
79001     </function>
79002     <function name="main_quit" c:identifier="gtk_main_quit">
79003       <return-value transfer-ownership="none">
79004         <type name="none" c:type="void"/>
79005       </return-value>
79006     </function>
79007     <function name="paint_arrow" c:identifier="gtk_paint_arrow">
79008       <doc xml:whitespace="preserve">Draws an arrow in the given rectangle on @window using the given 
79009 parameters. @arrow_type determines the direction of the arrow.</doc>
79010       <return-value transfer-ownership="none">
79011         <type name="none" c:type="void"/>
79012       </return-value>
79013       <parameters>
79014         <parameter name="style" transfer-ownership="none">
79015           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79016           <type name="Style" c:type="GtkStyle*"/>
79017         </parameter>
79018         <parameter name="window" transfer-ownership="none">
79019           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79020           <type name="Gdk.Window" c:type="GdkWindow*"/>
79021         </parameter>
79022         <parameter name="state_type" transfer-ownership="none">
79023           <doc xml:whitespace="preserve">a state</doc>
79024           <type name="StateType" c:type="GtkStateType"/>
79025         </parameter>
79026         <parameter name="shadow_type" transfer-ownership="none">
79027           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79028           <type name="ShadowType" c:type="GtkShadowType"/>
79029         </parameter>
79030         <parameter name="area" transfer-ownership="none" allow-none="1">
79031           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79032           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79033         </parameter>
79034         <parameter name="widget" transfer-ownership="none" allow-none="1">
79035           <doc xml:whitespace="preserve">the widget</doc>
79036           <type name="Widget" c:type="GtkWidget*"/>
79037         </parameter>
79038         <parameter name="detail" transfer-ownership="none" allow-none="1">
79039           <doc xml:whitespace="preserve">a style detail</doc>
79040           <type name="utf8" c:type="gchar*"/>
79041         </parameter>
79042         <parameter name="arrow_type" transfer-ownership="none">
79043           <doc xml:whitespace="preserve">the type of arrow to draw</doc>
79044           <type name="ArrowType" c:type="GtkArrowType"/>
79045         </parameter>
79046         <parameter name="fill" transfer-ownership="none">
79047           <doc xml:whitespace="preserve">%TRUE if the arrow tip should be filled</doc>
79048           <type name="gboolean" c:type="gboolean"/>
79049         </parameter>
79050         <parameter name="x" transfer-ownership="none">
79051           <doc xml:whitespace="preserve">x origin of the rectangle to draw the arrow in</doc>
79052           <type name="gint" c:type="gint"/>
79053         </parameter>
79054         <parameter name="y" transfer-ownership="none">
79055           <doc xml:whitespace="preserve">y origin of the rectangle to draw the arrow in</doc>
79056           <type name="gint" c:type="gint"/>
79057         </parameter>
79058         <parameter name="width" transfer-ownership="none">
79059           <doc xml:whitespace="preserve">width of the rectangle to draw the arrow in</doc>
79060           <type name="gint" c:type="gint"/>
79061         </parameter>
79062         <parameter name="height" transfer-ownership="none">
79063           <doc xml:whitespace="preserve">height of the rectangle to draw the arrow in</doc>
79064           <type name="gint" c:type="gint"/>
79065         </parameter>
79066       </parameters>
79067     </function>
79068     <function name="paint_box" c:identifier="gtk_paint_box">
79069       <doc xml:whitespace="preserve">Draws a box on @window with the given parameters.</doc>
79070       <return-value transfer-ownership="none">
79071         <type name="none" c:type="void"/>
79072       </return-value>
79073       <parameters>
79074         <parameter name="style" transfer-ownership="none">
79075           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79076           <type name="Style" c:type="GtkStyle*"/>
79077         </parameter>
79078         <parameter name="window" transfer-ownership="none">
79079           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79080           <type name="Gdk.Window" c:type="GdkWindow*"/>
79081         </parameter>
79082         <parameter name="state_type" transfer-ownership="none">
79083           <doc xml:whitespace="preserve">a state</doc>
79084           <type name="StateType" c:type="GtkStateType"/>
79085         </parameter>
79086         <parameter name="shadow_type" transfer-ownership="none">
79087           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79088           <type name="ShadowType" c:type="GtkShadowType"/>
79089         </parameter>
79090         <parameter name="area" transfer-ownership="none" allow-none="1">
79091           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79092           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79093         </parameter>
79094         <parameter name="widget" transfer-ownership="none" allow-none="1">
79095           <doc xml:whitespace="preserve">the widget</doc>
79096           <type name="Widget" c:type="GtkWidget*"/>
79097         </parameter>
79098         <parameter name="detail" transfer-ownership="none" allow-none="1">
79099           <doc xml:whitespace="preserve">a style detail</doc>
79100           <type name="utf8" c:type="gchar*"/>
79101         </parameter>
79102         <parameter name="x" transfer-ownership="none">
79103           <doc xml:whitespace="preserve">x origin of the box</doc>
79104           <type name="gint" c:type="gint"/>
79105         </parameter>
79106         <parameter name="y" transfer-ownership="none">
79107           <doc xml:whitespace="preserve">y origin of the box</doc>
79108           <type name="gint" c:type="gint"/>
79109         </parameter>
79110         <parameter name="width" transfer-ownership="none">
79111           <doc xml:whitespace="preserve">the width of the box</doc>
79112           <type name="gint" c:type="gint"/>
79113         </parameter>
79114         <parameter name="height" transfer-ownership="none">
79115           <doc xml:whitespace="preserve">the height of the box</doc>
79116           <type name="gint" c:type="gint"/>
79117         </parameter>
79118       </parameters>
79119     </function>
79120     <function name="paint_box_gap" c:identifier="gtk_paint_box_gap">
79121       <doc xml:whitespace="preserve">Draws a box in @window using the given style and state and shadow type, 
79122 leaving a gap in one side.</doc>
79123       <return-value transfer-ownership="none">
79124         <type name="none" c:type="void"/>
79125       </return-value>
79126       <parameters>
79127         <parameter name="style" transfer-ownership="none">
79128           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79129           <type name="Style" c:type="GtkStyle*"/>
79130         </parameter>
79131         <parameter name="window" transfer-ownership="none">
79132           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79133           <type name="Gdk.Window" c:type="GdkWindow*"/>
79134         </parameter>
79135         <parameter name="state_type" transfer-ownership="none">
79136           <doc xml:whitespace="preserve">a state</doc>
79137           <type name="StateType" c:type="GtkStateType"/>
79138         </parameter>
79139         <parameter name="shadow_type" transfer-ownership="none">
79140           <doc xml:whitespace="preserve">type of shadow to draw</doc>
79141           <type name="ShadowType" c:type="GtkShadowType"/>
79142         </parameter>
79143         <parameter name="area" transfer-ownership="none" allow-none="1">
79144           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79145           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79146         </parameter>
79147         <parameter name="widget" transfer-ownership="none" allow-none="1">
79148           <doc xml:whitespace="preserve">the widget</doc>
79149           <type name="Widget" c:type="GtkWidget*"/>
79150         </parameter>
79151         <parameter name="detail" transfer-ownership="none" allow-none="1">
79152           <doc xml:whitespace="preserve">a style detail</doc>
79153           <type name="utf8" c:type="gchar*"/>
79154         </parameter>
79155         <parameter name="x" transfer-ownership="none">
79156           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
79157           <type name="gint" c:type="gint"/>
79158         </parameter>
79159         <parameter name="y" transfer-ownership="none">
79160           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
79161           <type name="gint" c:type="gint"/>
79162         </parameter>
79163         <parameter name="width" transfer-ownership="none">
79164           <doc xml:whitespace="preserve">width of the rectangle</doc>
79165           <type name="gint" c:type="gint"/>
79166         </parameter>
79167         <parameter name="height" transfer-ownership="none">
79168           <doc xml:whitespace="preserve">width of the rectangle</doc>
79169           <type name="gint" c:type="gint"/>
79170         </parameter>
79171         <parameter name="gap_side" transfer-ownership="none">
79172           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
79173           <type name="PositionType" c:type="GtkPositionType"/>
79174         </parameter>
79175         <parameter name="gap_x" transfer-ownership="none">
79176           <doc xml:whitespace="preserve">starting position of the gap</doc>
79177           <type name="gint" c:type="gint"/>
79178         </parameter>
79179         <parameter name="gap_width" transfer-ownership="none">
79180           <doc xml:whitespace="preserve">width of the gap</doc>
79181           <type name="gint" c:type="gint"/>
79182         </parameter>
79183       </parameters>
79184     </function>
79185     <function name="paint_check" c:identifier="gtk_paint_check">
79186       <doc xml:whitespace="preserve">Draws a check button indicator in the given rectangle on @window with 
79187 the given parameters.</doc>
79188       <return-value transfer-ownership="none">
79189         <type name="none" c:type="void"/>
79190       </return-value>
79191       <parameters>
79192         <parameter name="style" transfer-ownership="none">
79193           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79194           <type name="Style" c:type="GtkStyle*"/>
79195         </parameter>
79196         <parameter name="window" transfer-ownership="none">
79197           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79198           <type name="Gdk.Window" c:type="GdkWindow*"/>
79199         </parameter>
79200         <parameter name="state_type" transfer-ownership="none">
79201           <doc xml:whitespace="preserve">a state</doc>
79202           <type name="StateType" c:type="GtkStateType"/>
79203         </parameter>
79204         <parameter name="shadow_type" transfer-ownership="none">
79205           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79206           <type name="ShadowType" c:type="GtkShadowType"/>
79207         </parameter>
79208         <parameter name="area" transfer-ownership="none" allow-none="1">
79209           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79210           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79211         </parameter>
79212         <parameter name="widget" transfer-ownership="none" allow-none="1">
79213           <doc xml:whitespace="preserve">the widget</doc>
79214           <type name="Widget" c:type="GtkWidget*"/>
79215         </parameter>
79216         <parameter name="detail" transfer-ownership="none" allow-none="1">
79217           <doc xml:whitespace="preserve">a style detail</doc>
79218           <type name="utf8" c:type="gchar*"/>
79219         </parameter>
79220         <parameter name="x" transfer-ownership="none">
79221           <doc xml:whitespace="preserve">x origin of the rectangle to draw the check in</doc>
79222           <type name="gint" c:type="gint"/>
79223         </parameter>
79224         <parameter name="y" transfer-ownership="none">
79225           <doc xml:whitespace="preserve">y origin of the rectangle to draw the check in</doc>
79226           <type name="gint" c:type="gint"/>
79227         </parameter>
79228         <parameter name="width" transfer-ownership="none">
79229           <doc xml:whitespace="preserve">the width of the rectangle to draw the check in</doc>
79230           <type name="gint" c:type="gint"/>
79231         </parameter>
79232         <parameter name="height" transfer-ownership="none">
79233           <doc xml:whitespace="preserve">the height of the rectangle to draw the check in</doc>
79234           <type name="gint" c:type="gint"/>
79235         </parameter>
79236       </parameters>
79237     </function>
79238     <function name="paint_diamond" c:identifier="gtk_paint_diamond">
79239       <doc xml:whitespace="preserve">Draws a diamond in the given rectangle on @window using the given
79240 parameters.</doc>
79241       <return-value transfer-ownership="none">
79242         <type name="none" c:type="void"/>
79243       </return-value>
79244       <parameters>
79245         <parameter name="style" transfer-ownership="none">
79246           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79247           <type name="Style" c:type="GtkStyle*"/>
79248         </parameter>
79249         <parameter name="window" transfer-ownership="none">
79250           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79251           <type name="Gdk.Window" c:type="GdkWindow*"/>
79252         </parameter>
79253         <parameter name="state_type" transfer-ownership="none">
79254           <doc xml:whitespace="preserve">a state</doc>
79255           <type name="StateType" c:type="GtkStateType"/>
79256         </parameter>
79257         <parameter name="shadow_type" transfer-ownership="none">
79258           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79259           <type name="ShadowType" c:type="GtkShadowType"/>
79260         </parameter>
79261         <parameter name="area" transfer-ownership="none" allow-none="1">
79262           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79263           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79264         </parameter>
79265         <parameter name="widget" transfer-ownership="none" allow-none="1">
79266           <doc xml:whitespace="preserve">the widget</doc>
79267           <type name="Widget" c:type="GtkWidget*"/>
79268         </parameter>
79269         <parameter name="detail" transfer-ownership="none" allow-none="1">
79270           <doc xml:whitespace="preserve">a style detail</doc>
79271           <type name="utf8" c:type="gchar*"/>
79272         </parameter>
79273         <parameter name="x" transfer-ownership="none">
79274           <doc xml:whitespace="preserve">x origin of the rectangle to draw the diamond in</doc>
79275           <type name="gint" c:type="gint"/>
79276         </parameter>
79277         <parameter name="y" transfer-ownership="none">
79278           <doc xml:whitespace="preserve">y origin of the rectangle to draw the diamond in</doc>
79279           <type name="gint" c:type="gint"/>
79280         </parameter>
79281         <parameter name="width" transfer-ownership="none">
79282           <doc xml:whitespace="preserve">width of the rectangle to draw the diamond in</doc>
79283           <type name="gint" c:type="gint"/>
79284         </parameter>
79285         <parameter name="height" transfer-ownership="none">
79286           <doc xml:whitespace="preserve">height of the rectangle to draw the diamond in</doc>
79287           <type name="gint" c:type="gint"/>
79288         </parameter>
79289       </parameters>
79290     </function>
79291     <function name="paint_expander" c:identifier="gtk_paint_expander">
79292       <doc xml:whitespace="preserve">Draws an expander as used in #GtkTreeView. @x and @y specify the
79293 center the expander. The size of the expander is determined by the
79294 "expander-size" style property of @widget.  (If widget is not
79295 specified or doesn't have an "expander-size" property, an
79296 unspecified default size will be used, since the caller doesn't
79297 have sufficient information to position the expander, this is
79298 likely not useful.) The expander is expander_size pixels tall
79299 in the collapsed position and expander_size pixels wide in the
79300 expanded position.</doc>
79301       <return-value transfer-ownership="none">
79302         <type name="none" c:type="void"/>
79303       </return-value>
79304       <parameters>
79305         <parameter name="style" transfer-ownership="none">
79306           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79307           <type name="Style" c:type="GtkStyle*"/>
79308         </parameter>
79309         <parameter name="window" transfer-ownership="none">
79310           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79311           <type name="Gdk.Window" c:type="GdkWindow*"/>
79312         </parameter>
79313         <parameter name="state_type" transfer-ownership="none">
79314           <doc xml:whitespace="preserve">a state</doc>
79315           <type name="StateType" c:type="GtkStateType"/>
79316         </parameter>
79317         <parameter name="area" transfer-ownership="none" allow-none="1">
79318           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79319           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79320         </parameter>
79321         <parameter name="widget" transfer-ownership="none" allow-none="1">
79322           <doc xml:whitespace="preserve">the widget</doc>
79323           <type name="Widget" c:type="GtkWidget*"/>
79324         </parameter>
79325         <parameter name="detail" transfer-ownership="none" allow-none="1">
79326           <doc xml:whitespace="preserve">a style detail</doc>
79327           <type name="utf8" c:type="gchar*"/>
79328         </parameter>
79329         <parameter name="x" transfer-ownership="none">
79330           <doc xml:whitespace="preserve">the x position to draw the expander at</doc>
79331           <type name="gint" c:type="gint"/>
79332         </parameter>
79333         <parameter name="y" transfer-ownership="none">
79334           <doc xml:whitespace="preserve">the y position to draw the expander at</doc>
79335           <type name="gint" c:type="gint"/>
79336         </parameter>
79337         <parameter name="expander_style" transfer-ownership="none">
79338           <doc xml:whitespace="preserve">the style to draw the expander in; determines whether the expander is collapsed, expanded, or in an intermediate state.</doc>
79339           <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
79340         </parameter>
79341       </parameters>
79342     </function>
79343     <function name="paint_extension" c:identifier="gtk_paint_extension">
79344       <doc xml:whitespace="preserve">Draws an extension, i.e. a notebook tab.</doc>
79345       <return-value transfer-ownership="none">
79346         <type name="none" c:type="void"/>
79347       </return-value>
79348       <parameters>
79349         <parameter name="style" transfer-ownership="none">
79350           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79351           <type name="Style" c:type="GtkStyle*"/>
79352         </parameter>
79353         <parameter name="window" transfer-ownership="none">
79354           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79355           <type name="Gdk.Window" c:type="GdkWindow*"/>
79356         </parameter>
79357         <parameter name="state_type" transfer-ownership="none">
79358           <doc xml:whitespace="preserve">a state</doc>
79359           <type name="StateType" c:type="GtkStateType"/>
79360         </parameter>
79361         <parameter name="shadow_type" transfer-ownership="none">
79362           <doc xml:whitespace="preserve">type of shadow to draw</doc>
79363           <type name="ShadowType" c:type="GtkShadowType"/>
79364         </parameter>
79365         <parameter name="area" transfer-ownership="none" allow-none="1">
79366           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79367           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79368         </parameter>
79369         <parameter name="widget" transfer-ownership="none" allow-none="1">
79370           <doc xml:whitespace="preserve">the widget</doc>
79371           <type name="Widget" c:type="GtkWidget*"/>
79372         </parameter>
79373         <parameter name="detail" transfer-ownership="none" allow-none="1">
79374           <doc xml:whitespace="preserve">a style detail</doc>
79375           <type name="utf8" c:type="gchar*"/>
79376         </parameter>
79377         <parameter name="x" transfer-ownership="none">
79378           <doc xml:whitespace="preserve">x origin of the extension</doc>
79379           <type name="gint" c:type="gint"/>
79380         </parameter>
79381         <parameter name="y" transfer-ownership="none">
79382           <doc xml:whitespace="preserve">y origin of the extension</doc>
79383           <type name="gint" c:type="gint"/>
79384         </parameter>
79385         <parameter name="width" transfer-ownership="none">
79386           <doc xml:whitespace="preserve">width of the extension</doc>
79387           <type name="gint" c:type="gint"/>
79388         </parameter>
79389         <parameter name="height" transfer-ownership="none">
79390           <doc xml:whitespace="preserve">width of the extension</doc>
79391           <type name="gint" c:type="gint"/>
79392         </parameter>
79393         <parameter name="gap_side" transfer-ownership="none">
79394           <doc xml:whitespace="preserve">the side on to which the extension is attached</doc>
79395           <type name="PositionType" c:type="GtkPositionType"/>
79396         </parameter>
79397       </parameters>
79398     </function>
79399     <function name="paint_flat_box" c:identifier="gtk_paint_flat_box">
79400       <doc xml:whitespace="preserve">Draws a flat box on @window with the given parameters.</doc>
79401       <return-value transfer-ownership="none">
79402         <type name="none" c:type="void"/>
79403       </return-value>
79404       <parameters>
79405         <parameter name="style" transfer-ownership="none">
79406           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79407           <type name="Style" c:type="GtkStyle*"/>
79408         </parameter>
79409         <parameter name="window" transfer-ownership="none">
79410           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79411           <type name="Gdk.Window" c:type="GdkWindow*"/>
79412         </parameter>
79413         <parameter name="state_type" transfer-ownership="none">
79414           <doc xml:whitespace="preserve">a state</doc>
79415           <type name="StateType" c:type="GtkStateType"/>
79416         </parameter>
79417         <parameter name="shadow_type" transfer-ownership="none">
79418           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79419           <type name="ShadowType" c:type="GtkShadowType"/>
79420         </parameter>
79421         <parameter name="area" transfer-ownership="none" allow-none="1">
79422           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79423           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79424         </parameter>
79425         <parameter name="widget" transfer-ownership="none" allow-none="1">
79426           <doc xml:whitespace="preserve">the widget</doc>
79427           <type name="Widget" c:type="GtkWidget*"/>
79428         </parameter>
79429         <parameter name="detail" transfer-ownership="none" allow-none="1">
79430           <doc xml:whitespace="preserve">a style detail</doc>
79431           <type name="utf8" c:type="gchar*"/>
79432         </parameter>
79433         <parameter name="x" transfer-ownership="none">
79434           <doc xml:whitespace="preserve">x origin of the box</doc>
79435           <type name="gint" c:type="gint"/>
79436         </parameter>
79437         <parameter name="y" transfer-ownership="none">
79438           <doc xml:whitespace="preserve">y origin of the box</doc>
79439           <type name="gint" c:type="gint"/>
79440         </parameter>
79441         <parameter name="width" transfer-ownership="none">
79442           <doc xml:whitespace="preserve">the width of the box</doc>
79443           <type name="gint" c:type="gint"/>
79444         </parameter>
79445         <parameter name="height" transfer-ownership="none">
79446           <doc xml:whitespace="preserve">the height of the box</doc>
79447           <type name="gint" c:type="gint"/>
79448         </parameter>
79449       </parameters>
79450     </function>
79451     <function name="paint_focus" c:identifier="gtk_paint_focus">
79452       <doc xml:whitespace="preserve">Draws a focus indicator around the given rectangle on @window using the
79453 given style.</doc>
79454       <return-value transfer-ownership="none">
79455         <type name="none" c:type="void"/>
79456       </return-value>
79457       <parameters>
79458         <parameter name="style" transfer-ownership="none">
79459           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79460           <type name="Style" c:type="GtkStyle*"/>
79461         </parameter>
79462         <parameter name="window" transfer-ownership="none">
79463           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79464           <type name="Gdk.Window" c:type="GdkWindow*"/>
79465         </parameter>
79466         <parameter name="state_type" transfer-ownership="none">
79467           <doc xml:whitespace="preserve">a state</doc>
79468           <type name="StateType" c:type="GtkStateType"/>
79469         </parameter>
79470         <parameter name="area" transfer-ownership="none" allow-none="1">
79471           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79472           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79473         </parameter>
79474         <parameter name="widget" transfer-ownership="none" allow-none="1">
79475           <doc xml:whitespace="preserve">the widget</doc>
79476           <type name="Widget" c:type="GtkWidget*"/>
79477         </parameter>
79478         <parameter name="detail" transfer-ownership="none" allow-none="1">
79479           <doc xml:whitespace="preserve">a style detail</doc>
79480           <type name="utf8" c:type="gchar*"/>
79481         </parameter>
79482         <parameter name="x" transfer-ownership="none">
79483           <doc xml:whitespace="preserve">the x origin of the rectangle around which to draw a focus indicator</doc>
79484           <type name="gint" c:type="gint"/>
79485         </parameter>
79486         <parameter name="y" transfer-ownership="none">
79487           <doc xml:whitespace="preserve">the y origin of the rectangle around which to draw a focus indicator</doc>
79488           <type name="gint" c:type="gint"/>
79489         </parameter>
79490         <parameter name="width" transfer-ownership="none">
79491           <doc xml:whitespace="preserve">the width of the rectangle around which to draw a focus indicator</doc>
79492           <type name="gint" c:type="gint"/>
79493         </parameter>
79494         <parameter name="height" transfer-ownership="none">
79495           <doc xml:whitespace="preserve">the height of the rectangle around which to draw a focus indicator</doc>
79496           <type name="gint" c:type="gint"/>
79497         </parameter>
79498       </parameters>
79499     </function>
79500     <function name="paint_handle" c:identifier="gtk_paint_handle">
79501       <doc xml:whitespace="preserve">Draws a handle as used in #GtkHandleBox and #GtkPaned.</doc>
79502       <return-value transfer-ownership="none">
79503         <type name="none" c:type="void"/>
79504       </return-value>
79505       <parameters>
79506         <parameter name="style" transfer-ownership="none">
79507           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79508           <type name="Style" c:type="GtkStyle*"/>
79509         </parameter>
79510         <parameter name="window" transfer-ownership="none">
79511           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79512           <type name="Gdk.Window" c:type="GdkWindow*"/>
79513         </parameter>
79514         <parameter name="state_type" transfer-ownership="none">
79515           <doc xml:whitespace="preserve">a state</doc>
79516           <type name="StateType" c:type="GtkStateType"/>
79517         </parameter>
79518         <parameter name="shadow_type" transfer-ownership="none">
79519           <doc xml:whitespace="preserve">type of shadow to draw</doc>
79520           <type name="ShadowType" c:type="GtkShadowType"/>
79521         </parameter>
79522         <parameter name="area" transfer-ownership="none" allow-none="1">
79523           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79524           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79525         </parameter>
79526         <parameter name="widget" transfer-ownership="none" allow-none="1">
79527           <doc xml:whitespace="preserve">the widget</doc>
79528           <type name="Widget" c:type="GtkWidget*"/>
79529         </parameter>
79530         <parameter name="detail" transfer-ownership="none" allow-none="1">
79531           <doc xml:whitespace="preserve">a style detail</doc>
79532           <type name="utf8" c:type="gchar*"/>
79533         </parameter>
79534         <parameter name="x" transfer-ownership="none">
79535           <doc xml:whitespace="preserve">x origin of the handle</doc>
79536           <type name="gint" c:type="gint"/>
79537         </parameter>
79538         <parameter name="y" transfer-ownership="none">
79539           <doc xml:whitespace="preserve">y origin of the handle</doc>
79540           <type name="gint" c:type="gint"/>
79541         </parameter>
79542         <parameter name="width" transfer-ownership="none">
79543           <doc xml:whitespace="preserve">with of the handle</doc>
79544           <type name="gint" c:type="gint"/>
79545         </parameter>
79546         <parameter name="height" transfer-ownership="none">
79547           <doc xml:whitespace="preserve">height of the handle</doc>
79548           <type name="gint" c:type="gint"/>
79549         </parameter>
79550         <parameter name="orientation" transfer-ownership="none">
79551           <doc xml:whitespace="preserve">the orientation of the handle</doc>
79552           <type name="Orientation" c:type="GtkOrientation"/>
79553         </parameter>
79554       </parameters>
79555     </function>
79556     <function name="paint_hline" c:identifier="gtk_paint_hline">
79557       <doc xml:whitespace="preserve">Draws a horizontal line from (@x1, @y) to (@x2, @y) in @window
79558 using the given style and state.</doc>
79559       <return-value transfer-ownership="none">
79560         <type name="none" c:type="void"/>
79561       </return-value>
79562       <parameters>
79563         <parameter name="style" transfer-ownership="none">
79564           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79565           <type name="Style" c:type="GtkStyle*"/>
79566         </parameter>
79567         <parameter name="window" transfer-ownership="none">
79568           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79569           <type name="Gdk.Window" c:type="GdkWindow*"/>
79570         </parameter>
79571         <parameter name="state_type" transfer-ownership="none">
79572           <doc xml:whitespace="preserve">a state</doc>
79573           <type name="StateType" c:type="GtkStateType"/>
79574         </parameter>
79575         <parameter name="area" transfer-ownership="none" allow-none="1">
79576           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
79577           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79578         </parameter>
79579         <parameter name="widget" transfer-ownership="none" allow-none="1">
79580           <doc xml:whitespace="preserve">the widget</doc>
79581           <type name="Widget" c:type="GtkWidget*"/>
79582         </parameter>
79583         <parameter name="detail" transfer-ownership="none" allow-none="1">
79584           <doc xml:whitespace="preserve">a style detail</doc>
79585           <type name="utf8" c:type="gchar*"/>
79586         </parameter>
79587         <parameter name="x1" transfer-ownership="none">
79588           <doc xml:whitespace="preserve">the starting x coordinate</doc>
79589           <type name="gint" c:type="gint"/>
79590         </parameter>
79591         <parameter name="x2" transfer-ownership="none">
79592           <doc xml:whitespace="preserve">the ending x coordinate</doc>
79593           <type name="gint" c:type="gint"/>
79594         </parameter>
79595         <parameter name="y" transfer-ownership="none">
79596           <doc xml:whitespace="preserve">the y coordinate</doc>
79597           <type name="gint" c:type="gint"/>
79598         </parameter>
79599       </parameters>
79600     </function>
79601     <function name="paint_layout" c:identifier="gtk_paint_layout">
79602       <doc xml:whitespace="preserve">Draws a layout on @window using the given parameters.</doc>
79603       <return-value transfer-ownership="none">
79604         <type name="none" c:type="void"/>
79605       </return-value>
79606       <parameters>
79607         <parameter name="style" transfer-ownership="none">
79608           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79609           <type name="Style" c:type="GtkStyle*"/>
79610         </parameter>
79611         <parameter name="window" transfer-ownership="none">
79612           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79613           <type name="Gdk.Window" c:type="GdkWindow*"/>
79614         </parameter>
79615         <parameter name="state_type" transfer-ownership="none">
79616           <doc xml:whitespace="preserve">a state</doc>
79617           <type name="StateType" c:type="GtkStateType"/>
79618         </parameter>
79619         <parameter name="use_text" transfer-ownership="none">
79620           <doc xml:whitespace="preserve">whether to use the text or foreground graphics context of @style</doc>
79621           <type name="gboolean" c:type="gboolean"/>
79622         </parameter>
79623         <parameter name="area" transfer-ownership="none" allow-none="1">
79624           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79625           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79626         </parameter>
79627         <parameter name="widget" transfer-ownership="none" allow-none="1">
79628           <doc xml:whitespace="preserve">the widget</doc>
79629           <type name="Widget" c:type="GtkWidget*"/>
79630         </parameter>
79631         <parameter name="detail" transfer-ownership="none" allow-none="1">
79632           <doc xml:whitespace="preserve">a style detail</doc>
79633           <type name="utf8" c:type="gchar*"/>
79634         </parameter>
79635         <parameter name="x" transfer-ownership="none">
79636           <doc xml:whitespace="preserve">x origin</doc>
79637           <type name="gint" c:type="gint"/>
79638         </parameter>
79639         <parameter name="y" transfer-ownership="none">
79640           <doc xml:whitespace="preserve">y origin</doc>
79641           <type name="gint" c:type="gint"/>
79642         </parameter>
79643         <parameter name="layout" transfer-ownership="none">
79644           <doc xml:whitespace="preserve">the layout to draw</doc>
79645           <type name="Pango.Layout" c:type="PangoLayout*"/>
79646         </parameter>
79647       </parameters>
79648     </function>
79649     <function name="paint_option" c:identifier="gtk_paint_option">
79650       <doc xml:whitespace="preserve">Draws a radio button indicator in the given rectangle on @window with 
79651 the given parameters.</doc>
79652       <return-value transfer-ownership="none">
79653         <type name="none" c:type="void"/>
79654       </return-value>
79655       <parameters>
79656         <parameter name="style" transfer-ownership="none">
79657           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79658           <type name="Style" c:type="GtkStyle*"/>
79659         </parameter>
79660         <parameter name="window" transfer-ownership="none">
79661           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79662           <type name="Gdk.Window" c:type="GdkWindow*"/>
79663         </parameter>
79664         <parameter name="state_type" transfer-ownership="none">
79665           <doc xml:whitespace="preserve">a state</doc>
79666           <type name="StateType" c:type="GtkStateType"/>
79667         </parameter>
79668         <parameter name="shadow_type" transfer-ownership="none">
79669           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
79670           <type name="ShadowType" c:type="GtkShadowType"/>
79671         </parameter>
79672         <parameter name="area" transfer-ownership="none" allow-none="1">
79673           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79674           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79675         </parameter>
79676         <parameter name="widget" transfer-ownership="none" allow-none="1">
79677           <doc xml:whitespace="preserve">the widget</doc>
79678           <type name="Widget" c:type="GtkWidget*"/>
79679         </parameter>
79680         <parameter name="detail" transfer-ownership="none" allow-none="1">
79681           <doc xml:whitespace="preserve">a style detail</doc>
79682           <type name="utf8" c:type="gchar*"/>
79683         </parameter>
79684         <parameter name="x" transfer-ownership="none">
79685           <doc xml:whitespace="preserve">x origin of the rectangle to draw the option in</doc>
79686           <type name="gint" c:type="gint"/>
79687         </parameter>
79688         <parameter name="y" transfer-ownership="none">
79689           <doc xml:whitespace="preserve">y origin of the rectangle to draw the option in</doc>
79690           <type name="gint" c:type="gint"/>
79691         </parameter>
79692         <parameter name="width" transfer-ownership="none">
79693           <doc xml:whitespace="preserve">the width of the rectangle to draw the option in</doc>
79694           <type name="gint" c:type="gint"/>
79695         </parameter>
79696         <parameter name="height" transfer-ownership="none">
79697           <doc xml:whitespace="preserve">the height of the rectangle to draw the option in</doc>
79698           <type name="gint" c:type="gint"/>
79699         </parameter>
79700       </parameters>
79701     </function>
79702     <function name="paint_resize_grip" c:identifier="gtk_paint_resize_grip">
79703       <doc xml:whitespace="preserve">Draws a resize grip in the given rectangle on @window using the given
79704 parameters.</doc>
79705       <return-value transfer-ownership="none">
79706         <type name="none" c:type="void"/>
79707       </return-value>
79708       <parameters>
79709         <parameter name="style" transfer-ownership="none">
79710           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79711           <type name="Style" c:type="GtkStyle*"/>
79712         </parameter>
79713         <parameter name="window" transfer-ownership="none">
79714           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79715           <type name="Gdk.Window" c:type="GdkWindow*"/>
79716         </parameter>
79717         <parameter name="state_type" transfer-ownership="none">
79718           <doc xml:whitespace="preserve">a state</doc>
79719           <type name="StateType" c:type="GtkStateType"/>
79720         </parameter>
79721         <parameter name="area" transfer-ownership="none" allow-none="1">
79722           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79723           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79724         </parameter>
79725         <parameter name="widget" transfer-ownership="none" allow-none="1">
79726           <doc xml:whitespace="preserve">the widget</doc>
79727           <type name="Widget" c:type="GtkWidget*"/>
79728         </parameter>
79729         <parameter name="detail" transfer-ownership="none" allow-none="1">
79730           <doc xml:whitespace="preserve">a style detail</doc>
79731           <type name="utf8" c:type="gchar*"/>
79732         </parameter>
79733         <parameter name="edge" transfer-ownership="none">
79734           <doc xml:whitespace="preserve">the edge in which to draw the resize grip</doc>
79735           <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
79736         </parameter>
79737         <parameter name="x" transfer-ownership="none">
79738           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw the resize grip</doc>
79739           <type name="gint" c:type="gint"/>
79740         </parameter>
79741         <parameter name="y" transfer-ownership="none">
79742           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw the resize grip</doc>
79743           <type name="gint" c:type="gint"/>
79744         </parameter>
79745         <parameter name="width" transfer-ownership="none">
79746           <doc xml:whitespace="preserve">the width of the rectangle in which to draw the resize grip</doc>
79747           <type name="gint" c:type="gint"/>
79748         </parameter>
79749         <parameter name="height" transfer-ownership="none">
79750           <doc xml:whitespace="preserve">the height of the rectangle in which to draw the resize grip</doc>
79751           <type name="gint" c:type="gint"/>
79752         </parameter>
79753       </parameters>
79754     </function>
79755     <function name="paint_shadow" c:identifier="gtk_paint_shadow">
79756       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
79757 using the given style and state and shadow type.</doc>
79758       <return-value transfer-ownership="none">
79759         <type name="none" c:type="void"/>
79760       </return-value>
79761       <parameters>
79762         <parameter name="style" transfer-ownership="none">
79763           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79764           <type name="Style" c:type="GtkStyle*"/>
79765         </parameter>
79766         <parameter name="window" transfer-ownership="none">
79767           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79768           <type name="Gdk.Window" c:type="GdkWindow*"/>
79769         </parameter>
79770         <parameter name="state_type" transfer-ownership="none">
79771           <doc xml:whitespace="preserve">a state</doc>
79772           <type name="StateType" c:type="GtkStateType"/>
79773         </parameter>
79774         <parameter name="shadow_type" transfer-ownership="none">
79775           <doc xml:whitespace="preserve">type of shadow to draw</doc>
79776           <type name="ShadowType" c:type="GtkShadowType"/>
79777         </parameter>
79778         <parameter name="area" transfer-ownership="none" allow-none="1">
79779           <doc xml:whitespace="preserve">clip rectangle or %NULL if the output should not be clipped</doc>
79780           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79781         </parameter>
79782         <parameter name="widget" transfer-ownership="none" allow-none="1">
79783           <doc xml:whitespace="preserve">the widget</doc>
79784           <type name="Widget" c:type="GtkWidget*"/>
79785         </parameter>
79786         <parameter name="detail" transfer-ownership="none" allow-none="1">
79787           <doc xml:whitespace="preserve">a style detail</doc>
79788           <type name="utf8" c:type="gchar*"/>
79789         </parameter>
79790         <parameter name="x" transfer-ownership="none">
79791           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
79792           <type name="gint" c:type="gint"/>
79793         </parameter>
79794         <parameter name="y" transfer-ownership="none">
79795           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
79796           <type name="gint" c:type="gint"/>
79797         </parameter>
79798         <parameter name="width" transfer-ownership="none">
79799           <doc xml:whitespace="preserve">width of the rectangle</doc>
79800           <type name="gint" c:type="gint"/>
79801         </parameter>
79802         <parameter name="height" transfer-ownership="none">
79803           <doc xml:whitespace="preserve">width of the rectangle</doc>
79804           <type name="gint" c:type="gint"/>
79805         </parameter>
79806       </parameters>
79807     </function>
79808     <function name="paint_shadow_gap" c:identifier="gtk_paint_shadow_gap">
79809       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
79810 using the given style and state and shadow type, leaving a 
79811 gap in one side.</doc>
79812       <return-value transfer-ownership="none">
79813         <type name="none" c:type="void"/>
79814       </return-value>
79815       <parameters>
79816         <parameter name="style" transfer-ownership="none">
79817           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79818           <type name="Style" c:type="GtkStyle*"/>
79819         </parameter>
79820         <parameter name="window" transfer-ownership="none">
79821           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79822           <type name="Gdk.Window" c:type="GdkWindow*"/>
79823         </parameter>
79824         <parameter name="state_type" transfer-ownership="none">
79825           <doc xml:whitespace="preserve">a state</doc>
79826           <type name="StateType" c:type="GtkStateType"/>
79827         </parameter>
79828         <parameter name="shadow_type" transfer-ownership="none">
79829           <doc xml:whitespace="preserve">type of shadow to draw</doc>
79830           <type name="ShadowType" c:type="GtkShadowType"/>
79831         </parameter>
79832         <parameter name="area" transfer-ownership="none" allow-none="1">
79833           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79834           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79835         </parameter>
79836         <parameter name="widget" transfer-ownership="none" allow-none="1">
79837           <doc xml:whitespace="preserve">the widget</doc>
79838           <type name="Widget" c:type="GtkWidget*"/>
79839         </parameter>
79840         <parameter name="detail" transfer-ownership="none" allow-none="1">
79841           <doc xml:whitespace="preserve">a style detail</doc>
79842           <type name="utf8" c:type="gchar*"/>
79843         </parameter>
79844         <parameter name="x" transfer-ownership="none">
79845           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
79846           <type name="gint" c:type="gint"/>
79847         </parameter>
79848         <parameter name="y" transfer-ownership="none">
79849           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
79850           <type name="gint" c:type="gint"/>
79851         </parameter>
79852         <parameter name="width" transfer-ownership="none">
79853           <doc xml:whitespace="preserve">width of the rectangle</doc>
79854           <type name="gint" c:type="gint"/>
79855         </parameter>
79856         <parameter name="height" transfer-ownership="none">
79857           <doc xml:whitespace="preserve">width of the rectangle</doc>
79858           <type name="gint" c:type="gint"/>
79859         </parameter>
79860         <parameter name="gap_side" transfer-ownership="none">
79861           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
79862           <type name="PositionType" c:type="GtkPositionType"/>
79863         </parameter>
79864         <parameter name="gap_x" transfer-ownership="none">
79865           <doc xml:whitespace="preserve">starting position of the gap</doc>
79866           <type name="gint" c:type="gint"/>
79867         </parameter>
79868         <parameter name="gap_width" transfer-ownership="none">
79869           <doc xml:whitespace="preserve">width of the gap</doc>
79870           <type name="gint" c:type="gint"/>
79871         </parameter>
79872       </parameters>
79873     </function>
79874     <function name="paint_slider" c:identifier="gtk_paint_slider">
79875       <doc xml:whitespace="preserve">Draws a slider in the given rectangle on @window using the
79876 given style and orientation.</doc>
79877       <return-value transfer-ownership="none">
79878         <type name="none" c:type="void"/>
79879       </return-value>
79880       <parameters>
79881         <parameter name="style" transfer-ownership="none">
79882           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79883           <type name="Style" c:type="GtkStyle*"/>
79884         </parameter>
79885         <parameter name="window" transfer-ownership="none">
79886           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79887           <type name="Gdk.Window" c:type="GdkWindow*"/>
79888         </parameter>
79889         <parameter name="state_type" transfer-ownership="none">
79890           <doc xml:whitespace="preserve">a state</doc>
79891           <type name="StateType" c:type="GtkStateType"/>
79892         </parameter>
79893         <parameter name="shadow_type" transfer-ownership="none">
79894           <doc xml:whitespace="preserve">a shadow</doc>
79895           <type name="ShadowType" c:type="GtkShadowType"/>
79896         </parameter>
79897         <parameter name="area" transfer-ownership="none" allow-none="1">
79898           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79899           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79900         </parameter>
79901         <parameter name="widget" transfer-ownership="none" allow-none="1">
79902           <doc xml:whitespace="preserve">the widget</doc>
79903           <type name="Widget" c:type="GtkWidget*"/>
79904         </parameter>
79905         <parameter name="detail" transfer-ownership="none" allow-none="1">
79906           <doc xml:whitespace="preserve">a style detail</doc>
79907           <type name="utf8" c:type="gchar*"/>
79908         </parameter>
79909         <parameter name="x" transfer-ownership="none">
79910           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw a slider</doc>
79911           <type name="gint" c:type="gint"/>
79912         </parameter>
79913         <parameter name="y" transfer-ownership="none">
79914           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw a slider</doc>
79915           <type name="gint" c:type="gint"/>
79916         </parameter>
79917         <parameter name="width" transfer-ownership="none">
79918           <doc xml:whitespace="preserve">the width of the rectangle in which to draw a slider</doc>
79919           <type name="gint" c:type="gint"/>
79920         </parameter>
79921         <parameter name="height" transfer-ownership="none">
79922           <doc xml:whitespace="preserve">the height of the rectangle in which to draw a slider</doc>
79923           <type name="gint" c:type="gint"/>
79924         </parameter>
79925         <parameter name="orientation" transfer-ownership="none">
79926           <doc xml:whitespace="preserve">the orientation to be used</doc>
79927           <type name="Orientation" c:type="GtkOrientation"/>
79928         </parameter>
79929       </parameters>
79930     </function>
79931     <function name="paint_spinner"
79932               c:identifier="gtk_paint_spinner"
79933               version="2.20">
79934       <doc xml:whitespace="preserve">Draws a spinner on @window using the given parameters.</doc>
79935       <return-value transfer-ownership="none">
79936         <type name="none" c:type="void"/>
79937       </return-value>
79938       <parameters>
79939         <parameter name="style" transfer-ownership="none">
79940           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79941           <type name="Style" c:type="GtkStyle*"/>
79942         </parameter>
79943         <parameter name="window" transfer-ownership="none">
79944           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79945           <type name="Gdk.Window" c:type="GdkWindow*"/>
79946         </parameter>
79947         <parameter name="state_type" transfer-ownership="none">
79948           <doc xml:whitespace="preserve">a state</doc>
79949           <type name="StateType" c:type="GtkStateType"/>
79950         </parameter>
79951         <parameter name="area" transfer-ownership="none" allow-none="1">
79952           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
79953           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79954         </parameter>
79955         <parameter name="widget" transfer-ownership="none" allow-none="1">
79956           <doc xml:whitespace="preserve">the widget (may be %NULL)</doc>
79957           <type name="Widget" c:type="GtkWidget*"/>
79958         </parameter>
79959         <parameter name="detail" transfer-ownership="none" allow-none="1">
79960           <doc xml:whitespace="preserve">a style detail (may be %NULL)</doc>
79961           <type name="utf8" c:type="gchar*"/>
79962         </parameter>
79963         <parameter name="step" transfer-ownership="none">
79964           <doc xml:whitespace="preserve">the nth step, a value between 0 and #GtkSpinner:num-steps</doc>
79965           <type name="guint" c:type="guint"/>
79966         </parameter>
79967         <parameter name="x" transfer-ownership="none">
79968           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw the spinner</doc>
79969           <type name="gint" c:type="gint"/>
79970         </parameter>
79971         <parameter name="y" transfer-ownership="none">
79972           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw the spinner</doc>
79973           <type name="gint" c:type="gint"/>
79974         </parameter>
79975         <parameter name="width" transfer-ownership="none">
79976           <doc xml:whitespace="preserve">the width of the rectangle in which to draw the spinner</doc>
79977           <type name="gint" c:type="gint"/>
79978         </parameter>
79979         <parameter name="height" transfer-ownership="none">
79980           <doc xml:whitespace="preserve">the height of the rectangle in which to draw the spinner</doc>
79981           <type name="gint" c:type="gint"/>
79982         </parameter>
79983       </parameters>
79984     </function>
79985     <function name="paint_tab" c:identifier="gtk_paint_tab">
79986       <doc xml:whitespace="preserve">Draws an option menu tab (i.e. the up and down pointing arrows)
79987 in the given rectangle on @window using the given parameters.</doc>
79988       <return-value transfer-ownership="none">
79989         <type name="none" c:type="void"/>
79990       </return-value>
79991       <parameters>
79992         <parameter name="style" transfer-ownership="none">
79993           <doc xml:whitespace="preserve">a #GtkStyle</doc>
79994           <type name="Style" c:type="GtkStyle*"/>
79995         </parameter>
79996         <parameter name="window" transfer-ownership="none">
79997           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79998           <type name="Gdk.Window" c:type="GdkWindow*"/>
79999         </parameter>
80000         <parameter name="state_type" transfer-ownership="none">
80001           <doc xml:whitespace="preserve">a state</doc>
80002           <type name="StateType" c:type="GtkStateType"/>
80003         </parameter>
80004         <parameter name="shadow_type" transfer-ownership="none">
80005           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
80006           <type name="ShadowType" c:type="GtkShadowType"/>
80007         </parameter>
80008         <parameter name="area" transfer-ownership="none" allow-none="1">
80009           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
80010           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
80011         </parameter>
80012         <parameter name="widget" transfer-ownership="none" allow-none="1">
80013           <doc xml:whitespace="preserve">the widget</doc>
80014           <type name="Widget" c:type="GtkWidget*"/>
80015         </parameter>
80016         <parameter name="detail" transfer-ownership="none" allow-none="1">
80017           <doc xml:whitespace="preserve">a style detail</doc>
80018           <type name="utf8" c:type="gchar*"/>
80019         </parameter>
80020         <parameter name="x" transfer-ownership="none">
80021           <doc xml:whitespace="preserve">x origin of the rectangle to draw the tab in</doc>
80022           <type name="gint" c:type="gint"/>
80023         </parameter>
80024         <parameter name="y" transfer-ownership="none">
80025           <doc xml:whitespace="preserve">y origin of the rectangle to draw the tab in</doc>
80026           <type name="gint" c:type="gint"/>
80027         </parameter>
80028         <parameter name="width" transfer-ownership="none">
80029           <doc xml:whitespace="preserve">the width of the rectangle to draw the tab in</doc>
80030           <type name="gint" c:type="gint"/>
80031         </parameter>
80032         <parameter name="height" transfer-ownership="none">
80033           <doc xml:whitespace="preserve">the height of the rectangle to draw the tab in</doc>
80034           <type name="gint" c:type="gint"/>
80035         </parameter>
80036       </parameters>
80037     </function>
80038     <function name="paint_vline" c:identifier="gtk_paint_vline">
80039       <doc xml:whitespace="preserve">Draws a vertical line from (@x, @y1_) to (@x, @y2_) in @window
80040 using the given style and state.</doc>
80041       <return-value transfer-ownership="none">
80042         <type name="none" c:type="void"/>
80043       </return-value>
80044       <parameters>
80045         <parameter name="style" transfer-ownership="none">
80046           <doc xml:whitespace="preserve">a #GtkStyle</doc>
80047           <type name="Style" c:type="GtkStyle*"/>
80048         </parameter>
80049         <parameter name="window" transfer-ownership="none">
80050           <doc xml:whitespace="preserve">a #GdkWindow</doc>
80051           <type name="Gdk.Window" c:type="GdkWindow*"/>
80052         </parameter>
80053         <parameter name="state_type" transfer-ownership="none">
80054           <doc xml:whitespace="preserve">a state</doc>
80055           <type name="StateType" c:type="GtkStateType"/>
80056         </parameter>
80057         <parameter name="area" transfer-ownership="none" allow-none="1">
80058           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
80059           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
80060         </parameter>
80061         <parameter name="widget" transfer-ownership="none" allow-none="1">
80062           <doc xml:whitespace="preserve">the widget</doc>
80063           <type name="Widget" c:type="GtkWidget*"/>
80064         </parameter>
80065         <parameter name="detail" transfer-ownership="none" allow-none="1">
80066           <doc xml:whitespace="preserve">a style detail</doc>
80067           <type name="utf8" c:type="gchar*"/>
80068         </parameter>
80069         <parameter name="y1_" transfer-ownership="none">
80070           <doc xml:whitespace="preserve">the starting y coordinate</doc>
80071           <type name="gint" c:type="gint"/>
80072         </parameter>
80073         <parameter name="y2_" transfer-ownership="none">
80074           <doc xml:whitespace="preserve">the ending y coordinate</doc>
80075           <type name="gint" c:type="gint"/>
80076         </parameter>
80077         <parameter name="x" transfer-ownership="none">
80078           <doc xml:whitespace="preserve">the x coordinate</doc>
80079           <type name="gint" c:type="gint"/>
80080         </parameter>
80081       </parameters>
80082     </function>
80083     <function name="paper_size_get_default"
80084               c:identifier="gtk_paper_size_get_default"
80085               version="2.10">
80086       <doc xml:whitespace="preserve">Returns the name of the default paper size, which 
80087 depends on the current locale.  
80088 is owned by GTK+ and should not be modified.</doc>
80089       <return-value transfer-ownership="none">
80090         <doc xml:whitespace="preserve">the name of the default paper size. The string</doc>
80091         <type name="utf8" c:type="gchar*"/>
80092       </return-value>
80093     </function>
80094     <function name="paper_size_get_paper_sizes"
80095               c:identifier="gtk_paper_size_get_paper_sizes"
80096               version="2.12">
80097       <doc xml:whitespace="preserve">Creates a list of known paper sizes.
80098 allocated #GtkPaperSize objects</doc>
80099       <return-value transfer-ownership="full">
80100         <doc xml:whitespace="preserve">a newly allocated list of newly</doc>
80101         <type name="GLib.List" c:type="GList*">
80102           <type name="PaperSize"/>
80103         </type>
80104       </return-value>
80105       <parameters>
80106         <parameter name="include_custom" transfer-ownership="none">
80107           <doc xml:whitespace="preserve">whether to include custom paper sizes as defined in the page setup dialog</doc>
80108           <type name="gboolean" c:type="gboolean"/>
80109         </parameter>
80110       </parameters>
80111     </function>
80112     <function name="parse_args" c:identifier="gtk_parse_args">
80113       <doc xml:whitespace="preserve">Parses command line arguments, and initializes global
80114 attributes of GTK+, but does not actually open a connection
80115 to a display. (See gdk_display_open(), gdk_get_display_arg_name())
80116 Any arguments used by GTK+ or GDK are removed from the array and
80117 You shouldn't call this function explicitely if you are using
80118 gtk_init(), or gtk_init_check().</doc>
80119       <return-value transfer-ownership="none">
80120         <doc xml:whitespace="preserve">%TRUE if initialization succeeded, otherwise %FALSE.</doc>
80121         <type name="gboolean" c:type="gboolean"/>
80122       </return-value>
80123       <parameters>
80124         <parameter name="argc"
80125                    direction="inout"
80126                    caller-allocates="0"
80127                    transfer-ownership="full">
80128           <doc xml:whitespace="preserve">a pointer to the number of command line arguments.</doc>
80129           <type name="gint" c:type="int*"/>
80130         </parameter>
80131         <parameter name="argv"
80132                    direction="inout"
80133                    caller-allocates="0"
80134                    transfer-ownership="full">
80135           <doc xml:whitespace="preserve">a pointer to the array of command line arguments.</doc>
80136           <array c:type="char***">
80137             <type name="utf8"/>
80138           </array>
80139         </parameter>
80140       </parameters>
80141     </function>
80142     <function name="print_error_quark"
80143               c:identifier="gtk_print_error_quark"
80144               version="2.10">
80145       <doc xml:whitespace="preserve">Registers an error quark for #GtkPrintOperation if necessary.</doc>
80146       <return-value transfer-ownership="none">
80147         <doc xml:whitespace="preserve">The error quark used for #GtkPrintOperation errors.</doc>
80148         <type name="GLib.Quark" c:type="GQuark"/>
80149       </return-value>
80150     </function>
80151     <function name="print_run_page_setup_dialog"
80152               c:identifier="gtk_print_run_page_setup_dialog"
80153               introspectable="0">
80154       <return-value>
80155         <type name="PageSetup" c:type="GtkPageSetup*"/>
80156       </return-value>
80157       <parameters>
80158         <parameter name="parent" transfer-ownership="none">
80159           <type name="Window" c:type="GtkWindow*"/>
80160         </parameter>
80161         <parameter name="page_setup" transfer-ownership="none">
80162           <type name="PageSetup" c:type="GtkPageSetup*"/>
80163         </parameter>
80164         <parameter name="settings" transfer-ownership="none">
80165           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
80166         </parameter>
80167       </parameters>
80168     </function>
80169     <function name="print_run_page_setup_dialog_async"
80170               c:identifier="gtk_print_run_page_setup_dialog_async"
80171               introspectable="0">
80172       <return-value transfer-ownership="none">
80173         <type name="none" c:type="void"/>
80174       </return-value>
80175       <parameters>
80176         <parameter name="parent" transfer-ownership="none">
80177           <type name="Window" c:type="GtkWindow*"/>
80178         </parameter>
80179         <parameter name="page_setup" transfer-ownership="none">
80180           <type name="PageSetup" c:type="GtkPageSetup*"/>
80181         </parameter>
80182         <parameter name="settings" transfer-ownership="none">
80183           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
80184         </parameter>
80185         <parameter name="done_cb" transfer-ownership="none" closure="4">
80186           <type name="PageSetupDoneFunc" c:type="GtkPageSetupDoneFunc"/>
80187         </parameter>
80188         <parameter name="data" transfer-ownership="none">
80189           <type name="gpointer" c:type="gpointer"/>
80190         </parameter>
80191       </parameters>
80192     </function>
80193     <function name="propagate_event" c:identifier="gtk_propagate_event">
80194       <doc xml:whitespace="preserve">Sends an event to a widget, propagating the event to parent widgets
80195 if the event remains unhandled. Events received by GTK+ from GDK
80196 normally begin in gtk_main_do_event(). Depending on the type of
80197 event, existence of modal dialogs, grabs, etc., the event may be
80198 propagated; if so, this function is used. gtk_propagate_event()
80199 calls gtk_widget_event() on each widget it decides to send the
80200 event to.  So gtk_widget_event() is the lowest-level function; it
80201 simply emits the "event" and possibly an event-specific signal on a
80202 widget.  gtk_propagate_event() is a bit higher-level, and
80203 gtk_main_do_event() is the highest level.
80204 All that said, you most likely don't want to use any of these
80205 functions; synthesizing events is rarely needed. Consider asking on
80206 the mailing list for better ways to achieve your goals. For
80207 example, use gdk_window_invalidate_rect() or
80208 gtk_widget_queue_draw() instead of making up expose events.</doc>
80209       <return-value transfer-ownership="none">
80210         <type name="none" c:type="void"/>
80211       </return-value>
80212       <parameters>
80213         <parameter name="widget" transfer-ownership="none">
80214           <doc xml:whitespace="preserve">a #GtkWidget</doc>
80215           <type name="Widget" c:type="GtkWidget*"/>
80216         </parameter>
80217         <parameter name="event" transfer-ownership="none">
80218           <doc xml:whitespace="preserve">an event</doc>
80219           <type name="Gdk.Event" c:type="GdkEvent*"/>
80220         </parameter>
80221       </parameters>
80222     </function>
80223     <function name="quit_add" c:identifier="gtk_quit_add" introspectable="0">
80224       <return-value transfer-ownership="none">
80225         <type name="guint" c:type="guint"/>
80226       </return-value>
80227       <parameters>
80228         <parameter name="main_level" transfer-ownership="none">
80229           <type name="guint" c:type="guint"/>
80230         </parameter>
80231         <parameter name="function" transfer-ownership="none" closure="2">
80232           <type name="Function" c:type="GtkFunction"/>
80233         </parameter>
80234         <parameter name="data" transfer-ownership="none">
80235           <type name="gpointer" c:type="gpointer"/>
80236         </parameter>
80237       </parameters>
80238     </function>
80239     <function name="quit_add_destroy" c:identifier="gtk_quit_add_destroy">
80240       <return-value transfer-ownership="none">
80241         <type name="none" c:type="void"/>
80242       </return-value>
80243       <parameters>
80244         <parameter name="main_level" transfer-ownership="none">
80245           <type name="guint" c:type="guint"/>
80246         </parameter>
80247         <parameter name="object" transfer-ownership="none">
80248           <type name="Object" c:type="GtkObject*"/>
80249         </parameter>
80250       </parameters>
80251     </function>
80252     <function name="quit_add_full"
80253               c:identifier="gtk_quit_add_full"
80254               introspectable="0">
80255       <return-value transfer-ownership="none">
80256         <type name="guint" c:type="guint"/>
80257       </return-value>
80258       <parameters>
80259         <parameter name="main_level" transfer-ownership="none">
80260           <type name="guint" c:type="guint"/>
80261         </parameter>
80262         <parameter name="function" transfer-ownership="none">
80263           <type name="Function" c:type="GtkFunction"/>
80264         </parameter>
80265         <parameter name="marshal"
80266                    transfer-ownership="none"
80267                    scope="notified"
80268                    closure="3"
80269                    destroy="4">
80270           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
80271         </parameter>
80272         <parameter name="data" transfer-ownership="none">
80273           <type name="gpointer" c:type="gpointer"/>
80274         </parameter>
80275         <parameter name="destroy" transfer-ownership="none" scope="async">
80276           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
80277         </parameter>
80278       </parameters>
80279     </function>
80280     <function name="quit_remove" c:identifier="gtk_quit_remove">
80281       <return-value transfer-ownership="none">
80282         <type name="none" c:type="void"/>
80283       </return-value>
80284       <parameters>
80285         <parameter name="quit_handler_id" transfer-ownership="none">
80286           <type name="guint" c:type="guint"/>
80287         </parameter>
80288       </parameters>
80289     </function>
80290     <function name="quit_remove_by_data"
80291               c:identifier="gtk_quit_remove_by_data">
80292       <return-value transfer-ownership="none">
80293         <type name="none" c:type="void"/>
80294       </return-value>
80295       <parameters>
80296         <parameter name="data" transfer-ownership="none">
80297           <type name="gpointer" c:type="gpointer"/>
80298         </parameter>
80299       </parameters>
80300     </function>
80301     <function name="rc_add_default_file"
80302               c:identifier="gtk_rc_add_default_file">
80303       <doc xml:whitespace="preserve">Adds a file to the list of files to be parsed at the
80304 end of gtk_init().</doc>
80305       <return-value transfer-ownership="none">
80306         <type name="none" c:type="void"/>
80307       </return-value>
80308       <parameters>
80309         <parameter name="filename" transfer-ownership="none">
80310           <doc xml:whitespace="preserve">the pathname to the file. If @filename is not absolute, it is searched in the current directory.</doc>
80311           <type name="utf8" c:type="gchar*"/>
80312         </parameter>
80313       </parameters>
80314     </function>
80315     <function name="rc_find_module_in_path"
80316               c:identifier="gtk_rc_find_module_in_path">
80317       <doc xml:whitespace="preserve">Searches for a theme engine in the GTK+ search path. This function
80318 is not useful for applications and should not be used.
80319 otherwise %NULL.</doc>
80320       <return-value transfer-ownership="full">
80321         <doc xml:whitespace="preserve">The filename, if found (must be freed with g_free()),</doc>
80322         <type name="utf8" c:type="gchar*"/>
80323       </return-value>
80324       <parameters>
80325         <parameter name="module_file" transfer-ownership="none">
80326           <doc xml:whitespace="preserve">name of a theme engine</doc>
80327           <type name="utf8" c:type="gchar*"/>
80328         </parameter>
80329       </parameters>
80330     </function>
80331     <function name="rc_find_pixmap_in_path"
80332               c:identifier="gtk_rc_find_pixmap_in_path">
80333       <doc xml:whitespace="preserve">Looks up a file in pixmap path for the specified #GtkSettings.
80334 If the file is not found, it outputs a warning message using
80335 g_warning() and returns %NULL.</doc>
80336       <return-value transfer-ownership="full">
80337         <doc xml:whitespace="preserve">the filename.</doc>
80338         <type name="utf8" c:type="gchar*"/>
80339       </return-value>
80340       <parameters>
80341         <parameter name="settings" transfer-ownership="none">
80342           <doc xml:whitespace="preserve">a #GtkSettings</doc>
80343           <type name="Settings" c:type="GtkSettings*"/>
80344         </parameter>
80345         <parameter name="scanner" transfer-ownership="none">
80346           <doc xml:whitespace="preserve">Scanner used to get line number information for the warning message, or %NULL</doc>
80347           <type name="GLib.Scanner" c:type="GScanner*"/>
80348         </parameter>
80349         <parameter name="pixmap_file" transfer-ownership="none">
80350           <doc xml:whitespace="preserve">name of the pixmap file to locate.</doc>
80351           <type name="utf8" c:type="gchar*"/>
80352         </parameter>
80353       </parameters>
80354     </function>
80355     <function name="rc_get_default_files"
80356               c:identifier="gtk_rc_get_default_files">
80357       <doc xml:whitespace="preserve">Retrieves the current list of RC files that will be parsed
80358 at the end of gtk_init().
80359 This memory is owned by GTK+ and must not be freed by the application.
80360 If you want to store this information, you should make a copy.</doc>
80361       <return-value transfer-ownership="none">
80362         <doc xml:whitespace="preserve">A %NULL-terminated array of filenames.</doc>
80363         <array c:type="gchar**">
80364           <type name="utf8"/>
80365         </array>
80366       </return-value>
80367     </function>
80368     <function name="rc_get_im_module_file"
80369               c:identifier="gtk_rc_get_im_module_file">
80370       <doc xml:whitespace="preserve">Obtains the path to the IM modules file. See the documentation
80371 of the &lt;link linkend="im-module-file"&gt;&lt;envar&gt;GTK_IM_MODULE_FILE&lt;/envar&gt;&lt;/link&gt;
80372 environment variable for more details.</doc>
80373       <return-value transfer-ownership="full">
80374         <doc xml:whitespace="preserve">a newly-allocated string containing the name of the file listing the IM modules available for loading</doc>
80375         <type name="utf8" c:type="gchar*"/>
80376       </return-value>
80377     </function>
80378     <function name="rc_get_im_module_path"
80379               c:identifier="gtk_rc_get_im_module_path">
80380       <doc xml:whitespace="preserve">Obtains the path in which to look for IM modules. See the documentation
80381 of the &lt;link linkend="im-module-path"&gt;&lt;envar&gt;GTK_PATH&lt;/envar&gt;&lt;/link&gt;
80382 environment variable for more details about looking up modules. This
80383 function is useful solely for utilities supplied with GTK+ and should
80384 not be used by applications under normal circumstances.</doc>
80385       <return-value transfer-ownership="full">
80386         <doc xml:whitespace="preserve">a newly-allocated string containing the path in which to look for IM modules.</doc>
80387         <type name="utf8" c:type="gchar*"/>
80388       </return-value>
80389     </function>
80390     <function name="rc_get_module_dir" c:identifier="gtk_rc_get_module_dir">
80391       <doc xml:whitespace="preserve">Returns a directory in which GTK+ looks for theme engines.
80392 For full information about the search for theme engines,
80393 see the docs for &lt;envar&gt;GTK_PATH&lt;/envar&gt; in
80394 &lt;xref linkend="gtk-running"/&gt;.</doc>
80395       <return-value transfer-ownership="full">
80396         <doc xml:whitespace="preserve">the directory. (Must be freed with g_free())</doc>
80397         <type name="utf8" c:type="gchar*"/>
80398       </return-value>
80399     </function>
80400     <function name="rc_get_style"
80401               c:identifier="gtk_rc_get_style"
80402               introspectable="0">
80403       <doc xml:whitespace="preserve">Finds all matching RC styles for a given widget,
80404 composites them together, and then creates a 
80405 #GtkStyle representing the composite appearance.
80406 (GTK+ actually keeps a cache of previously 
80407 created styles, so a new style may not be
80408 created.)
80409 to the returned style, so if you want to save this
80410 style around, you should add a reference yourself.</doc>
80411       <return-value>
80412         <doc xml:whitespace="preserve">the resulting style. No refcount is added</doc>
80413         <type name="Style" c:type="GtkStyle*"/>
80414       </return-value>
80415       <parameters>
80416         <parameter name="widget" transfer-ownership="none">
80417           <doc xml:whitespace="preserve">a #GtkWidget</doc>
80418           <type name="Widget" c:type="GtkWidget*"/>
80419         </parameter>
80420       </parameters>
80421     </function>
80422     <function name="rc_get_style_by_paths"
80423               c:identifier="gtk_rc_get_style_by_paths">
80424       <doc xml:whitespace="preserve">Creates up a #GtkStyle from styles defined in a RC file by providing
80425 the raw components used in matching. This function may be useful
80426 when creating pseudo-widgets that should be themed like widgets but
80427 don't actually have corresponding GTK+ widgets. An example of this
80428 would be items inside a GNOME canvas widget.
80429 The action of gtk_rc_get_style() is similar to:
80430 |[
80431 gtk_widget_path (widget, NULL, &amp;path, NULL);
80432 gtk_widget_class_path (widget, NULL, &amp;class_path, NULL);
80433 gtk_rc_get_style_by_paths (gtk_widget_get_settings (widget), 
80434 path, class_path,
80435 G_OBJECT_TYPE (widget));
80436 ]|
80437 supplied paths, or %NULL if nothing matching was specified and the
80438 default style should be used. The returned value is owned by GTK+
80439 as part of an internal cache, so you must call g_object_ref() on
80440 the returned value if you want to keep a reference to it.</doc>
80441       <return-value transfer-ownership="none">
80442         <doc xml:whitespace="preserve">A style created by matching with the</doc>
80443         <type name="Style" c:type="GtkStyle*"/>
80444       </return-value>
80445       <parameters>
80446         <parameter name="settings" transfer-ownership="none">
80447           <doc xml:whitespace="preserve">a #GtkSettings object</doc>
80448           <type name="Settings" c:type="GtkSettings*"/>
80449         </parameter>
80450         <parameter name="widget_path" transfer-ownership="none" allow-none="1">
80451           <doc xml:whitespace="preserve">the widget path to use when looking up the style, or %NULL if no matching against the widget path should be done</doc>
80452           <type name="utf8" c:type="char*"/>
80453         </parameter>
80454         <parameter name="class_path" transfer-ownership="none" allow-none="1">
80455           <doc xml:whitespace="preserve">the class path to use when looking up the style, or %NULL if no matching against the class path should be done.</doc>
80456           <type name="utf8" c:type="char*"/>
80457         </parameter>
80458         <parameter name="type" transfer-ownership="none">
80459           <doc xml:whitespace="preserve">a type that will be used along with parent types of this type when matching against class styles, or #G_TYPE_NONE</doc>
80460           <type name="GType" c:type="GType"/>
80461         </parameter>
80462       </parameters>
80463     </function>
80464     <function name="rc_get_theme_dir" c:identifier="gtk_rc_get_theme_dir">
80465       <return-value transfer-ownership="full">
80466         <type name="utf8" c:type="gchar*"/>
80467       </return-value>
80468     </function>
80469     <function name="rc_parse" c:identifier="gtk_rc_parse">
80470       <return-value transfer-ownership="none">
80471         <type name="none" c:type="void"/>
80472       </return-value>
80473       <parameters>
80474         <parameter name="filename" transfer-ownership="none">
80475           <type name="utf8" c:type="gchar*"/>
80476         </parameter>
80477       </parameters>
80478     </function>
80479     <function name="rc_parse_color" c:identifier="gtk_rc_parse_color">
80480       <doc xml:whitespace="preserve">Parses a color in the &lt;link linkend="color=format"&gt;format&lt;/link&gt; expected
80481 in a RC file. 
80482 Note that theme engines should use gtk_rc_parse_color_full() in 
80483 order to support symbolic colors.
80484 that was expected but not found</doc>
80485       <return-value transfer-ownership="none">
80486         <doc xml:whitespace="preserve">%G_TOKEN_NONE if parsing succeeded, otherwise the token</doc>
80487         <type name="guint" c:type="guint"/>
80488       </return-value>
80489       <parameters>
80490         <parameter name="scanner" transfer-ownership="none">
80491           <doc xml:whitespace="preserve">a #GScanner</doc>
80492           <type name="GLib.Scanner" c:type="GScanner*"/>
80493         </parameter>
80494         <parameter name="color" transfer-ownership="none">
80495           <doc xml:whitespace="preserve">a pointer to a #GdkColor structure in which to store the result</doc>
80496           <type name="Gdk.Color" c:type="GdkColor*"/>
80497         </parameter>
80498       </parameters>
80499     </function>
80500     <function name="rc_parse_color_full"
80501               c:identifier="gtk_rc_parse_color_full"
80502               version="2.12">
80503       <doc xml:whitespace="preserve">Parses a color in the &lt;link linkend="color=format"&gt;format&lt;/link&gt; expected
80504 in a RC file. If @style is not %NULL, it will be consulted to resolve
80505 references to symbolic colors.
80506 that was expected but not found</doc>
80507       <return-value transfer-ownership="none">
80508         <doc xml:whitespace="preserve">%G_TOKEN_NONE if parsing succeeded, otherwise the token</doc>
80509         <type name="guint" c:type="guint"/>
80510       </return-value>
80511       <parameters>
80512         <parameter name="scanner" transfer-ownership="none">
80513           <doc xml:whitespace="preserve">a #GScanner</doc>
80514           <type name="GLib.Scanner" c:type="GScanner*"/>
80515         </parameter>
80516         <parameter name="style" transfer-ownership="none" allow-none="1">
80517           <doc xml:whitespace="preserve">a #GtkRcStyle, or %NULL</doc>
80518           <type name="RcStyle" c:type="GtkRcStyle*"/>
80519         </parameter>
80520         <parameter name="color" transfer-ownership="none">
80521           <doc xml:whitespace="preserve">a pointer to a #GdkColor structure in which to store the result</doc>
80522           <type name="Gdk.Color" c:type="GdkColor*"/>
80523         </parameter>
80524       </parameters>
80525     </function>
80526     <function name="rc_parse_priority" c:identifier="gtk_rc_parse_priority">
80527       <return-value transfer-ownership="none">
80528         <type name="guint" c:type="guint"/>
80529       </return-value>
80530       <parameters>
80531         <parameter name="scanner" transfer-ownership="none">
80532           <type name="GLib.Scanner" c:type="GScanner*"/>
80533         </parameter>
80534         <parameter name="priority" transfer-ownership="none">
80535           <type name="PathPriorityType" c:type="GtkPathPriorityType*"/>
80536         </parameter>
80537       </parameters>
80538     </function>
80539     <function name="rc_parse_state" c:identifier="gtk_rc_parse_state">
80540       <return-value transfer-ownership="none">
80541         <type name="guint" c:type="guint"/>
80542       </return-value>
80543       <parameters>
80544         <parameter name="scanner" transfer-ownership="none">
80545           <type name="GLib.Scanner" c:type="GScanner*"/>
80546         </parameter>
80547         <parameter name="state" transfer-ownership="none">
80548           <type name="StateType" c:type="GtkStateType*"/>
80549         </parameter>
80550       </parameters>
80551     </function>
80552     <function name="rc_parse_string" c:identifier="gtk_rc_parse_string">
80553       <return-value transfer-ownership="none">
80554         <type name="none" c:type="void"/>
80555       </return-value>
80556       <parameters>
80557         <parameter name="rc_string" transfer-ownership="none">
80558           <type name="utf8" c:type="gchar*"/>
80559         </parameter>
80560       </parameters>
80561     </function>
80562     <function name="rc_property_parse_border"
80563               c:identifier="gtk_rc_property_parse_border">
80564       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
80565 or gtk_widget_class_install_style_property_parser() which parses
80566 borders in the form 
80567 &lt;literal&gt;"{ left, right, top, bottom }"&lt;/literal&gt; for integers 
80568 %left, %right, %top and %bottom.
80569 has been set to the resulting #GtkBorder.</doc>
80570       <return-value transfer-ownership="none">
80571         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
80572         <type name="gboolean" c:type="gboolean"/>
80573       </return-value>
80574       <parameters>
80575         <parameter name="pspec" transfer-ownership="none">
80576           <doc xml:whitespace="preserve">a #GParamSpec</doc>
80577           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
80578         </parameter>
80579         <parameter name="gstring" transfer-ownership="none">
80580           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
80581           <type name="GLib.String" c:type="GString*"/>
80582         </parameter>
80583         <parameter name="property_value" transfer-ownership="none">
80584           <doc xml:whitespace="preserve">a #GValue which must hold boxed values.</doc>
80585           <type name="GObject.Value" c:type="GValue*"/>
80586         </parameter>
80587       </parameters>
80588     </function>
80589     <function name="rc_property_parse_color"
80590               c:identifier="gtk_rc_property_parse_color">
80591       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
80592 or gtk_widget_class_install_style_property_parser() which parses a
80593 color given either by its name or in the form 
80594 &lt;literal&gt;{ red, green, blue }&lt;/literal&gt; where %red, %green and
80595 %blue are integers between 0 and 65535 or floating-point numbers
80596 between 0 and 1.
80597 has been set to the resulting #GdkColor.</doc>
80598       <return-value transfer-ownership="none">
80599         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
80600         <type name="gboolean" c:type="gboolean"/>
80601       </return-value>
80602       <parameters>
80603         <parameter name="pspec" transfer-ownership="none">
80604           <doc xml:whitespace="preserve">a #GParamSpec</doc>
80605           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
80606         </parameter>
80607         <parameter name="gstring" transfer-ownership="none">
80608           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
80609           <type name="GLib.String" c:type="GString*"/>
80610         </parameter>
80611         <parameter name="property_value" transfer-ownership="none">
80612           <doc xml:whitespace="preserve">a #GValue which must hold #GdkColor values.</doc>
80613           <type name="GObject.Value" c:type="GValue*"/>
80614         </parameter>
80615       </parameters>
80616     </function>
80617     <function name="rc_property_parse_enum"
80618               c:identifier="gtk_rc_property_parse_enum">
80619       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
80620 or gtk_widget_class_install_style_property_parser() which parses a single
80621 enumeration value.
80622 The enumeration value can be specified by its name, its nickname or
80623 its numeric value. For consistency with flags parsing, the value
80624 may be surrounded by parentheses.
80625 has been set to the resulting #GEnumValue.</doc>
80626       <return-value transfer-ownership="none">
80627         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
80628         <type name="gboolean" c:type="gboolean"/>
80629       </return-value>
80630       <parameters>
80631         <parameter name="pspec" transfer-ownership="none">
80632           <doc xml:whitespace="preserve">a #GParamSpec</doc>
80633           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
80634         </parameter>
80635         <parameter name="gstring" transfer-ownership="none">
80636           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
80637           <type name="GLib.String" c:type="GString*"/>
80638         </parameter>
80639         <parameter name="property_value" transfer-ownership="none">
80640           <doc xml:whitespace="preserve">a #GValue which must hold enum values.</doc>
80641           <type name="GObject.Value" c:type="GValue*"/>
80642         </parameter>
80643       </parameters>
80644     </function>
80645     <function name="rc_property_parse_flags"
80646               c:identifier="gtk_rc_property_parse_flags">
80647       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
80648 or gtk_widget_class_install_style_property_parser() which parses flags. 
80649 Flags can be specified by their name, their nickname or
80650 numerically. Multiple flags can be specified in the form 
80651 &lt;literal&gt;"( flag1 | flag2 | ... )"&lt;/literal&gt;.
80652 has been set to the resulting flags value.</doc>
80653       <return-value transfer-ownership="none">
80654         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
80655         <type name="gboolean" c:type="gboolean"/>
80656       </return-value>
80657       <parameters>
80658         <parameter name="pspec" transfer-ownership="none">
80659           <doc xml:whitespace="preserve">a #GParamSpec</doc>
80660           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
80661         </parameter>
80662         <parameter name="gstring" transfer-ownership="none">
80663           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
80664           <type name="GLib.String" c:type="GString*"/>
80665         </parameter>
80666         <parameter name="property_value" transfer-ownership="none">
80667           <doc xml:whitespace="preserve">a #GValue which must hold flags values.</doc>
80668           <type name="GObject.Value" c:type="GValue*"/>
80669         </parameter>
80670       </parameters>
80671     </function>
80672     <function name="rc_property_parse_requisition"
80673               c:identifier="gtk_rc_property_parse_requisition">
80674       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
80675 or gtk_widget_class_install_style_property_parser() which parses a
80676 requisition in the form 
80677 &lt;literal&gt;"{ width, height }"&lt;/literal&gt; for integers %width and %height.
80678 has been set to the resulting #GtkRequisition.</doc>
80679       <return-value transfer-ownership="none">
80680         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
80681         <type name="gboolean" c:type="gboolean"/>
80682       </return-value>
80683       <parameters>
80684         <parameter name="pspec" transfer-ownership="none">
80685           <doc xml:whitespace="preserve">a #GParamSpec</doc>
80686           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
80687         </parameter>
80688         <parameter name="gstring" transfer-ownership="none">
80689           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
80690           <type name="GLib.String" c:type="GString*"/>
80691         </parameter>
80692         <parameter name="property_value" transfer-ownership="none">
80693           <doc xml:whitespace="preserve">a #GValue which must hold boxed values.</doc>
80694           <type name="GObject.Value" c:type="GValue*"/>
80695         </parameter>
80696       </parameters>
80697     </function>
80698     <function name="rc_reparse_all" c:identifier="gtk_rc_reparse_all">
80699       <doc xml:whitespace="preserve">If the modification time on any previously read file for the
80700 default #GtkSettings has changed, discard all style information
80701 and then reread all previously read RC files.</doc>
80702       <return-value transfer-ownership="none">
80703         <doc xml:whitespace="preserve">%TRUE if the files were reread.</doc>
80704         <type name="gboolean" c:type="gboolean"/>
80705       </return-value>
80706     </function>
80707     <function name="rc_reparse_all_for_settings"
80708               c:identifier="gtk_rc_reparse_all_for_settings">
80709       <doc xml:whitespace="preserve">If the modification time on any previously read file
80710 for the given #GtkSettings has changed, discard all style information
80711 and then reread all previously read RC files.</doc>
80712       <return-value transfer-ownership="none">
80713         <doc xml:whitespace="preserve">%TRUE if the files were reread.</doc>
80714         <type name="gboolean" c:type="gboolean"/>
80715       </return-value>
80716       <parameters>
80717         <parameter name="settings" transfer-ownership="none">
80718           <doc xml:whitespace="preserve">a #GtkSettings</doc>
80719           <type name="Settings" c:type="GtkSettings*"/>
80720         </parameter>
80721         <parameter name="force_load" transfer-ownership="none">
80722           <doc xml:whitespace="preserve">load whether or not anything changed</doc>
80723           <type name="gboolean" c:type="gboolean"/>
80724         </parameter>
80725       </parameters>
80726     </function>
80727     <function name="rc_reset_styles"
80728               c:identifier="gtk_rc_reset_styles"
80729               version="2.4">
80730       <doc xml:whitespace="preserve">This function recomputes the styles for all widgets that use a
80731 particular #GtkSettings object. (There is one #GtkSettings object
80732 per #GdkScreen, see gtk_settings_get_for_screen()); It is useful
80733 when some global parameter has changed that affects the appearance
80734 of all widgets, because when a widget gets a new style, it will
80735 both redraw and recompute any cached information about its
80736 appearance. As an example, it is used when the default font size
80737 set by the operating system changes. Note that this function
80738 doesn't affect widgets that have a style set explicitely on them
80739 with gtk_widget_set_style().</doc>
80740       <return-value transfer-ownership="none">
80741         <type name="none" c:type="void"/>
80742       </return-value>
80743       <parameters>
80744         <parameter name="settings" transfer-ownership="none">
80745           <doc xml:whitespace="preserve">a #GtkSettings</doc>
80746           <type name="Settings" c:type="GtkSettings*"/>
80747         </parameter>
80748       </parameters>
80749     </function>
80750     <function name="rc_scanner_new"
80751               c:identifier="gtk_rc_scanner_new"
80752               introspectable="0">
80753       <return-value>
80754         <type name="GLib.Scanner" c:type="GScanner*"/>
80755       </return-value>
80756     </function>
80757     <function name="rc_set_default_files"
80758               c:identifier="gtk_rc_set_default_files">
80759       <doc xml:whitespace="preserve">Sets the list of files that GTK+ will read at the
80760 end of gtk_init().</doc>
80761       <return-value transfer-ownership="none">
80762         <type name="none" c:type="void"/>
80763       </return-value>
80764       <parameters>
80765         <parameter name="filenames" transfer-ownership="none">
80766           <doc xml:whitespace="preserve">A %NULL-terminated list of filenames.</doc>
80767           <type name="utf8" c:type="gchar**"/>
80768         </parameter>
80769       </parameters>
80770     </function>
80771     <function name="recent_chooser_error_quark"
80772               c:identifier="gtk_recent_chooser_error_quark">
80773       <return-value transfer-ownership="none">
80774         <type name="GLib.Quark" c:type="GQuark"/>
80775       </return-value>
80776     </function>
80777     <function name="recent_manager_error_quark"
80778               c:identifier="gtk_recent_manager_error_quark">
80779       <return-value transfer-ownership="none">
80780         <type name="GLib.Quark" c:type="GQuark"/>
80781       </return-value>
80782     </function>
80783     <function name="rgb_to_hsv" c:identifier="gtk_rgb_to_hsv" version="2.14">
80784       <doc xml:whitespace="preserve">Converts a color from RGB space to HSV.
80785 Input values must be in the [0.0, 1.0] range;
80786 output values will be in the same range.</doc>
80787       <return-value transfer-ownership="none">
80788         <type name="none" c:type="void"/>
80789       </return-value>
80790       <parameters>
80791         <parameter name="r" transfer-ownership="none">
80792           <doc xml:whitespace="preserve">Red</doc>
80793           <type name="gdouble" c:type="gdouble"/>
80794         </parameter>
80795         <parameter name="g" transfer-ownership="none">
80796           <doc xml:whitespace="preserve">Green</doc>
80797           <type name="gdouble" c:type="gdouble"/>
80798         </parameter>
80799         <parameter name="b" transfer-ownership="none">
80800           <doc xml:whitespace="preserve">Blue</doc>
80801           <type name="gdouble" c:type="gdouble"/>
80802         </parameter>
80803         <parameter name="h" transfer-ownership="none">
80804           <doc xml:whitespace="preserve">Return value for the hue component</doc>
80805           <type name="gdouble" c:type="gdouble*"/>
80806         </parameter>
80807         <parameter name="s" transfer-ownership="none">
80808           <doc xml:whitespace="preserve">Return value for the saturation component</doc>
80809           <type name="gdouble" c:type="gdouble*"/>
80810         </parameter>
80811         <parameter name="v" transfer-ownership="none">
80812           <doc xml:whitespace="preserve">Return value for the value component</doc>
80813           <type name="gdouble" c:type="gdouble*"/>
80814         </parameter>
80815       </parameters>
80816     </function>
80817     <function name="selection_add_target"
80818               c:identifier="gtk_selection_add_target">
80819       <doc xml:whitespace="preserve">Appends a specified target to the list of supported targets for a 
80820 given widget and selection.</doc>
80821       <return-value transfer-ownership="none">
80822         <type name="none" c:type="void"/>
80823       </return-value>
80824       <parameters>
80825         <parameter name="widget" transfer-ownership="none">
80826           <doc xml:whitespace="preserve">a #GtkTarget</doc>
80827           <type name="Widget" c:type="GtkWidget*"/>
80828         </parameter>
80829         <parameter name="selection" transfer-ownership="none">
80830           <doc xml:whitespace="preserve">the selection</doc>
80831           <type name="Gdk.Atom" c:type="GdkAtom"/>
80832         </parameter>
80833         <parameter name="target" transfer-ownership="none">
80834           <doc xml:whitespace="preserve">target to add.</doc>
80835           <type name="Gdk.Atom" c:type="GdkAtom"/>
80836         </parameter>
80837         <parameter name="info" transfer-ownership="none">
80838           <doc xml:whitespace="preserve">A unsigned integer which will be passed back to the application.</doc>
80839           <type name="guint" c:type="guint"/>
80840         </parameter>
80841       </parameters>
80842     </function>
80843     <function name="selection_add_targets"
80844               c:identifier="gtk_selection_add_targets">
80845       <doc xml:whitespace="preserve">Prepends a table of targets to the list of supported targets
80846 for a given widget and selection.</doc>
80847       <return-value transfer-ownership="none">
80848         <type name="none" c:type="void"/>
80849       </return-value>
80850       <parameters>
80851         <parameter name="widget" transfer-ownership="none">
80852           <doc xml:whitespace="preserve">a #GtkWidget</doc>
80853           <type name="Widget" c:type="GtkWidget*"/>
80854         </parameter>
80855         <parameter name="selection" transfer-ownership="none">
80856           <doc xml:whitespace="preserve">the selection</doc>
80857           <type name="Gdk.Atom" c:type="GdkAtom"/>
80858         </parameter>
80859         <parameter name="targets" transfer-ownership="none">
80860           <doc xml:whitespace="preserve">a table of targets to add</doc>
80861           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
80862         </parameter>
80863         <parameter name="ntargets" transfer-ownership="none">
80864           <doc xml:whitespace="preserve">number of entries in @targets</doc>
80865           <type name="guint" c:type="guint"/>
80866         </parameter>
80867       </parameters>
80868     </function>
80869     <function name="selection_clear_targets"
80870               c:identifier="gtk_selection_clear_targets">
80871       <doc xml:whitespace="preserve">Remove all targets registered for the given selection for the
80872 widget.</doc>
80873       <return-value transfer-ownership="none">
80874         <type name="none" c:type="void"/>
80875       </return-value>
80876       <parameters>
80877         <parameter name="widget" transfer-ownership="none">
80878           <doc xml:whitespace="preserve">a #GtkWidget</doc>
80879           <type name="Widget" c:type="GtkWidget*"/>
80880         </parameter>
80881         <parameter name="selection" transfer-ownership="none">
80882           <doc xml:whitespace="preserve">an atom representing a selection</doc>
80883           <type name="Gdk.Atom" c:type="GdkAtom"/>
80884         </parameter>
80885       </parameters>
80886     </function>
80887     <function name="selection_convert" c:identifier="gtk_selection_convert">
80888       <doc xml:whitespace="preserve">Requests the contents of a selection. When received, 
80889 a "selection-received" signal will be generated.
80890 request. (e.g., there was already a request in process for
80891 this widget).</doc>
80892       <return-value transfer-ownership="none">
80893         <doc xml:whitespace="preserve">%TRUE if requested succeeded. %FALSE if we could not process</doc>
80894         <type name="gboolean" c:type="gboolean"/>
80895       </return-value>
80896       <parameters>
80897         <parameter name="widget" transfer-ownership="none">
80898           <doc xml:whitespace="preserve">The widget which acts as requestor</doc>
80899           <type name="Widget" c:type="GtkWidget*"/>
80900         </parameter>
80901         <parameter name="selection" transfer-ownership="none">
80902           <doc xml:whitespace="preserve">Which selection to get</doc>
80903           <type name="Gdk.Atom" c:type="GdkAtom"/>
80904         </parameter>
80905         <parameter name="target" transfer-ownership="none">
80906           <doc xml:whitespace="preserve">Form of information desired (e.g., STRING)</doc>
80907           <type name="Gdk.Atom" c:type="GdkAtom"/>
80908         </parameter>
80909         <parameter name="time_" transfer-ownership="none">
80910           <doc xml:whitespace="preserve">Time of request (usually of triggering event)</doc>
80911           <type name="guint32" c:type="guint32"/>
80912         </parameter>
80913       </parameters>
80914     </function>
80915     <function name="selection_owner_set"
80916               c:identifier="gtk_selection_owner_set">
80917       <doc xml:whitespace="preserve">Claims ownership of a given selection for a particular widget,
80918 or, if @widget is %NULL, release ownership of the selection.</doc>
80919       <return-value transfer-ownership="none">
80920         <doc xml:whitespace="preserve">%TRUE if the operation succeeded</doc>
80921         <type name="gboolean" c:type="gboolean"/>
80922       </return-value>
80923       <parameters>
80924         <parameter name="widget" transfer-ownership="none" allow-none="1">
80925           <doc xml:whitespace="preserve">a #GtkWidget, or %NULL.</doc>
80926           <type name="Widget" c:type="GtkWidget*"/>
80927         </parameter>
80928         <parameter name="selection" transfer-ownership="none">
80929           <doc xml:whitespace="preserve">an interned atom representing the selection to claim</doc>
80930           <type name="Gdk.Atom" c:type="GdkAtom"/>
80931         </parameter>
80932         <parameter name="time_" transfer-ownership="none">
80933           <doc xml:whitespace="preserve">timestamp with which to claim the selection</doc>
80934           <type name="guint32" c:type="guint32"/>
80935         </parameter>
80936       </parameters>
80937     </function>
80938     <function name="selection_owner_set_for_display"
80939               c:identifier="gtk_selection_owner_set_for_display"
80940               version="2.2">
80941       <doc xml:whitespace="preserve">Claim ownership of a given selection for a particular widget, or,
80942 if @widget is %NULL, release ownership of the selection.</doc>
80943       <return-value transfer-ownership="none">
80944         <doc xml:whitespace="preserve">TRUE if the operation succeeded</doc>
80945         <type name="gboolean" c:type="gboolean"/>
80946       </return-value>
80947       <parameters>
80948         <parameter name="display" transfer-ownership="none">
80949           <doc xml:whitespace="preserve">the #Gdkdisplay where the selection is set</doc>
80950           <type name="Gdk.Display" c:type="GdkDisplay*"/>
80951         </parameter>
80952         <parameter name="widget" transfer-ownership="none" allow-none="1">
80953           <doc xml:whitespace="preserve">new selection owner (a #GdkWidget), or %NULL.</doc>
80954           <type name="Widget" c:type="GtkWidget*"/>
80955         </parameter>
80956         <parameter name="selection" transfer-ownership="none">
80957           <doc xml:whitespace="preserve">an interned atom representing the selection to claim.</doc>
80958           <type name="Gdk.Atom" c:type="GdkAtom"/>
80959         </parameter>
80960         <parameter name="time_" transfer-ownership="none">
80961           <doc xml:whitespace="preserve">timestamp with which to claim the selection</doc>
80962           <type name="guint32" c:type="guint32"/>
80963         </parameter>
80964       </parameters>
80965     </function>
80966     <function name="selection_remove_all"
80967               c:identifier="gtk_selection_remove_all">
80968       <doc xml:whitespace="preserve">Removes all handlers and unsets ownership of all 
80969 selections for a widget. Called when widget is being
80970 destroyed. This function will not generally be
80971 called by applications.</doc>
80972       <return-value transfer-ownership="none">
80973         <type name="none" c:type="void"/>
80974       </return-value>
80975       <parameters>
80976         <parameter name="widget" transfer-ownership="none">
80977           <doc xml:whitespace="preserve">a #GtkWidget</doc>
80978           <type name="Widget" c:type="GtkWidget*"/>
80979         </parameter>
80980       </parameters>
80981     </function>
80982     <function name="set_debug_flags" c:identifier="gtk_set_debug_flags">
80983       <doc xml:whitespace="preserve">Sets the GTK+ debug flags.</doc>
80984       <return-value transfer-ownership="none">
80985         <type name="none" c:type="void"/>
80986       </return-value>
80987       <parameters>
80988         <parameter name="flags" transfer-ownership="none">
80989           <type name="guint" c:type="guint"/>
80990         </parameter>
80991       </parameters>
80992     </function>
80993     <function name="set_locale" c:identifier="gtk_set_locale">
80994       <doc xml:whitespace="preserve">Initializes internationalization support for GTK+. gtk_init()
80995 automatically does this, so there is typically no point
80996 in calling this function.
80997 If you are calling this function because you changed the locale
80998 after GTK+ is was initialized, then calling this function
80999 may help a bit. (Note, however, that changing the locale
81000 after GTK+ is initialized may produce inconsistent results and
81001 is not really supported.)
81002 In detail - sets the current locale according to the
81003 program environment. This is the same as calling the C library function
81004 &lt;literal&gt;setlocale (LC_ALL, "")&lt;/literal&gt; but also takes care of the 
81005 locale specific setup of the windowing system used by GDK.
81006 form lang_COUNTRY, where lang is an ISO-639 language code, and
81007 COUNTRY is an ISO-3166 country code. On Unix, this form matches the
81008 result of the setlocale(); it is also used on other machines, such as 
81009 Windows, where the C library returns a different result. The string is 
81010 owned by GTK+ and should not be modified or freed.</doc>
81011       <return-value transfer-ownership="full">
81012         <doc xml:whitespace="preserve">a string corresponding to the locale set, typically in the</doc>
81013         <type name="utf8" c:type="gchar*"/>
81014       </return-value>
81015     </function>
81016     <function name="show_about_dialog"
81017               c:identifier="gtk_show_about_dialog"
81018               version="2.6"
81019               introspectable="0">
81020       <doc xml:whitespace="preserve">This is a convenience function for showing an application's about box.
81021 The constructed dialog is associated with the parent window and
81022 reused for future invocations of this function.</doc>
81023       <return-value transfer-ownership="none">
81024         <type name="none" c:type="void"/>
81025       </return-value>
81026       <parameters>
81027         <parameter name="parent" transfer-ownership="none" allow-none="1">
81028           <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
81029           <type name="Window" c:type="GtkWindow*"/>
81030         </parameter>
81031         <parameter name="first_property_name" transfer-ownership="none">
81032           <doc xml:whitespace="preserve">the name of the first property</doc>
81033           <type name="utf8" c:type="gchar*"/>
81034         </parameter>
81035         <parameter transfer-ownership="none">
81036           <varargs>
81037           </varargs>
81038         </parameter>
81039       </parameters>
81040     </function>
81041     <function name="show_uri"
81042               c:identifier="gtk_show_uri"
81043               version="2.14"
81044               throws="1">
81045       <doc xml:whitespace="preserve">This is a convenience function for launching the default application
81046 to show the uri. The uri must be of a form understood by GIO. Typical
81047 examples are
81048 &lt;simplelist&gt;
81049 &lt;member&gt;&lt;filename&gt;file:///home/gnome/pict.jpg&lt;/filename&gt;&lt;/member&gt;
81050 &lt;member&gt;&lt;filename&gt;http://www.gnome.org&lt;/filename&gt;&lt;/member&gt;
81051 &lt;member&gt;&lt;filename&gt;mailto:me&amp;commat;gnome.org&lt;/filename&gt;&lt;/member&gt;
81052 &lt;/simplelist&gt;
81053 Ideally the timestamp is taken from the event triggering
81054 the gtk_show_uri() call. If timestamp is not known you can take
81055 %GDK_CURRENT_TIME.
81056 This function can be used as a replacement for gnome_vfs_url_show()
81057 and gnome_url_show().</doc>
81058       <return-value transfer-ownership="none">
81059         <doc xml:whitespace="preserve">%TRUE on success, %FALSE on error.</doc>
81060         <type name="gboolean" c:type="gboolean"/>
81061       </return-value>
81062       <parameters>
81063         <parameter name="screen" transfer-ownership="none" allow-none="1">
81064           <doc xml:whitespace="preserve">screen to show the uri on or %NULL for the default screen</doc>
81065           <type name="Gdk.Screen" c:type="GdkScreen*"/>
81066         </parameter>
81067         <parameter name="uri" transfer-ownership="none">
81068           <doc xml:whitespace="preserve">the uri to show</doc>
81069           <type name="utf8" c:type="gchar*"/>
81070         </parameter>
81071         <parameter name="timestamp" transfer-ownership="none">
81072           <doc xml:whitespace="preserve">a timestamp to prevent focus stealing.</doc>
81073           <type name="guint32" c:type="guint32"/>
81074         </parameter>
81075       </parameters>
81076     </function>
81077     <function name="stock_add" c:identifier="gtk_stock_add">
81078       <doc xml:whitespace="preserve">Registers each of the stock items in @items. If an item already
81079 exists with the same stock ID as one of the @items, the old item
81080 gets replaced. The stock items are copied, so GTK+ does not hold
81081 any pointer into @items and @items can be freed. Use
81082 gtk_stock_add_static() if @items is persistent and GTK+ need not
81083 copy the array.</doc>
81084       <return-value transfer-ownership="none">
81085         <type name="none" c:type="void"/>
81086       </return-value>
81087       <parameters>
81088         <parameter name="items" transfer-ownership="none">
81089           <doc xml:whitespace="preserve">a #GtkStockItem or array of items</doc>
81090           <type name="StockItem" c:type="GtkStockItem*"/>
81091         </parameter>
81092         <parameter name="n_items" transfer-ownership="none">
81093           <doc xml:whitespace="preserve">number of #GtkStockItem in @items</doc>
81094           <type name="guint" c:type="guint"/>
81095         </parameter>
81096       </parameters>
81097     </function>
81098     <function name="stock_add_static" c:identifier="gtk_stock_add_static">
81099       <doc xml:whitespace="preserve">Same as gtk_stock_add(), but doesn't copy @items, so</doc>
81100       <return-value transfer-ownership="none">
81101         <type name="none" c:type="void"/>
81102       </return-value>
81103       <parameters>
81104         <parameter name="items" transfer-ownership="none">
81105           <doc xml:whitespace="preserve">a #GtkStockItem or array of #GtkStockItem</doc>
81106           <type name="StockItem" c:type="GtkStockItem*"/>
81107         </parameter>
81108         <parameter name="n_items" transfer-ownership="none">
81109           <doc xml:whitespace="preserve">number of items</doc>
81110           <type name="guint" c:type="guint"/>
81111         </parameter>
81112       </parameters>
81113     </function>
81114     <function name="stock_list_ids" c:identifier="gtk_stock_list_ids">
81115       <doc xml:whitespace="preserve">Retrieves a list of all known stock IDs added to a #GtkIconFactory
81116 or registered with gtk_stock_add(). The list must be freed with g_slist_free(),
81117 and each string in the list must be freed with g_free().</doc>
81118       <return-value transfer-ownership="full">
81119         <doc xml:whitespace="preserve">a list of known stock IDs</doc>
81120         <type name="GLib.SList" c:type="GSList*">
81121           <type name="utf8"/>
81122         </type>
81123       </return-value>
81124     </function>
81125     <function name="stock_lookup" c:identifier="gtk_stock_lookup">
81126       <doc xml:whitespace="preserve">Fills @item with the registered values for @stock_id, returning %TRUE
81127 if @stock_id was known.</doc>
81128       <return-value transfer-ownership="none">
81129         <doc xml:whitespace="preserve">%TRUE if @item was initialized</doc>
81130         <type name="gboolean" c:type="gboolean"/>
81131       </return-value>
81132       <parameters>
81133         <parameter name="stock_id" transfer-ownership="none">
81134           <doc xml:whitespace="preserve">a stock item name</doc>
81135           <type name="utf8" c:type="gchar*"/>
81136         </parameter>
81137         <parameter name="item" transfer-ownership="none">
81138           <doc xml:whitespace="preserve">stock item to initialize with values</doc>
81139           <type name="StockItem" c:type="GtkStockItem*"/>
81140         </parameter>
81141       </parameters>
81142     </function>
81143     <function name="stock_set_translate_func"
81144               c:identifier="gtk_stock_set_translate_func"
81145               version="2.8">
81146       <doc xml:whitespace="preserve">Sets a function to be used for translating the @label of 
81147 a stock item.
81148 If no function is registered for a translation domain,
81149 g_dgettext() is used.
81150 The function is used for all stock items whose
81151 to use strings different from the actual gettext translation domain
81152 of your application for this, as long as your #GtkTranslateFunc uses
81153 the correct domain when calling dgettext(). This can be useful, e.g.
81154 when dealing with message contexts:
81155 |[
81156 GtkStockItem items[] = { 
81157 { MY_ITEM1, NC_("odd items", "Item 1"), 0, 0, "odd-item-domain" },
81158 { MY_ITEM2, NC_("even items", "Item 2"), 0, 0, "even-item-domain" },
81159 };
81160 gchar *
81161 my_translate_func (const gchar *msgid,
81162 gpointer     data)
81163 {
81164 gchar *msgctxt = data;
81165 return (gchar*)g_dpgettext2 (GETTEXT_PACKAGE, msgctxt, msgid);
81166 }
81167 /&amp;ast; ... &amp;ast;/
81168 gtk_stock_add (items, G_N_ELEMENTS (items));
81169 gtk_stock_set_translate_func ("odd-item-domain", my_translate_func, "odd items"); 
81170 gtk_stock_set_translate_func ("even-item-domain", my_translate_func, "even items"); 
81171 ]|</doc>
81172       <return-value transfer-ownership="none">
81173         <type name="none" c:type="void"/>
81174       </return-value>
81175       <parameters>
81176         <parameter name="domain" transfer-ownership="none">
81177           <doc xml:whitespace="preserve">the translation domain for which @func shall be used</doc>
81178           <type name="utf8" c:type="gchar*"/>
81179         </parameter>
81180         <parameter name="func"
81181                    transfer-ownership="none"
81182                    scope="notified"
81183                    closure="2"
81184                    destroy="3">
81185           <doc xml:whitespace="preserve">a #GtkTranslateFunc</doc>
81186           <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
81187         </parameter>
81188         <parameter name="data" transfer-ownership="none">
81189           <doc xml:whitespace="preserve">data to pass to @func</doc>
81190           <type name="gpointer" c:type="gpointer"/>
81191         </parameter>
81192         <parameter name="notify" transfer-ownership="none" scope="async">
81193           <doc xml:whitespace="preserve">a #GDestroyNotify that is called when @data is no longer needed</doc>
81194           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
81195         </parameter>
81196       </parameters>
81197     </function>
81198     <function name="target_table_free"
81199               c:identifier="gtk_target_table_free"
81200               version="2.10">
81201       <doc xml:whitespace="preserve">This function frees a target table as returned by
81202 gtk_target_table_new_from_list()</doc>
81203       <return-value transfer-ownership="none">
81204         <type name="none" c:type="void"/>
81205       </return-value>
81206       <parameters>
81207         <parameter name="targets" transfer-ownership="none">
81208           <doc xml:whitespace="preserve">a #GtkTargetEntry array</doc>
81209           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
81210         </parameter>
81211         <parameter name="n_targets" transfer-ownership="none">
81212           <doc xml:whitespace="preserve">the number of entries in the array</doc>
81213           <type name="gint" c:type="gint"/>
81214         </parameter>
81215       </parameters>
81216     </function>
81217     <function name="target_table_new_from_list"
81218               c:identifier="gtk_target_table_new_from_list"
81219               version="2.10"
81220               introspectable="0">
81221       <doc xml:whitespace="preserve">This function creates an #GtkTargetEntry array that contains the
81222 same targets as the passed %list. The returned table is newly
81223 allocated and should be freed using gtk_target_table_free() when no
81224 longer needed.</doc>
81225       <return-value>
81226         <doc xml:whitespace="preserve">the new table.</doc>
81227         <type name="TargetEntry" c:type="GtkTargetEntry*"/>
81228       </return-value>
81229       <parameters>
81230         <parameter name="list" transfer-ownership="none">
81231           <doc xml:whitespace="preserve">a #GtkTargetList</doc>
81232           <type name="TargetList" c:type="GtkTargetList*"/>
81233         </parameter>
81234         <parameter name="n_targets" transfer-ownership="none">
81235           <doc xml:whitespace="preserve">return location for the number ot targets in the table</doc>
81236           <type name="gint" c:type="gint*"/>
81237         </parameter>
81238       </parameters>
81239     </function>
81240     <function name="targets_include_image"
81241               c:identifier="gtk_targets_include_image"
81242               version="2.10">
81243       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
81244 provide a #GdkPixbuf.
81245 otherwise %FALSE.</doc>
81246       <return-value transfer-ownership="none">
81247         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for images,</doc>
81248         <type name="gboolean" c:type="gboolean"/>
81249       </return-value>
81250       <parameters>
81251         <parameter name="targets" transfer-ownership="none">
81252           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
81253           <type name="Gdk.Atom" c:type="GdkAtom*"/>
81254         </parameter>
81255         <parameter name="n_targets" transfer-ownership="none">
81256           <doc xml:whitespace="preserve">the length of @targets</doc>
81257           <type name="gint" c:type="gint"/>
81258         </parameter>
81259         <parameter name="writable" transfer-ownership="none">
81260           <doc xml:whitespace="preserve">whether to accept only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
81261           <type name="gboolean" c:type="gboolean"/>
81262         </parameter>
81263       </parameters>
81264     </function>
81265     <function name="targets_include_rich_text"
81266               c:identifier="gtk_targets_include_rich_text"
81267               version="2.10">
81268       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
81269 provide rich text.
81270 otherwise %FALSE.</doc>
81271       <return-value transfer-ownership="none">
81272         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for rich text,</doc>
81273         <type name="gboolean" c:type="gboolean"/>
81274       </return-value>
81275       <parameters>
81276         <parameter name="targets" transfer-ownership="none">
81277           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
81278           <type name="Gdk.Atom" c:type="GdkAtom*"/>
81279         </parameter>
81280         <parameter name="n_targets" transfer-ownership="none">
81281           <doc xml:whitespace="preserve">the length of @targets</doc>
81282           <type name="gint" c:type="gint"/>
81283         </parameter>
81284         <parameter name="buffer" transfer-ownership="none">
81285           <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
81286           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
81287         </parameter>
81288       </parameters>
81289     </function>
81290     <function name="targets_include_text"
81291               c:identifier="gtk_targets_include_text"
81292               version="2.10">
81293       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
81294 provide text.
81295 otherwise %FALSE.</doc>
81296       <return-value transfer-ownership="none">
81297         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for text,</doc>
81298         <type name="gboolean" c:type="gboolean"/>
81299       </return-value>
81300       <parameters>
81301         <parameter name="targets" transfer-ownership="none">
81302           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
81303           <type name="Gdk.Atom" c:type="GdkAtom*"/>
81304         </parameter>
81305         <parameter name="n_targets" transfer-ownership="none">
81306           <doc xml:whitespace="preserve">the length of @targets</doc>
81307           <type name="gint" c:type="gint"/>
81308         </parameter>
81309       </parameters>
81310     </function>
81311     <function name="targets_include_uri"
81312               c:identifier="gtk_targets_include_uri"
81313               version="2.10">
81314       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
81315 provide an uri list.
81316 otherwise %FALSE.</doc>
81317       <return-value transfer-ownership="none">
81318         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for uri lists,</doc>
81319         <type name="gboolean" c:type="gboolean"/>
81320       </return-value>
81321       <parameters>
81322         <parameter name="targets" transfer-ownership="none">
81323           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
81324           <type name="Gdk.Atom" c:type="GdkAtom*"/>
81325         </parameter>
81326         <parameter name="n_targets" transfer-ownership="none">
81327           <doc xml:whitespace="preserve">the length of @targets</doc>
81328           <type name="gint" c:type="gint"/>
81329         </parameter>
81330       </parameters>
81331     </function>
81332     <function name="test_create_simple_window"
81333               c:identifier="gtk_test_create_simple_window"
81334               introspectable="0">
81335       <return-value>
81336         <type name="Widget" c:type="GtkWidget*"/>
81337       </return-value>
81338       <parameters>
81339         <parameter name="window_title" transfer-ownership="none">
81340           <type name="utf8" c:type="gchar*"/>
81341         </parameter>
81342         <parameter name="dialog_text" transfer-ownership="none">
81343           <type name="utf8" c:type="gchar*"/>
81344         </parameter>
81345       </parameters>
81346     </function>
81347     <function name="test_create_widget"
81348               c:identifier="gtk_test_create_widget"
81349               introspectable="0">
81350       <return-value>
81351         <type name="Widget" c:type="GtkWidget*"/>
81352       </return-value>
81353       <parameters>
81354         <parameter name="widget_type" transfer-ownership="none">
81355           <type name="GType" c:type="GType"/>
81356         </parameter>
81357         <parameter name="first_property_name" transfer-ownership="none">
81358           <type name="utf8" c:type="gchar*"/>
81359         </parameter>
81360         <parameter transfer-ownership="none">
81361           <varargs>
81362           </varargs>
81363         </parameter>
81364       </parameters>
81365     </function>
81366     <function name="test_display_button_window"
81367               c:identifier="gtk_test_display_button_window"
81368               introspectable="0">
81369       <return-value>
81370         <type name="Widget" c:type="GtkWidget*"/>
81371       </return-value>
81372       <parameters>
81373         <parameter name="window_title" transfer-ownership="none">
81374           <type name="utf8" c:type="gchar*"/>
81375         </parameter>
81376         <parameter name="dialog_text" transfer-ownership="none">
81377           <type name="utf8" c:type="gchar*"/>
81378         </parameter>
81379         <parameter transfer-ownership="none">
81380           <varargs>
81381           </varargs>
81382         </parameter>
81383       </parameters>
81384     </function>
81385     <function name="test_find_label"
81386               c:identifier="gtk_test_find_label"
81387               introspectable="0">
81388       <return-value>
81389         <type name="Widget" c:type="GtkWidget*"/>
81390       </return-value>
81391       <parameters>
81392         <parameter name="widget" transfer-ownership="none">
81393           <type name="Widget" c:type="GtkWidget*"/>
81394         </parameter>
81395         <parameter name="label_pattern" transfer-ownership="none">
81396           <type name="utf8" c:type="gchar*"/>
81397         </parameter>
81398       </parameters>
81399     </function>
81400     <function name="test_find_sibling"
81401               c:identifier="gtk_test_find_sibling"
81402               introspectable="0">
81403       <return-value>
81404         <type name="Widget" c:type="GtkWidget*"/>
81405       </return-value>
81406       <parameters>
81407         <parameter name="base_widget" transfer-ownership="none">
81408           <type name="Widget" c:type="GtkWidget*"/>
81409         </parameter>
81410         <parameter name="widget_type" transfer-ownership="none">
81411           <type name="GType" c:type="GType"/>
81412         </parameter>
81413       </parameters>
81414     </function>
81415     <function name="test_find_widget"
81416               c:identifier="gtk_test_find_widget"
81417               introspectable="0">
81418       <return-value>
81419         <type name="Widget" c:type="GtkWidget*"/>
81420       </return-value>
81421       <parameters>
81422         <parameter name="widget" transfer-ownership="none">
81423           <type name="Widget" c:type="GtkWidget*"/>
81424         </parameter>
81425         <parameter name="label_pattern" transfer-ownership="none">
81426           <type name="utf8" c:type="gchar*"/>
81427         </parameter>
81428         <parameter name="widget_type" transfer-ownership="none">
81429           <type name="GType" c:type="GType"/>
81430         </parameter>
81431       </parameters>
81432     </function>
81433     <function name="test_init"
81434               c:identifier="gtk_test_init"
81435               version="2.14"
81436               introspectable="0">
81437       <doc xml:whitespace="preserve">This function is used to initialize a GTK+ test program.
81438 It will in turn call g_test_init() and gtk_init() to properly
81439 initialize the testing framework and graphical toolkit. It'll 
81440 also set the program's locale to "C" and prevent loading of rc 
81441 files and Gtk+ modules. This is done to make tets program
81442 environments as deterministic as possible.
81443 Like gtk_init() and g_test_init(), any known arguments will be
81444 processed and stripped from @argc and @argv.</doc>
81445       <return-value transfer-ownership="none">
81446         <type name="none" c:type="void"/>
81447       </return-value>
81448       <parameters>
81449         <parameter name="argcp" transfer-ownership="none">
81450           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argc&lt;/parameter&gt; parameter of the main() function. Changed if any arguments were handled.</doc>
81451           <type name="gint" c:type="int*"/>
81452         </parameter>
81453         <parameter name="argvp" transfer-ownership="none">
81454           <doc xml:whitespace="preserve">Address of the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of main(). Any parameters understood by g_test_init() or gtk_init() are stripped before return.</doc>
81455           <type name="utf8" c:type="char***"/>
81456         </parameter>
81457         <parameter transfer-ownership="none">
81458           <varargs>
81459           </varargs>
81460         </parameter>
81461       </parameters>
81462     </function>
81463     <function name="test_list_all_types"
81464               c:identifier="gtk_test_list_all_types">
81465       <return-value transfer-ownership="none">
81466         <type name="GType" c:type="GType*"/>
81467       </return-value>
81468       <parameters>
81469         <parameter name="n_types" transfer-ownership="none">
81470           <type name="guint" c:type="guint*"/>
81471         </parameter>
81472       </parameters>
81473     </function>
81474     <function name="test_register_all_types"
81475               c:identifier="gtk_test_register_all_types">
81476       <return-value transfer-ownership="none">
81477         <type name="none" c:type="void"/>
81478       </return-value>
81479     </function>
81480     <function name="test_slider_get_value"
81481               c:identifier="gtk_test_slider_get_value">
81482       <return-value transfer-ownership="none">
81483         <type name="gdouble" c:type="double"/>
81484       </return-value>
81485       <parameters>
81486         <parameter name="widget" transfer-ownership="none">
81487           <type name="Widget" c:type="GtkWidget*"/>
81488         </parameter>
81489       </parameters>
81490     </function>
81491     <function name="test_slider_set_perc"
81492               c:identifier="gtk_test_slider_set_perc">
81493       <return-value transfer-ownership="none">
81494         <type name="none" c:type="void"/>
81495       </return-value>
81496       <parameters>
81497         <parameter name="widget" transfer-ownership="none">
81498           <type name="Widget" c:type="GtkWidget*"/>
81499         </parameter>
81500         <parameter name="percentage" transfer-ownership="none">
81501           <type name="gdouble" c:type="double"/>
81502         </parameter>
81503       </parameters>
81504     </function>
81505     <function name="test_spin_button_click"
81506               c:identifier="gtk_test_spin_button_click">
81507       <return-value transfer-ownership="none">
81508         <type name="gboolean" c:type="gboolean"/>
81509       </return-value>
81510       <parameters>
81511         <parameter name="spinner" transfer-ownership="none">
81512           <type name="SpinButton" c:type="GtkSpinButton*"/>
81513         </parameter>
81514         <parameter name="button" transfer-ownership="none">
81515           <type name="guint" c:type="guint"/>
81516         </parameter>
81517         <parameter name="upwards" transfer-ownership="none">
81518           <type name="gboolean" c:type="gboolean"/>
81519         </parameter>
81520       </parameters>
81521     </function>
81522     <function name="test_text_get" c:identifier="gtk_test_text_get">
81523       <return-value transfer-ownership="full">
81524         <type name="utf8" c:type="gchar*"/>
81525       </return-value>
81526       <parameters>
81527         <parameter name="widget" transfer-ownership="none">
81528           <type name="Widget" c:type="GtkWidget*"/>
81529         </parameter>
81530       </parameters>
81531     </function>
81532     <function name="test_text_set" c:identifier="gtk_test_text_set">
81533       <return-value transfer-ownership="none">
81534         <type name="none" c:type="void"/>
81535       </return-value>
81536       <parameters>
81537         <parameter name="widget" transfer-ownership="none">
81538           <type name="Widget" c:type="GtkWidget*"/>
81539         </parameter>
81540         <parameter name="string" transfer-ownership="none">
81541           <type name="utf8" c:type="gchar*"/>
81542         </parameter>
81543       </parameters>
81544     </function>
81545     <function name="test_widget_click" c:identifier="gtk_test_widget_click">
81546       <return-value transfer-ownership="none">
81547         <type name="gboolean" c:type="gboolean"/>
81548       </return-value>
81549       <parameters>
81550         <parameter name="widget" transfer-ownership="none">
81551           <type name="Widget" c:type="GtkWidget*"/>
81552         </parameter>
81553         <parameter name="button" transfer-ownership="none">
81554           <type name="guint" c:type="guint"/>
81555         </parameter>
81556         <parameter name="modifiers" transfer-ownership="none">
81557           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
81558         </parameter>
81559       </parameters>
81560     </function>
81561     <function name="test_widget_send_key"
81562               c:identifier="gtk_test_widget_send_key">
81563       <return-value transfer-ownership="none">
81564         <type name="gboolean" c:type="gboolean"/>
81565       </return-value>
81566       <parameters>
81567         <parameter name="widget" transfer-ownership="none">
81568           <type name="Widget" c:type="GtkWidget*"/>
81569         </parameter>
81570         <parameter name="keyval" transfer-ownership="none">
81571           <type name="guint" c:type="guint"/>
81572         </parameter>
81573         <parameter name="modifiers" transfer-ownership="none">
81574           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
81575         </parameter>
81576       </parameters>
81577     </function>
81578     <function name="text_layout_draw"
81579               c:identifier="gtk_text_layout_draw"
81580               introspectable="0">
81581       <return-value transfer-ownership="none">
81582         <type name="none" c:type="void"/>
81583       </return-value>
81584       <parameters>
81585         <parameter name="layout" transfer-ownership="none">
81586           <type c:type="GtkTextLayout*"/>
81587         </parameter>
81588         <parameter name="widget" transfer-ownership="none">
81589           <type name="Widget" c:type="GtkWidget*"/>
81590         </parameter>
81591         <parameter name="drawable" transfer-ownership="none">
81592           <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
81593         </parameter>
81594         <parameter name="cursor_gc" transfer-ownership="none">
81595           <type name="gpointer" c:type="gpointer"/>
81596         </parameter>
81597         <parameter name="x_offset" transfer-ownership="none">
81598           <type name="gint" c:type="gint"/>
81599         </parameter>
81600         <parameter name="y_offset" transfer-ownership="none">
81601           <type name="gint" c:type="gint"/>
81602         </parameter>
81603         <parameter name="x" transfer-ownership="none">
81604           <type name="gint" c:type="gint"/>
81605         </parameter>
81606         <parameter name="y" transfer-ownership="none">
81607           <type name="gint" c:type="gint"/>
81608         </parameter>
81609         <parameter name="width" transfer-ownership="none">
81610           <type name="gint" c:type="gint"/>
81611         </parameter>
81612         <parameter name="height" transfer-ownership="none">
81613           <type name="gint" c:type="gint"/>
81614         </parameter>
81615         <parameter name="widgets" transfer-ownership="none">
81616           <type name="GLib.List" c:type="GList**">
81617             <type name="gpointer" c:type="gpointer"/>
81618           </type>
81619         </parameter>
81620       </parameters>
81621     </function>
81622     <function name="tree_get_row_drag_data"
81623               c:identifier="gtk_tree_get_row_drag_data">
81624       <doc xml:whitespace="preserve">Obtains a @tree_model and @path from selection data of target type
81625 %GTK_TREE_MODEL_ROW. Normally called from a drag_data_received handler.
81626 This function can only be used if @selection_data originates from the same
81627 process that's calling this function, because a pointer to the tree model
81628 is being passed around. If you aren't in the same process, then you'll
81629 get memory corruption. In the #GtkTreeDragDest drag_data_received handler,
81630 you can assume that selection data of type %GTK_TREE_MODEL_ROW is
81631 in from the current process. The returned path must be freed with
81632 gtk_tree_path_free().
81633 is otherwise valid</doc>
81634       <return-value transfer-ownership="none">
81635         <doc xml:whitespace="preserve">%TRUE if @selection_data had target type %GTK_TREE_MODEL_ROW and</doc>
81636         <type name="gboolean" c:type="gboolean"/>
81637       </return-value>
81638       <parameters>
81639         <parameter name="selection_data" transfer-ownership="none">
81640           <doc xml:whitespace="preserve">a #GtkSelectionData</doc>
81641           <type name="SelectionData" c:type="GtkSelectionData*"/>
81642         </parameter>
81643         <parameter name="tree_model" transfer-ownership="none">
81644           <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
81645           <type name="TreeModel" c:type="GtkTreeModel**"/>
81646         </parameter>
81647         <parameter name="path" transfer-ownership="none">
81648           <doc xml:whitespace="preserve">row in @tree_model</doc>
81649           <type name="TreePath" c:type="GtkTreePath**"/>
81650         </parameter>
81651       </parameters>
81652     </function>
81653     <function name="tree_row_reference_deleted"
81654               c:identifier="gtk_tree_row_reference_deleted">
81655       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
81656 know that the model emitted the "row_deleted" signal.</doc>
81657       <return-value transfer-ownership="none">
81658         <type name="none" c:type="void"/>
81659       </return-value>
81660       <parameters>
81661         <parameter name="proxy" transfer-ownership="none">
81662           <doc xml:whitespace="preserve">A #GObject</doc>
81663           <type name="GObject.Object" c:type="GObject*"/>
81664         </parameter>
81665         <parameter name="path" transfer-ownership="none">
81666           <doc xml:whitespace="preserve">The path position that was deleted</doc>
81667           <type name="TreePath" c:type="GtkTreePath*"/>
81668         </parameter>
81669       </parameters>
81670     </function>
81671     <function name="tree_row_reference_inserted"
81672               c:identifier="gtk_tree_row_reference_inserted">
81673       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
81674 know that the model emitted the "row_inserted" signal.</doc>
81675       <return-value transfer-ownership="none">
81676         <type name="none" c:type="void"/>
81677       </return-value>
81678       <parameters>
81679         <parameter name="proxy" transfer-ownership="none">
81680           <doc xml:whitespace="preserve">A #GObject</doc>
81681           <type name="GObject.Object" c:type="GObject*"/>
81682         </parameter>
81683         <parameter name="path" transfer-ownership="none">
81684           <doc xml:whitespace="preserve">The row position that was inserted</doc>
81685           <type name="TreePath" c:type="GtkTreePath*"/>
81686         </parameter>
81687       </parameters>
81688     </function>
81689     <function name="tree_row_reference_reordered"
81690               c:identifier="gtk_tree_row_reference_reordered">
81691       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
81692 know that the model emitted the "rows_reordered" signal.</doc>
81693       <return-value transfer-ownership="none">
81694         <type name="none" c:type="void"/>
81695       </return-value>
81696       <parameters>
81697         <parameter name="proxy" transfer-ownership="none">
81698           <doc xml:whitespace="preserve">A #GObject</doc>
81699           <type name="GObject.Object" c:type="GObject*"/>
81700         </parameter>
81701         <parameter name="path" transfer-ownership="none">
81702           <doc xml:whitespace="preserve">The parent path of the reordered signal</doc>
81703           <type name="TreePath" c:type="GtkTreePath*"/>
81704         </parameter>
81705         <parameter name="iter" transfer-ownership="none">
81706           <doc xml:whitespace="preserve">The iter pointing to the parent of the reordered</doc>
81707           <type name="TreeIter" c:type="GtkTreeIter*"/>
81708         </parameter>
81709         <parameter name="new_order" transfer-ownership="none">
81710           <doc xml:whitespace="preserve">The new order of rows</doc>
81711           <type name="gint" c:type="gint*"/>
81712         </parameter>
81713       </parameters>
81714     </function>
81715     <function name="tree_set_row_drag_data"
81716               c:identifier="gtk_tree_set_row_drag_data">
81717       <doc xml:whitespace="preserve">Sets selection data of target type %GTK_TREE_MODEL_ROW. Normally used
81718 in a drag_data_get handler.</doc>
81719       <return-value transfer-ownership="none">
81720         <doc xml:whitespace="preserve">%TRUE if the #GtkSelectionData had the proper target type to allow us to set a tree row</doc>
81721         <type name="gboolean" c:type="gboolean"/>
81722       </return-value>
81723       <parameters>
81724         <parameter name="selection_data" transfer-ownership="none">
81725           <doc xml:whitespace="preserve">some #GtkSelectionData</doc>
81726           <type name="SelectionData" c:type="GtkSelectionData*"/>
81727         </parameter>
81728         <parameter name="tree_model" transfer-ownership="none">
81729           <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
81730           <type name="TreeModel" c:type="GtkTreeModel*"/>
81731         </parameter>
81732         <parameter name="path" transfer-ownership="none">
81733           <doc xml:whitespace="preserve">a row in @tree_model</doc>
81734           <type name="TreePath" c:type="GtkTreePath*"/>
81735         </parameter>
81736       </parameters>
81737     </function>
81738     <function name="true" c:identifier="gtk_true">
81739       <return-value transfer-ownership="none">
81740         <type name="gboolean" c:type="gboolean"/>
81741       </return-value>
81742     </function>
81743   </namespace>
81744 </repository>